def METHOD_NAME(db):
    # Create 2 objects that should be returned and one that should not.
    # Create AGENCY AND TopTier AGENCY For FinancialAccountsByProgramActivityObjectClass objects
    ttagency1 = baker.make("references.ToptierAgency", name="tta_name", toptier_code="abc")
    baker.make("references.Agency", id=1, toptier_agency=ttagency1)
    # Object 1
    tas1 = baker.make("accounts.TreasuryAppropriationAccount", funding_toptier_agency=ttagency1)
    # Financial Account with Object class and submission
    object_class_1 = baker.make(
        "references.ObjectClass",
        major_object_class="10",
        major_object_class_name="mocName",
        object_class="ocCode",
        object_class_name="ocName",
    )
    submission_1 = baker.make(
        "submissions.SubmissionAttributes",
        reporting_fiscal_year=2017,
        toptier_code="abc",
        is_final_balances_for_fy=True,
    )
    baker.make(
        "financial_activities.FinancialAccountsByProgramActivityObjectClass",
        object_class=object_class_1,
        obligations_incurred_by_program_object_class_cpe=1000,
        submission=submission_1,
        treasury_account=tas1,
    )
    # Object 2 (contains 2 fabpaoc s)
    object_class_2 = baker.make(
        "references.ObjectClass",
        major_object_class="10",
        major_object_class_name="mocName2",
        object_class="ocCode2",
        object_class_name="ocName2",
    )
    submission_2 = baker.make(
        "submissions.SubmissionAttributes",
        reporting_fiscal_year=2017,
        toptier_code="abc",
        is_final_balances_for_fy=True,
    )
    baker.make(
        "financial_activities.FinancialAccountsByProgramActivityObjectClass",
        object_class=object_class_2,
        obligations_incurred_by_program_object_class_cpe=1000,
        submission=submission_2,
        treasury_account=tas1,
    )
    baker.make(
        "financial_activities.FinancialAccountsByProgramActivityObjectClass",
        object_class=object_class_2,
        obligations_incurred_by_program_object_class_cpe=2000,
        submission=submission_2,
        treasury_account=tas1,
    )
    # 2018, not reported by 2017 api call
    object_class_0 = baker.make(
        "references.ObjectClass",
        major_object_class="00",
        major_object_class_name="Zero object type, override me",
        object_class="ocCode2",
        object_class_name="ocName2",
    )
    tas3 = baker.make("accounts.TreasuryAppropriationAccount", funding_toptier_agency=ttagency1)
    submission_3 = baker.make(
        "submissions.SubmissionAttributes",
        reporting_fiscal_year=2018,
        toptier_code="abc",
        is_final_balances_for_fy=True,
    )
    baker.make(
        "financial_activities.FinancialAccountsByProgramActivityObjectClass",
        object_class=object_class_0,
        obligations_incurred_by_program_object_class_cpe=1000,
        submission=submission_3,
        treasury_account=tas3,
    )