Liabilities / Assets
30th percentile
Higher debt load relative to assets than 30% of similar nonprofits.
EIN 04-3371592 • Easthampton, MA
Precomputed percentiles relative to similar nonprofits. These scores are descriptive rather than judgmental.
Liabilities / Assets
30th percentile
Higher debt load relative to assets than 30% of similar nonprofits.
Liabilities / Revenue
30th percentile
Higher debt load relative to revenue than 30% of similar nonprofits.
Net Margin
7th percentile
Higher net margin than 7% of similar nonprofits.
Top Officer Pay
67th percentile
Higher top officer pay than 67% of similar nonprofits.
Top officer pay equals 0.0% of source-year revenue.
Asset Growth
17th percentile
Faster asset growth than 17% of similar nonprofits.
Revenue Growth
89th percentile
Faster revenue growth than 89% of similar nonprofits.
Assets
Down$2,522,980
Down $13,236 (-0.5%) from 2023
Liabilities
Flat$0
Flat from 2023
Net Assets
Down$2,522,980
Down $13,236 (-0.5%) from 2023
Revenue
Down$189,956
Down $15,625 (-7.6%) from 2023
Expenses
Down$354,719
Down $42,436 (-11%) from 2023
Net Income
Up-$164,763
Up $26,811 (+14%) from 2023
Most recent year
2024 • Form 990PFDetailed filing. Detailed filing data is available for this year.
| Name | Title | Full / Part Time | Base | Other | Total |
|---|---|---|---|---|---|
| ANTHONY VILLANI | Director | - | $0 | - | - |
| Dena Hall | President/Director | - | $0 | - | - |
| GILBERT F EHMKE | Treasurer/Director | - | $0 | - | - |
| Lori Ingraham | Assistant Treasurer | - | $0 | - | - |
| MARK KLEPACKI | Clerk/Director | - | $0 | - | - |
| MATTHEW SOSIK | Director | - | $0 | - | - |
| richard abbott | Director | - | $0 | - | - |
This appendix keeps the raw XML leaves available for debugging and edge-case review. The human report above is the primary experience.
| Path | # | Value |
|---|---|---|
| AccountingFeesSchedule/AccountingFeesDetail/AdjustedNetIncomeAmt | 0 | 0 |
| AccountingFeesSchedule/AccountingFeesDetail/Amt | 0 | 3250 |
| AccountingFeesSchedule/AccountingFeesDetail/CategoryTxt | 0 | WOLF & COMPANY, P.C. |
| AccountingFeesSchedule/AccountingFeesDetail/DisbursementsCharitablePrpsAmt | 0 | 3250 |
| AccountingFeesSchedule/AccountingFeesDetail/NetInvestmentIncomeAmt | 0 | 0 |
| InvestmentsCorpStockSchedule/InvestmentsCorporateStockGrp/EOYBookValueAmt | 0 | 2449918 |
| InvestmentsCorpStockSchedule/InvestmentsCorporateStockGrp/EOYFMVAmt | 0 | 2449918 |
| InvestmentsCorpStockSchedule/InvestmentsCorporateStockGrp/StockNm | 0 | EQUITIES |
| IRS990PF/AnalysisIncomeProducingActyGrp/DividendsAndInterestFromSecDtl/ExclusionAmt | 0 | 75597 |
| IRS990PF/AnalysisIncomeProducingActyGrp/DividendsAndInterestFromSecDtl/ExclusionCd | 0 | 14 |
| IRS990PF/AnalysisIncomeProducingActyGrp/GainSalesAstOthThanInvntryGrp/ExclusionAmt | 0 | 114315 |
| IRS990PF/AnalysisIncomeProducingActyGrp/GainSalesAstOthThanInvntryGrp/ExclusionCd | 0 | 18 |
| IRS990PF/AnalysisIncomeProducingActyGrp/IntOnSavAndTempCashInvstGrp/ExclusionAmt | 0 | 44 |
| IRS990PF/AnalysisIncomeProducingActyGrp/IntOnSavAndTempCashInvstGrp/ExclusionCd | 0 | 14 |
| IRS990PF/AnalysisIncomeProducingActyGrp/SubtotalsIncmProducingActyGrp/ExclusionAmt | 0 | 189956 |
| IRS990PF/AnalysisIncomeProducingActyGrp/TotalIncomeProducingActyAmt | 0 | 189956 |
| IRS990PF/AnalysisOfRevenueAndExpenses/AccountingFeesAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/AccountingFeesChrtblPrpsAmt | 0 | 3250 |
| IRS990PF/AnalysisOfRevenueAndExpenses/AccountingFeesNetInvstIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/AccountingFeesRevAndExpnssAmt | 0 | 3250 |
| IRS990PF/AnalysisOfRevenueAndExpenses/AdjustedNetIncomeAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/CapGainNetIncmNetInvstIncmAmt | 0 | 114315 |
| IRS990PF/AnalysisOfRevenueAndExpenses/CompOfcrDirTrstRevAndExpnssAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/ContriPaidDsbrsChrtblAmt | 0 | 350170 |
| IRS990PF/AnalysisOfRevenueAndExpenses/ContriPaidRevAndExpnssAmt | 0 | 350170 |
| IRS990PF/AnalysisOfRevenueAndExpenses/ContriRcvdRevAndExpnssAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/DividendsAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/DividendsNetInvstIncmAmt | 0 | 75597 |
| IRS990PF/AnalysisOfRevenueAndExpenses/DividendsRevAndExpnssAmt | 0 | 75597 |
| IRS990PF/AnalysisOfRevenueAndExpenses/ExcessRevenueOverExpensesAmt | 0 | -164763 |
| IRS990PF/AnalysisOfRevenueAndExpenses/GrossSalesPriceAmt | 0 | 270056 |
| IRS990PF/AnalysisOfRevenueAndExpenses/InterestOnSavingsAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/InterestOnSavNetInvstIncmAmt | 0 | 44 |
| IRS990PF/AnalysisOfRevenueAndExpenses/InterestOnSavRevAndExpnssAmt | 0 | 44 |
| IRS990PF/AnalysisOfRevenueAndExpenses/NetGainSaleAstRevAndExpnssAmt | 0 | 114315 |
| IRS990PF/AnalysisOfRevenueAndExpenses/NetInvestmentIncomeAmt | 0 | 189956 |
| IRS990PF/AnalysisOfRevenueAndExpenses/OtherExpensesAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/OtherExpensesDsbrsChrtblAmt | 0 | 35 |
| IRS990PF/AnalysisOfRevenueAndExpenses/OtherExpensesNetInvstIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/OtherExpensesRevAndExpnssAmt | 0 | 35 |
| IRS990PF/AnalysisOfRevenueAndExpenses/ScheduleBNotRequiredInd | 0 | X |
| IRS990PF/AnalysisOfRevenueAndExpenses/TaxesAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TaxesDsbrsChrtblAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TaxesNetInvstIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TaxesRevAndExpnssAmt | 0 | 1264 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotalAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotalExpensesAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotalExpensesDsbrsChrtblAmt | 0 | 353455 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotalExpensesNetInvstIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotalExpensesRevAndExpnssAmt | 0 | 354719 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotalNetInvstIncmAmt | 0 | 189956 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotalRevAndExpnssAmt | 0 | 189956 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotOprExpensesAdjNetIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotOprExpensesDsbrsChrtblAmt | 0 | 3285 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotOprExpensesNetInvstIncmAmt | 0 | 0 |
| IRS990PF/AnalysisOfRevenueAndExpenses/TotOprExpensesRevAndExpnssAmt | 0 | 4549 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/AcquiredDt | 0 | 2014-12-08 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/AcquiredDt | 1 | 2017-05-10 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/CostOrOtherBasisAmt | 0 | 55174 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/CostOrOtherBasisAmt | 1 | 100567 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/GainOrLossAmt | 0 | 68971 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/GainOrLossAmt | 1 | 45344 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/GainsMinusExcessOrLossesAmt | 0 | 68971 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/GainsMinusExcessOrLossesAmt | 1 | 45344 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/GrossSalesPriceAmt | 0 | 124145 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/GrossSalesPriceAmt | 1 | 145911 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/HowAcquiredCd | 0 | P |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/HowAcquiredCd | 1 | P |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/PropertyDesc | 0 | ISHARES GLOBAL |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/PropertyDesc | 1 | VICTORYSHARES US LARGE CAP |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/SoldDt | 0 | 2024-04-09 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapGainsLossTxInvstIncmGrp/SoldDt | 1 | 2024-07-09 |
| IRS990PF/CapGainsLossTxInvstIncmDetail/CapitalGainNetIncomeAmt | 0 | 114315 |
| IRS990PF/ChgInNetAssetsFundBalancesGrp/ExcessRevenueOverExpensesAmt | 0 | -164763 |
| IRS990PF/ChgInNetAssetsFundBalancesGrp/OtherIncreasesAmt | 0 | 151527 |
| IRS990PF/ChgInNetAssetsFundBalancesGrp/SubtotalAmt | 0 | 2522980 |
| IRS990PF/ChgInNetAssetsFundBalancesGrp/TotNetAstOrFundBalancesBOYAmt | 0 | 2536216 |
| IRS990PF/ChgInNetAssetsFundBalancesGrp/TotNetAstOrFundBalancesEOYAmt | 0 | 2522980 |
| IRS990PF/DistributableAmountGrp/DistributableAsAdjustedAmt | 0 | 123557 |
| IRS990PF/DistributableAmountGrp/DistributableBeforeAdjAmt | 0 | 123557 |
| IRS990PF/DistributableAmountGrp/DistributableBeforeDedAmt | 0 | 123557 |
| IRS990PF/DistributableAmountGrp/MinimumInvestmentReturnAmt | 0 | 126197 |
| IRS990PF/DistributableAmountGrp/TaxBasedOnInvestmentIncomeAmt | 0 | 2640 |
| IRS990PF/DistributableAmountGrp/TotalTaxAmt | 0 | 2640 |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/EsPenaltyAmt | 0 | 147 |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/ExemptFrgnOrgTaxWthldAtSrceAmt | 0 | 0 |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/Form2220AttachedInd | 0 | X |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/InvestmentIncomeExciseTaxAmt | 0 | 2640 |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/SubtotalAmt | 0 | 2640 |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/TaxBasedOnInvestmentIncomeAmt | 0 | 2640 |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/TaxDueAmt | 0 | 2787 |
| IRS990PF/ExciseTaxBasedOnInvstIncmGrp/TotalPaymentsAndCreditsAmt | 0 | 0 |
| IRS990PF/FMVAssetsEOYAmt | 0 | 2522980 |
| IRS990PF/Form990PFBalanceSheetsGrp/CashBOYAmt | 0 | 51544 |
| IRS990PF/Form990PFBalanceSheetsGrp/CashEOYAmt | 0 | 49268 |
| IRS990PF/Form990PFBalanceSheetsGrp/CashEOYFMVAmt | 0 | 49268 |
| IRS990PF/Form990PFBalanceSheetsGrp/CorporateStockBOYAmt | 0 | 2454133 |
| IRS990PF/Form990PFBalanceSheetsGrp/CorporateStockEOYAmt | 0 | 2449918 |
| IRS990PF/Form990PFBalanceSheetsGrp/CorporateStockEOYFMVAmt | 0 | 2449918 |
| IRS990PF/Form990PFBalanceSheetsGrp/OrgDoesNotFollowFASB117Ind | 0 | X |
| IRS990PF/Form990PFBalanceSheetsGrp/RetainedEarningBOYAmt | 0 | 2536216 |
| IRS990PF/Form990PFBalanceSheetsGrp/RetainedEarningEOYAmt | 0 | 2522980 |
| IRS990PF/Form990PFBalanceSheetsGrp/SavAndTempCashInvstBOYAmt | 0 | 30539 |
| IRS990PF/Form990PFBalanceSheetsGrp/SavAndTempCashInvstEOYAmt | 0 | 23794 |
| IRS990PF/Form990PFBalanceSheetsGrp/SavAndTempCashInvstEOYFMVAmt | 0 | 23794 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotalAssetsBOYAmt | 0 | 2536216 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotalAssetsEOYAmt | 0 | 2522980 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotalAssetsEOYFMVAmt | 0 | 2522980 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotalLiabilitiesBOYAmt | 0 | 0 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotalLiabilitiesEOYAmt | 0 | 0 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotalLiabilitiesNetAstBOYAmt | 0 | 2536216 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotalLiabilitiesNetAstEOYAmt | 0 | 2522980 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotNetAstOrFundBalancesBOYAmt | 0 | 2536216 |
| IRS990PF/Form990PFBalanceSheetsGrp/TotNetAstOrFundBalancesEOYAmt | 0 | 2522980 |
| IRS990PF/MethodOfAccountingCashInd | 0 | X |
| IRS990PF/MinimumInvestmentReturnGrp/AcquisitionIndebtednessAmt | 0 | 0 |
| IRS990PF/MinimumInvestmentReturnGrp/AdjustedTotalFMVOfUnusedAstAmt | 0 | 2562385 |
| IRS990PF/MinimumInvestmentReturnGrp/AverageMonthlyCashBalancesAmt | 0 | 71465 |
| IRS990PF/MinimumInvestmentReturnGrp/AverageMonthlyFMVOfSecAmt | 0 | 2490920 |
| IRS990PF/MinimumInvestmentReturnGrp/CashDeemedCharitableAmt | 0 | 38436 |
| IRS990PF/MinimumInvestmentReturnGrp/FMVAllOtherNoncharitableAstAmt | 0 | 0 |
| IRS990PF/MinimumInvestmentReturnGrp/MinimumInvestmentReturnAmt | 0 | 126197 |
| IRS990PF/MinimumInvestmentReturnGrp/NetVlNoncharitableAssetsAmt | 0 | 2523949 |
| IRS990PF/MinimumInvestmentReturnGrp/TotalFMVOfUnusedAssetsAmt | 0 | 2562385 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/AverageHrsPerWkDevotedToPosRt | 0 | 1.0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/AverageHrsPerWkDevotedToPosRt | 1 | 2.0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/AverageHrsPerWkDevotedToPosRt | 2 | 2.0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/AverageHrsPerWkDevotedToPosRt | 3 | 1.0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/AverageHrsPerWkDevotedToPosRt | 4 | 1.0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/AverageHrsPerWkDevotedToPosRt | 5 | 1.0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/AverageHrsPerWkDevotedToPosRt | 6 | 1.0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/CompensationAmt | 0 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/CompensationAmt | 1 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/CompensationAmt | 2 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/CompensationAmt | 3 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/CompensationAmt | 4 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/CompensationAmt | 5 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/CompensationAmt | 6 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/EmployeeBenefitProgramAmt | 0 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/EmployeeBenefitProgramAmt | 1 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/EmployeeBenefitProgramAmt | 2 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/EmployeeBenefitProgramAmt | 3 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/EmployeeBenefitProgramAmt | 4 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/EmployeeBenefitProgramAmt | 5 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/EmployeeBenefitProgramAmt | 6 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/ExpenseAccountOtherAllwncAmt | 0 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/ExpenseAccountOtherAllwncAmt | 1 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/ExpenseAccountOtherAllwncAmt | 2 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/ExpenseAccountOtherAllwncAmt | 3 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/ExpenseAccountOtherAllwncAmt | 4 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/ExpenseAccountOtherAllwncAmt | 5 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/ExpenseAccountOtherAllwncAmt | 6 | 0 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/PersonNm | 0 | ANTHONY VILLANI |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/PersonNm | 1 | Dena Hall |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/PersonNm | 2 | GILBERT F EHMKE |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/PersonNm | 3 | Lori Ingraham |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/PersonNm | 4 | MARK KLEPACKI |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/PersonNm | 5 | MATTHEW SOSIK |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/PersonNm | 6 | richard abbott |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/TitleTxt | 0 | DIRECTOR |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/TitleTxt | 1 | President/Director |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/TitleTxt | 2 | treasurer/director |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/TitleTxt | 3 | assistant treasurer |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/TitleTxt | 4 | clerk/director |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/TitleTxt | 5 | director |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/TitleTxt | 6 | director |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/AddressLine1Txt | 0 | 36 Main Street |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/AddressLine1Txt | 1 | 36 Main Street |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/AddressLine1Txt | 2 | 36 Main Street |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/AddressLine1Txt | 3 | 36 Main Street |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/AddressLine1Txt | 4 | 36 Main Street |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/AddressLine1Txt | 5 | 36 Main Street |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/AddressLine1Txt | 6 | 36 Main Street |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/CityNm | 0 | Easthampton |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/CityNm | 1 | Easthampton |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/CityNm | 2 | Easthampton |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/CityNm | 3 | Easthampton |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/CityNm | 4 | Easthampton |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/CityNm | 5 | Easthampton |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/CityNm | 6 | Easthampton |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/StateAbbreviationCd | 0 | MA |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/StateAbbreviationCd | 1 | MA |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/StateAbbreviationCd | 2 | MA |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/StateAbbreviationCd | 3 | MA |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/StateAbbreviationCd | 4 | MA |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/StateAbbreviationCd | 5 | MA |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/StateAbbreviationCd | 6 | MA |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/ZIPCd | 0 | 01027 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/ZIPCd | 1 | 01027 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/ZIPCd | 2 | 01027 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/ZIPCd | 3 | 01027 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/ZIPCd | 4 | 01027 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/ZIPCd | 5 | 01027 |
| IRS990PF/OfficerDirTrstKeyEmplInfoGrp/OfficerDirTrstKeyEmplGrp/USAddress/ZIPCd | 6 | 01027 |
| IRS990PF/Organization501c3ExemptPFInd | 0 | X |
| IRS990PF/PFQualifyingDistributionsGrp/CharitableAssetsAcquisPaidAmt | 0 | 0 |
| IRS990PF/PFQualifyingDistributionsGrp/ExpensesAndContributionsAmt | 0 | 353455 |
| IRS990PF/PFQualifyingDistributionsGrp/ProgramRelatedInvstTotalAmt | 0 | 0 |
| IRS990PF/PFQualifyingDistributionsGrp/QualifyingDistributionsAmt | 0 | 353455 |
| IRS990PF/PFQualifyingDistributionsGrp/SetAsideCashDistriTestAmt | 0 | 0 |
| IRS990PF/PFQualifyingDistributionsGrp/SetAsideSuitabilityTestAmt | 0 | 0 |
| IRS990PF/StatementsRegardingActy4720Grp/BrrwOrLendDisqualifiedPrsnInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/BusinessHoldingsInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/FurnGoodsDisqualifiedPrsnInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/GrantsToIndividualsInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/GrantsToOrganizationsInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/InfluenceElectionInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/InfluenceLegislationInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/JeopardyInvestmentsInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/NoncharitablePurposeInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/PayCompDisqualifiedPrsnInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/PaymentToGovernmentOfficialInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/PayPremiumsPrsnlBnftCntrctInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/ProceedsOrNetIncomeInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/ProhibitedTaxShelterTransInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/RcvFndsToPayPrsnlBnftCntrctInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/SaleOrExchDisqualifiedPrsnInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/SubjToTaxRmnrtnExPrchtPymtInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/TransferAstDisqualifiedPrsnInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/UncorrectedPriorActsInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/UncorrectedPYJeopardyInvstInd | 0 | false |
| IRS990PF/StatementsRegardingActy4720Grp/UndistributedIncomePYInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/ActivitiesNotPreviouslyRptInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/AtLeast5000InAssetsInd | 0 | true |
| IRS990PF/StatementsRegardingActyGrp/ChangesToArticlesOrBylawsInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/ComplyWithPublicInspRqrInd | 0 | true |
| IRS990PF/StatementsRegardingActyGrp/DonorAdvisedFundInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/ForeignAccountsQuestionInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/Form1120POLFiledInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/Form990PFFiledWithAttyGenInd | 0 | true |
| IRS990PF/StatementsRegardingActyGrp/LegislativePoliticalActyInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/LocationOfBooksUSAddress/AddressLine1Txt | 0 | 36 MAIN STREET |
| IRS990PF/StatementsRegardingActyGrp/LocationOfBooksUSAddress/CityNm | 0 | EASTHAMPTON |
| IRS990PF/StatementsRegardingActyGrp/LocationOfBooksUSAddress/StateAbbreviationCd | 0 | MA |
| IRS990PF/StatementsRegardingActyGrp/LocationOfBooksUSAddress/ZIPCd | 0 | 01027 |
| IRS990PF/StatementsRegardingActyGrp/MoreThan100SpentInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/NewSubstantialContributorsInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/OrganizationDissolvedEtcInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/OrgReportOrRegisterStateCd | 0 | MA |
| IRS990PF/StatementsRegardingActyGrp/OwnControlledEntityInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/PersonsWithBooksName/BusinessNameLine1Txt | 0 | REED WHITMAN |
| IRS990PF/StatementsRegardingActyGrp/PhoneNum | 0 | 6179472901 |
| IRS990PF/StatementsRegardingActyGrp/PrivateOperatingFoundationInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/Section508eRqrSatisfiedInd | 0 | true |
| IRS990PF/StatementsRegardingActyGrp/UnrelatedBusIncmOverLimitInd | 0 | false |
| IRS990PF/StatementsRegardingActyGrp/WebsiteAddressTxt | 0 | n/a |
| IRS990PF/SummaryOfDirectChrtblActyGrp/Description1Txt | 0 | NONE |
| IRS990PF/SumOfProgramRelatedInvstGrp/Description1Txt | 0 | NONE |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/FormAndInfoAndMaterialsTxt | 0 | Applications Available At Above Address |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/RecipientPersonNm | 0 | Reed Whitman |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/RecipientPhoneNum | 0 | 6179472901 |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/RecipientUSAddress/AddressLine1Txt | 0 | 36 Main Street |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/RecipientUSAddress/CityNm | 0 | Easthampton |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/RecipientUSAddress/StateAbbreviationCd | 0 | MA |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/RecipientUSAddress/ZIPCd | 0 | 01027 |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/RestrictionsOnAwardsTxt | 0 | Not Applicable |
| IRS990PF/SupplementaryInformationGrp/ApplicationSubmissionInfoGrp/SubmissionDeadlinesTxt | 0 | See Application for Various Deadlines |
| IRS990PF/SupplementaryInformationGrp/ContributingManagerNm | 0 | NONE |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/Amt | 0 | 0 |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/GrantOrContributionPurposeTxt | 0 | Exempt Purpose |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/RecipientBusinessName/BusinessNameLine1Txt | 0 | FUTURE GRANTS APPROVED |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/RecipientFoundationStatusTxt | 0 | PC |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/RecipientRelationshipTxt | 0 | NOT RELATED |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/RecipientUSAddress/AddressLine1Txt | 0 | Available Upon Request |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/RecipientUSAddress/CityNm | 0 | Easthampton |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/RecipientUSAddress/StateAbbreviationCd | 0 | MA |
| IRS990PF/SupplementaryInformationGrp/GrantOrContriApprvForFutGrp/RecipientUSAddress/ZIPCd | 0 | 01027 |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/Amt | 0 | 350170 |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/GrantOrContributionPurposeTxt | 0 | Exempt Purpose |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/RecipientBusinessName/BusinessNameLine1Txt | 0 | Grants and Contributions Paid |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/RecipientFoundationStatusTxt | 0 | PC |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/RecipientRelationshipTxt | 0 | NOT RELATED |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/RecipientUSAddress/AddressLine1Txt | 0 | Available Upon Request |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/RecipientUSAddress/CityNm | 0 | Easthampton |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/RecipientUSAddress/StateAbbreviationCd | 0 | MA |
| IRS990PF/SupplementaryInformationGrp/GrantOrContributionPdDurYrGrp/RecipientUSAddress/ZIPCd | 0 | 01027 |
| IRS990PF/SupplementaryInformationGrp/ShareholderManagerNm | 0 | NONE |
| IRS990PF/SupplementaryInformationGrp/TotalGrantOrContriApprvFutAmt | 0 | 280000 |
| IRS990PF/SupplementaryInformationGrp/TotalGrantOrContriPdDurYrAmt | 0 | 350170 |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/LoansOrLoanGuaranteesInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/PerformanceOfServicesEtcInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/PurchaseOfAssetsNonchrtblEOInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/ReimbursementArrangementsInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/RelationshipsNonchrtblEOInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/RentalOfFacilitiesOthAssetsInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/SalesOrExchangesOfAssetsInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/SharingOfFacilitiesEtcInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/TrnsfrOfCashToNonchrtblEOInd | 0 | false |
| IRS990PF/TrnsfrTransRlnNonchrtblEOGrp/TrnsfrOtherAssetNonchrtblEOInd | 0 | false |
| IRS990PF/UndistributedIncomeGrp/AppliedToCurrentYearAmt | 0 | 123557 |
| IRS990PF/UndistributedIncomeGrp/DistributableAsAdjustedAmt | 0 | 123557 |
| IRS990PF/UndistributedIncomeGrp/ExcessDistributionCyovYr1Amt | 0 | 271084 |
| IRS990PF/UndistributedIncomeGrp/ExcessDistributionCyovYr2Amt | 0 | 140650 |
| IRS990PF/UndistributedIncomeGrp/ExcessDistributionCyovYr3Amt | 0 | 16406 |
| IRS990PF/UndistributedIncomeGrp/ExcessDistributionCyovYr4Amt | 0 | 84628 |
| IRS990PF/UndistributedIncomeGrp/ExcessDistributionCyovYr5Amt | 0 | 88599 |
| IRS990PF/UndistributedIncomeGrp/ExcessDistriCyovFromYr5Amt | 0 | 88599 |
| IRS990PF/UndistributedIncomeGrp/ExcessDistriCyovToNextYrAmt | 0 | 742666 |
| IRS990PF/UndistributedIncomeGrp/ExcessFromCurrentYearAmt | 0 | 229898 |
| IRS990PF/UndistributedIncomeGrp/ExcessFromYear1Amt | 0 | 271084 |
| IRS990PF/UndistributedIncomeGrp/ExcessFromYear2Amt | 0 | 140650 |
| IRS990PF/UndistributedIncomeGrp/ExcessFromYear3Amt | 0 | 16406 |
| IRS990PF/UndistributedIncomeGrp/ExcessFromYear4Amt | 0 | 84628 |
| IRS990PF/UndistributedIncomeGrp/PriorYear1Yr | 0 | 2022 |
| IRS990PF/UndistributedIncomeGrp/PriorYear2Yr | 0 | 2021 |
| IRS990PF/UndistributedIncomeGrp/PriorYear3Yr | 0 | 2020 |
| IRS990PF/UndistributedIncomeGrp/QualifyingDistributionsAmt | 0 | 353455 |
| IRS990PF/UndistributedIncomeGrp/RemainingDistriFromCorpusAmt | 0 | 229898 |
| IRS990PF/UndistributedIncomeGrp/TotalCorpusAmt | 0 | 831265 |
| IRS990PF/UndistributedIncomeGrp/TotalExcessDistributionCyovAmt | 0 | 601367 |
| IRS990PF/UndistributedIncomeGrp/UndistributedIncomeCYAmt | 0 | 0 |
| OtherExpensesSchedule/OtherExpensesScheduleGrp/AdjustedNetIncomeAmt | 0 | 0 |
| OtherExpensesSchedule/OtherExpensesScheduleGrp/Desc | 0 | State Filing Fees |
| OtherExpensesSchedule/OtherExpensesScheduleGrp/DisbursementsCharitablePrpsAmt | 0 | 35 |
| OtherExpensesSchedule/OtherExpensesScheduleGrp/NetInvestmentIncomeAmt | 0 | 0 |
| OtherExpensesSchedule/OtherExpensesScheduleGrp/RevenueAndExpensesPerBooksAmt | 0 | 35 |
| OtherIncreasesSchedule/OtherIncreasesDetail/Amt | 0 | 151527 |
| OtherIncreasesSchedule/OtherIncreasesDetail/Desc | 0 | Change in unrealized Gain/ Loss |
| TaxesSchedule/TaxesDetail/AdjustedNetIncomeAmt | 0 | 0 |
| TaxesSchedule/TaxesDetail/Amt | 0 | 1264 |
| TaxesSchedule/TaxesDetail/CategoryTxt | 0 | Federal Excise Tax |
| TaxesSchedule/TaxesDetail/DisbursementsCharitablePrpsAmt | 0 | 0 |
| TaxesSchedule/TaxesDetail/NetInvestmentIncomeAmt | 0 | 0 |
| ReturnHeader/BuildTS | 0 | 2025-03-06 01:10:19Z |
| ReturnHeader/BusinessOfficerGrp/DiscussWithPaidPreparerInd | 0 | true |
| ReturnHeader/BusinessOfficerGrp/PersonNm | 0 | Reed Whitman |
| ReturnHeader/BusinessOfficerGrp/PersonTitleTxt | 0 | EVP/CFO |
| ReturnHeader/BusinessOfficerGrp/PhoneNum | 0 | 6179472901 |
| ReturnHeader/BusinessOfficerGrp/SignatureDt | 0 | 2025-04-15 |
| ReturnHeader/Filer/BusinessName/BusinessNameLine1Txt | 0 | Easthampton Savings Bank Foundation Inc |
| ReturnHeader/Filer/BusinessNameControlTxt | 0 | EAST |
| ReturnHeader/Filer/EIN | 0 | 043371592 |
| ReturnHeader/Filer/InCareOfNm | 0 | % REED WHITMAN |
| ReturnHeader/Filer/PhoneNum | 0 | 4135274111 |
| ReturnHeader/Filer/USAddress/AddressLine1Txt | 0 | 36 Main Street |
| ReturnHeader/Filer/USAddress/CityNm | 0 | Easthampton |
| ReturnHeader/Filer/USAddress/StateAbbreviationCd | 0 | MA |
| ReturnHeader/Filer/USAddress/ZIPCd | 0 | 01027 |
| ReturnHeader/IRSResponsiblePrtyInfoCurrInd | 0 | true |
| ReturnHeader/PreparerFirmGrp/PreparerFirmName/BusinessNameLine1Txt | 0 | Wolf & Company PC |
| ReturnHeader/PreparerFirmGrp/PreparerUSAddress/AddressLine1Txt | 0 | 255 State Street |
| ReturnHeader/PreparerFirmGrp/PreparerUSAddress/CityNm | 0 | Boston |
| ReturnHeader/PreparerFirmGrp/PreparerUSAddress/StateAbbreviationCd | 0 | MA |
| ReturnHeader/PreparerFirmGrp/PreparerUSAddress/ZIPCd | 0 | 02109 |
| ReturnHeader/PreparerPersonGrp/PhoneNum | 0 | 6174399700 |
| ReturnHeader/PreparerPersonGrp/PreparationDt | 0 | 2025-03-26 |
| ReturnHeader/PreparerPersonGrp/PreparerPersonNm | 0 | Karen Ng EA |
| ReturnHeader/ReturnTs | 0 | 2025-04-10T09:20:29-05:00 |
| ReturnHeader/ReturnTypeCd | 0 | 990PF |
| ReturnHeader/TaxPeriodBeginDt | 0 | 2024-01-01 |
| ReturnHeader/TaxPeriodEndDt | 0 | 2024-12-31 |
| ReturnHeader/TaxYr | 0 | 2024 |
No mirrored PDF or thumbnail assets are attached yet.