# schedule428

Part 1 of 2.

British Columbia Training Tax Credit

- Kind: batch
- Program: T2 Corporation Income Tax Return
- Supported tax years: 2020 and later
- Strict profile: schedule428_v1
- Payload schema version: 0.6.0
- Dependencies (run automatically): schedule5

## Example request

Send this body to `POST /api/v1/computations/batch`. This example works with or without `payloadContract`.

```json
{
  "compute": [
    "schedule428"
  ],
  "inputs": {
    "taxYear": 2025,
    "fiscalStart": "2025-01-01",
    "fiscalEnd": "2025-12-31",
    "daysInYear": 365,
    "applicableRegulation": "402",
    "reg402_1CentralPaymasterArrangement": false,
    "partnershipOperations": false,
    "outsourcedServiceFeesPaid": false,
    "accounts": [
      {
        "id": "revenue",
        "accountCode": "4000",
        "accountName": "Coastal Trades active business revenue",
        "currentYearBalance": -100000,
        "classification": {
          "schedule1Relevant": false,
          "incomeType": "active_business",
          "foreignSource": false
        }
      }
    ],
    "incomeStatementFlags": {
      "revenue": true
    },
    "pyUCCPools": [],
    "assetData": [],
    "dispositions": [],
    "allocations": [
      {
        "jurisdiction": "BC",
        "hasPermanentEstablishment": true,
        "totalSalariesWages": 100000,
        "grossRevenue": 100000,
        "revenueReclass": 0,
        "unmodelledProvincialCreditsClaimed": false
      },
      {
        "jurisdiction": "AB",
        "hasPermanentEstablishment": false,
        "totalSalariesWages": 0,
        "grossRevenue": 0,
        "revenueReclass": 0,
        "albertaSmallBusinessFactorBasis": null
      }
    ],
    "isCCPC": true,
    "cooperativeCorporation136_2ThroughoutYear": false,
    "isInsuranceCorp": false,
    "specifiedInvestmentBusinessIncome": 0,
    "priorYearGroupTCEC": 250000,
    "priorYearGroupTCECMeta": {
      "basis": "standalone_preceding_tax_year",
      "asOf": "2024-12-31",
      "source": "prior filed T2",
      "confirmed": true
    },
    "associatedGroupAII": 0,
    "schedule428": {
      "claim": true,
      "taxableIncomeExempt": false,
      "exemptUnderSection27": false,
      "controlledByExemptPersons": false,
      "principalBusinessShipbuilding": false,
      "assistanceLedgerComplete": true,
      "employees": [
        {
          "employeeKey": "apprentice-1",
          "displayIdentifier": "STBC-0001",
          "displayIdentifierKind": "skilledtradesbc_id",
          "agreementDate": "2024-07-01",
          "registrationEvidenceReference": "SkilledTradesBC transcript",
          "bcPositionConfirmed": true,
          "redSealProgram": false,
          "basicProgram": {
            "schedule": "1",
            "item": "1"
          },
          "enhancementStatus": "not_enhanced",
          "relatedEmployersEmploy": false,
          "nonArmsLengthEmployersEmploy": false
        }
      ],
      "wageSlices": [
        {
          "sliceId": "payroll-2025-06",
          "employeeKey": "apprentice-1",
          "payableDate": "2025-06-30",
          "grossSalaryWages": "25000",
          "excludedBonuses": "3000",
          "payrollEvidenceReference": "2025 payroll register"
        }
      ],
      "assistance": [
        {
          "assistanceId": "grant-1",
          "sliceId": "payroll-2025-06",
          "category": "government",
          "statusAtFiling": "received",
          "amount": "2000",
          "alreadyNetted": false,
          "evidenceReference": "Wage subsidy letter"
        }
      ],
      "completions": [],
      "relatedEmployerAllocations": [],
      "partnerships": [],
      "priorClaimedEvents": [],
      "claimFiledDate": "2026-06-30",
      "claimFilingEvidenceReference": "T2 filing confirmation",
      "receiptsReviewed": true,
      "actualCreditReceipts": []
    },
    "t2Jacket": {
      "identification": {
        "typeOfCorporation": "1",
        "businessNumber": "123456782RC0001"
      },
      "additionalInfo": {
        "isCreditUnion": false
      }
    }
  }
}
```

## Input cells (28671)

Paths are relative to the request's `inputs` object. `[]` marks an array element.

Cells marked **always** require a non-null value in every request. Cells marked **strict** are required when you supply this target's `payloadContract`. See [Run computations](https://docs.filemark.ca/run-computations).

Unknown cells and JSON type mismatches return `400` with the affected cells in the error details.

| Cell | Types | Required | Description |
| --- | --- | --- | --- |
| `__corporate_group_resolution__` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_filed_continuity__` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.fiscalEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.fiscalStart` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.isFinancialInstitution` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.isInsuranceCorp` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.isResident` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.priorTaxYearId` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.scheduleData` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.scheduleKey` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.schemaVersion` | array \| boolean \| null \| number \| object \| string |  |  |
| `__linked_prior_schedule33__.taxableIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `__opening_input_context__` | array \| boolean \| null \| number \| object \| string |  |  |
| `__predecessor_filed_itc_lots__` | array \| boolean \| null \| number \| object \| string |  |  |
| `__predecessor_filed_loss_pools__` | array \| boolean \| null \| number \| object \| string |  |  |
| `__predecessor_filed_ucc_pools__` | array \| boolean \| null \| number \| object \| string |  |  |
| `__s4_carryback_target_capacity__` | array \| boolean \| null \| number \| object \| string |  |  |
| `__taxation_period_history__` | array \| boolean \| null \| number \| object \| string |  |  |
| `abAt1Inputs` | null \| object |  | Period-specific Alberta filing evidence and independent preparation calculations, saved separately from federal claims. |
| `abAt1Inputs.calculation` | object |  | Independent Alberta preparation workpaper. Its arithmetic does not establish supporting-schedule completeness or permission to file. |
| `abAt1Inputs.calculation.abiAdjustment` | object |  | Reviewed Alberta ABI differences. When independent EIFEL source receivers are active, this amount excludes their computed active-business difference; the backend adds that source difference once at012104. Supporting evidence and confirmation remain required. |
| `abAt1Inputs.calculation.abiAdjustment.amount` | string |  | Reviewed Alberta ABI differences. When independent EIFEL source receivers are active, this amount excludes their computed active-business difference; the backend adds that source difference once at012104. Supporting evidence and confirmation remain required. |
| `abAt1Inputs.calculation.abiAdjustment.confirmed` | boolean |  | Reviewed Alberta ABI differences. When independent EIFEL source receivers are active, this amount excludes their computed active-business difference; the backend adds that source difference once at012104. Supporting evidence and confirmation remain required. |
| `abAt1Inputs.calculation.abiAdjustment.evidenceRef` | string |  | Reviewed Alberta ABI differences. When independent EIFEL source receivers are active, this amount excludes their computed active-business difference; the backend adds that source difference once at012104. Supporting evidence and confirmation remain required. |
| `abAt1Inputs.calculation.abiSource` | string |  | Selects T2 line 400 or federal Schedule 16 line 124 as the canonical ABI producer. |
| `abAt1Inputs.calculation.allocation` | object |  | Schedule 2 allocation workpaper. When present it computes the jacket factor and does not fall back to a retained manual factor. |
| `abAt1Inputs.calculation.allocation.agreementConfirmed` | boolean |  | Confirms authority for the Reg 412 agreed allocation; the method cannot be selected merely because the corporation has several business activities. |
| `abAt1Inputs.calculation.allocation.agreementRef` | string |  | Reference to the agreed Reg 412 divided-business allocation. |
| `abAt1Inputs.calculation.allocation.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.allocation.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.allocation.foreignRevenueMeasure` | string |  | Reviewed foreign Schedule 5 column D measure for the applicable method; salary/revenue names do not change special-industry column meaning. |
| `abAt1Inputs.calculation.allocation.foreignSalaryMeasure` | string |  | Reviewed foreign Schedule 5 column B measure for the applicable method, used only to remove foreign PEs for the Schedule 1 factor. |
| `abAt1Inputs.calculation.allocation.measures` | object |  | Final reviewed Schedule 2 measures. Only the input fields belonging to the selected method are accepted; calculated lines cannot be overridden. |
| `abAt1Inputs.calculation.allocation.measures.002` | string |  | Final reviewed Schedule 2 measure for field 002, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.004` | string |  | Final reviewed Schedule 2 measure for field 004, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.006` | string |  | Final reviewed Schedule 2 measure for field 006, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.008` | string |  | Final reviewed Schedule 2 measure for field 008, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.012` | string |  | Final reviewed Schedule 2 measure for field 012, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.014` | string |  | Final reviewed Schedule 2 measure for field 014, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.016` | string |  | Final reviewed Schedule 2 measure for field 016, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.018` | string |  | Final reviewed Schedule 2 measure for field 018, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.022` | string |  | Final reviewed Schedule 2 measure for field 022, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.024` | string |  | Final reviewed Schedule 2 measure for field 024, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.026` | string |  | Final reviewed Schedule 2 measure for field 026, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.028` | string |  | Final reviewed Schedule 2 measure for field 028, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.032` | string |  | Final reviewed Schedule 2 measure for field 032, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.034` | string |  | Final reviewed Schedule 2 measure for field 034, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.036` | string |  | Final reviewed Schedule 2 measure for field 036, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.038` | string |  | Final reviewed Schedule 2 measure for field 038, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.046` | string |  | Final reviewed Schedule 2 measure for field 046, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.048` | string |  | Final reviewed Schedule 2 measure for field 048, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.052` | string |  | Final reviewed Schedule 2 measure for field 052, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.054` | string |  | Final reviewed Schedule 2 measure for field 054, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.056` | string |  | Final reviewed Schedule 2 measure for field 056, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.058` | string |  | Final reviewed Schedule 2 measure for field 058, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.066` | string |  | Final reviewed Schedule 2 measure for field 066, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.068` | string |  | Final reviewed Schedule 2 measure for field 068, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.072` | string |  | Final reviewed Schedule 2 measure for field 072, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.074` | string |  | Final reviewed Schedule 2 measure for field 074, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.076` | string |  | Final reviewed Schedule 2 measure for field 076, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.078` | string |  | Final reviewed Schedule 2 measure for field 078, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.082` | string |  | Final reviewed Schedule 2 measure for field 082, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.084` | string |  | Final reviewed Schedule 2 measure for field 084, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.086` | string |  | Final reviewed Schedule 2 measure for field 086, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.088` | string |  | Final reviewed Schedule 2 measure for field 088, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.090` | string |  | Final reviewed Schedule 2 measure for field 090, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.092` | string |  | Final reviewed Schedule 2 measure for field 092, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.094` | string |  | Final reviewed Schedule 2 measure for field 094, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.096` | string |  | Final reviewed Schedule 2 measure for field 096, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.098` | string |  | Final reviewed Schedule 2 measure for field 098, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.100` | string |  | Final reviewed Schedule 2 measure for field 100, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.measures.106` | string |  | Final reviewed Schedule 2 measure for field 106, with the applicable statutory population and residency adjustments. |
| `abAt1Inputs.calculation.allocation.nonResident` | boolean \| null |  | Explicit non-resident status. Automatic federal measures require the matching canonical residency audit; reviewed measures already include applicable Reg 413 scope adjustments. |
| `abAt1Inputs.calculation.allocation.outsideCanadaPermanentEstablishment` | boolean \| null |  | Explicit foreign-PE fact for the Schedule 1 Canadian factor. Canonical federal PE evidence takes precedence and a contradiction holds the calculation. |
| `abAt1Inputs.calculation.allocation.regulation` | string |  | Applicable Part IV method, including the actual railway subsection; Reg 406(2) uses five independent Alberta business portions. |
| `abAt1Inputs.calculation.allocation.scopeReviewed` | boolean |  | Confirms method eligibility and every measure denominator's statutory geographic and business scope. |
| `abAt1Inputs.calculation.allocation.segments` | array |  | All five Reg 406(2) independent Alberta taxable-income portions, including evidenced nil rows. The federal source reads each canonical business measure audit and reweights it on Alberta income; the reviewed source captures final business-specific measures. |
| `abAt1Inputs.calculation.allocation.segmentsReconciled` | boolean |  | Confirms all five portions reconcile to Alberta taxable income; clear after a portion or factor changes. |
| `abAt1Inputs.calculation.allocation.segments[]` | object |  |  |
| `abAt1Inputs.calculation.allocation.segments[].confirmed` | boolean |  | True after reviewing this business portion and its independent factors; clear on any change. |
| `abAt1Inputs.calculation.allocation.segments[].evidenceRef` | string |  | Supporting reference for the independent business portion and factor attribution. |
| `abAt1Inputs.calculation.allocation.segments[].kind` | string |  | One of airline, ships, hotels, petroleum_or_natural_gas_royalties or railway; each occurs exactly once. |
| `abAt1Inputs.calculation.allocation.segments[].measures` | object |  | The positive portion's independent Schedule 2 measures under Reg 407, 410, 402 or 406(1), applying the business-specific readings in Reg 406(4)-(6). |
| `abAt1Inputs.calculation.allocation.segments[].measures.002` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 002. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.004` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 004. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.006` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 006. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.008` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 008. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.012` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 012. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.014` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 014. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.016` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 016. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.018` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 018. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.022` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 022. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.024` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 024. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.026` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 026. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.028` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 028. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.032` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 032. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.034` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 034. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.036` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 036. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.038` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 038. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.046` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 046. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.048` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 048. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.052` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 052. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.054` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 054. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.056` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 056. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.058` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 058. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.066` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 066. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.068` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 068. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.072` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 072. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.074` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 074. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.076` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 076. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.078` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 078. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.082` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 082. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.084` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 084. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.086` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 086. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.088` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 088. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.090` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 090. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.092` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 092. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.094` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 094. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.096` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 096. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.098` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 098. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.100` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 100. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].measures.106` | string |  | Exact nonnegative decimal text for this portion's Schedule 2 field 106. Only the fields for the portion's regulation are allowed. |
| `abAt1Inputs.calculation.allocation.segments[].taxableIncome` | string |  | Exact nonnegative Alberta taxable-income portion; the five portions must sum exactly to jacket line 062. |
| `abAt1Inputs.calculation.allocation.segments[].zeroTaxableIncomeConfirmed` | boolean |  | Explicit confirmation of a nil portion; unused measures must then be absent. |
| `abAt1Inputs.calculation.allocation.source` | string |  | Canonical federal Schedule 5 measures or final reviewed Schedule 2 measures. No entered measure overrides are accepted with the federal source. |
| `abAt1Inputs.calculation.allocationFactor` | object |  | Reviewed Alberta Schedule 2 allocation factor, retained as a supporting calculation input. |
| `abAt1Inputs.calculation.allocationFactor.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.allocationFactor.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.allocationFactor.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.capital` | object |  | Independent Alberta Schedule 18 property and election facts, TRA15156 rev 2026-08, for supported 2023-2026 periods. When present this producer replaces the capital component of Schedule 12 line 040 and the reviewed current gross capital loss. Incomplete facts remain held. |
| `abAt1Inputs.calculation.capital.amounts` | object |  | Separately evidenced Alberta supporting amounts keyed by printed line. Each requires explicit nil where applicable. |
| `abAt1Inputs.calculation.capital.amounts.066` | object |  | Independent Alberta capital-gain reserve opening balance, as a separately evidenced reviewed amount. |
| `abAt1Inputs.calculation.capital.amounts.066.amount` | string |  | Reviewed exact signed or nonnegative decimal amount as applicable to this component. Zero must be explicitly supplied and confirmed. |
| `abAt1Inputs.calculation.capital.amounts.066.confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.amounts.066.evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.amounts.068` | object |  | Reviewed closing capital-gain reserve; must match the canonical federal reserve under ACTA 9(3). |
| `abAt1Inputs.calculation.capital.amounts.068.amount` | string |  | Reviewed exact signed or nonnegative decimal amount as applicable to this component. Zero must be explicitly supplied and confirmed. |
| `abAt1Inputs.calculation.capital.amounts.068.confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.amounts.068.evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.amounts.077` | object |  | Reviewed flow-through-share exemption threshold at disposal under ITA 40(12). On the pre-July2019 face this is a source fact, not a printed077 field; its deemed gain enters other-property D and final074. |
| `abAt1Inputs.calculation.capital.amounts.077.amount` | string |  | Reviewed exact signed or nonnegative decimal amount as applicable to this component. Zero must be explicitly supplied and confirmed. |
| `abAt1Inputs.calculation.capital.amounts.077.confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.amounts.077.evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.amounts.078` | object |  | Reviewed actual-property gains for the ITA 40(12) lesser-of calculation. The historical face uses the same statutory fact without inventing a printed078 field. |
| `abAt1Inputs.calculation.capital.amounts.078.amount` | string |  | Reviewed exact signed or nonnegative decimal amount as applicable to this component. Zero must be explicitly supplied and confirmed. |
| `abAt1Inputs.calculation.capital.amounts.078.confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.amounts.078.evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.continuity` | string |  | Alberta continuity case: ordinary, entryOrReentry, amalgamation, windUp, controlChange, currencyChange or exemptionChange. Only ordinary property continuity is currently computed. |
| `abAt1Inputs.calculation.capital.elections` | array |  | Alberta AT107, AT108 or AT109 elections, at most 500 rows, matched by property identity. Separate-cover status is reviewed independently; no electronic election filing is claimed. |
| `abAt1Inputs.calculation.capital.electionsComplete` | boolean |  | Review that all applicable Alberta transfer elections, including an explicit empty roster, are captured. |
| `abAt1Inputs.calculation.capital.elections[]` | object |  |  |
| `abAt1Inputs.calculation.capital.elections[].affectedPool` | string |  | Identity of the affected depreciable/resource pool, retained for review; its statutory election allocation remains held. |
| `abAt1Inputs.calculation.capital.elections[].albertaAgreedAmount` | string |  | Alberta election column E as nonnegative exact decimal text, between A and D where D=A-B+C. |
| `abAt1Inputs.calculation.capital.elections[].albertaCost` | string |  | Independent Alberta election column C cost immediately before transfer, as nonnegative exact decimal text. |
| `abAt1Inputs.calculation.capital.elections[].confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.elections[].dueDate` | string |  | Reviewed legal receipt deadline as an ISO date, derived from actual transferee/member periods under ACTA 14.3(3) or 16.2(3); never transaction date plus three years. |
| `abAt1Inputs.calculation.capital.elections[].eligibilityConfirmed` | boolean |  | Review eligible property, qualified parties, valid federal election and statutory conditions for this Alberta election. |
| `abAt1Inputs.calculation.capital.elections[].evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.elections[].federalAgreedAmount` | string |  | Federal election column A, supported by the valid federal election, as nonnegative exact decimal text. |
| `abAt1Inputs.calculation.capital.elections[].federalCost` | string |  | Federal election column B cost immediately before transfer, as nonnegative exact decimal text. |
| `abAt1Inputs.calculation.capital.elections[].federalElectionRef` | string |  | Evidence of the valid federal T2057/T2058/T2059 election, separate from the reviewed Alberta agreed amount. |
| `abAt1Inputs.calculation.capital.elections[].filingEvidenceRef` | string |  | Evidence reference for the separate-cover election packet, signatures, deadline and delivery/authority status review. |
| `abAt1Inputs.calculation.capital.elections[].filingReviewed` | boolean |  | Review the separate-cover status, legally determined deadline, complete packet and retained supporting evidence independently of the return. |
| `abAt1Inputs.calculation.capital.elections[].filingStatus` | string |  | Reviewed separate-cover status: prepared, signed, dispatched, deliveryEvidenceRecorded, authorityReceiptConfirmed or authorityIssueRaised. Return confirmation never satisfies this obligation. |
| `abAt1Inputs.calculation.capital.elections[].form` | string |  | Alberta election identity: AT107, AT108 or AT109, TRA0003/4/5 rev 2025-12. |
| `abAt1Inputs.calculation.capital.elections[].id` | string |  | Stable unique identity within this Alberta roster; never an array position. |
| `abAt1Inputs.calculation.capital.elections[].memberShareLossReduction` | object |  | Reviewed corporate member reduction under ITA112(3.1), applied after allocating the partnership share loss; explicit nil is required for shares. |
| `abAt1Inputs.calculation.capital.elections[].memberShareLossReduction.amount` | string |  | Exact decimal reduction, bounded by the allocated share loss. |
| `abAt1Inputs.calculation.capital.elections[].memberShareLossReduction.confirmed` | boolean |  | Preparer reviewed this reduction and its source. |
| `abAt1Inputs.calculation.capital.elections[].memberShareLossReduction.evidenceRef` | string |  | Supporting dividend and share-loss reduction evidence. |
| `abAt1Inputs.calculation.capital.elections[].members` | array |  | Bounded captured members roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.elections[].membersComplete` | boolean |  | Captured membersComplete for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].members[]` | object |  |  |
| `abAt1Inputs.calculation.capital.elections[].members[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.elections[].members[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.elections[].members[].isFiler` | boolean |  | Captured isFiler for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].members[].memberId` | string |  | Captured memberId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].members[].shareDenominator` | string |  | Captured shareDenominator for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].members[].shareNumerator` | string |  | Captured shareNumerator for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital` | object |  | Independent partnership capital-property facts for ITA40/46 before ITA96 member allocation; elected proceeds and Alberta cost remain on the election. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.acquisitionDate` | string |  | Actual ISO acquisition date. ABIL acquisition date must match federal Schedule 6 line 910. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.category` | string |  | Schedule 18 property category: shares, realEstate, bonds, other, personalUse, listedPersonal or abil. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.description` | string |  | Property description; for ABIL identify the small business corporation (printed line 082). |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.disposed` | boolean \| null |  | Whether this property was disposed of this year. Unanswered does not establish a retained or disposed property. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.dispositionDate` | string |  | Actual ISO disposition date within this taxation period, on or after acquisition. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.id` | string |  | Stable unique identity within this Alberta roster; never an array position. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules` | array |  | Bounded captured lossRules roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[]` | object |  |  |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].affiliatedOwner` | boolean \| null |  | Captured affiliatedOwner for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].allThreePartiesRelated` | boolean \| null |  | Captured allThreePartiesRelated for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].armLengthCapitalConsideration` | boolean \| null |  | Captured armLengthCapitalConsideration for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].assistance` | string |  | Captured assistance for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].beneficiaryTransfer` | boolean \| null |  | Captured beneficiaryTransfer for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].considerationFairMarketValue` | string |  | Captured considerationFairMarketValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].costAdditions` | string |  | Captured costAdditions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].debtAcquiredForIncome` | boolean \| null |  | Captured debtAcquiredForIncome for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].disposedQuantity` | string |  | Captured disposedQuantity for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].excludedDisposition` | string |  | Closed choice: none, optionExpiry, deemedDisposition, control, section50, exemptStatus. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].exemptInterest` | string |  | Captured exemptInterest for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].heldAtWindowEnd` | boolean \| null |  | Captured heldAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].identicalProperty` | boolean \| null |  | Captured identicalProperty for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].kind` | string |  | Closed choice: replacement, debt, registeredPlan, relatedDebt, debtReplacement, controlledShares, assistedShares, exemptInterest. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].ownedQuantityAtWindowEnd` | string |  | Captured ownedQuantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].priorReductions` | string |  | Captured priorReductions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].quantityAtWindowEnd` | string |  | Captured quantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].reacquiredQuantity` | string |  | Captured reacquiredQuantity for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].replacementAcquiredDate` | string |  | Captured replacementAcquiredDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].replacementDebtFairMarketValue` | string |  | Captured replacementDebtFairMarketValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].replacementOwnedByTaxpayer` | boolean \| null |  | Captured replacementOwnedByTaxpayer for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].replacementPropertyId` | string |  | Captured replacementPropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].rightOnlyQuantityAtWindowEnd` | string |  | Captured rightOnlyQuantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].rightToAcquireAtWindowEnd` | boolean \| null |  | Captured rightToAcquireAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].taxpayerAcquisitionDate` | string |  | Captured taxpayerAcquisitionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.lossRules[].taxpayerQuantityAtWindowEnd` | string |  | Captured taxpayerQuantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts` | object |  | Reviewed personalUseParts facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.ordinarilyDisposedAsSet` | boolean \| null |  | Captured ordinarilyDisposedAsSet for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.retainedPart` | boolean \| null |  | Captured retainedPart for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.sameOrNonArmLengthAcquirers` | boolean \| null |  | Captured sameOrNonArmLengthAcquirers for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.setFairMarketValue` | string |  | Captured setFairMarketValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.wholePropertyAcb` | string |  | Captured wholePropertyAcb for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseParts.wholePropertyId` | string |  | Captured wholePropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.personalUseTreatment` | string |  | s.46 treatment: whole, part, set or excludedGift. Part/set facts identify whole-property ACB, retained parts, related acquirers and the set valuation used to allocate the dated floor. |
| `abAt1Inputs.calculation.capital.elections[].partnershipCapital.specialRulesApply` | boolean \| null |  | Whether adopted special loss-denial, deemed-disposition or ACB rules apply. Capture the dated lossRules, acbMovements or controlBasis facts and evidence; unanswered facts hold the receiver. |
| `abAt1Inputs.calculation.capital.elections[].partnershipPeriodEnd` | string |  | Captured partnershipPeriodEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].partnershipPeriodStart` | string |  | Captured partnershipPeriodStart for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts` | object |  | Reviewed poolFacts facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.ccaClass` | string |  | Captured ccaClass for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.classCapitalCostForAllocation` | string |  | Total original capital cost of the properties in the class immediately before transfer; positive denominator for the statutory UCC allocation. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.classUccBeforeTransfer` | string |  | Captured classUccBeforeTransfer for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.description` | string |  | Captured description for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.destinationBaseAmount` | string |  | Captured destinationBaseAmount for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.destinationPoolId` | string |  | Captured destinationPoolId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.dispositionOutlays` | string |  | Captured dispositionOutlays for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.expenseShareElectionDate` | string |  | Captured expenseShareElectionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.expenseShareElectionValidConfirmed` | boolean |  | Captured expenseShareElectionValidConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.expenseShareOptOutElectionMade` | boolean \| null |  | Captured expenseShareOptOutElectionMade for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.federalInventoryValuationMethod` | string |  | Closed choice: cost, lowerCostOrMarket, fairMarketValue. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.foreignResourceDesignation` | object |  | Reviewed foreignResourceDesignation facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.foreignResourceDesignation.amount` | string |  | Captured amount for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.foreignResourceDesignation.confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.foreignResourceDesignation.evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventoryBusinessKind` | string |  | Closed choice: ordinary, adventureInTrade. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventoryClosingFmv` | string |  | Captured inventoryClosingFmv for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventoryQuantity` | string |  | Captured inventoryQuantity for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventoryQuantitySold` | string |  | Captured inventoryQuantitySold for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventorySaleKind` | string |  | Closed choice: none, partial, all. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventorySaleProceeds` | string |  | Captured inventorySaleProceeds for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventorySold` | boolean \| null |  | Captured inventorySold for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventoryValuationChangeApprovedConfirmed` | boolean |  | Captured inventoryValuationChangeApprovedConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.inventoryValuationMethod` | string |  | Closed choice: cost, lowerCostOrMarket, fairMarketValue. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.limitedPartner66_8` | boolean \| null |  | Captured limitedPartner66_8 for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.propertyCapitalCostForAllocation` | string |  | Original capital cost of the elected depreciable property in the class, used for ACTA 14.1/14.2/16.1 column C allocation; never its fair market value. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.resourceDispositionEventId` | string |  | Captured resourceDispositionEventId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.resourceKind` | string |  | Closed choice: canadianMining, canadianOilGas, foreignResource. |
| `abAt1Inputs.calculation.capital.elections[].poolFacts.transferorCapitalCost` | string |  | Captured transferorCapitalCost for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.elections[].propertyId` | string |  | Stable target property identity; in federalOccurrence, the canonical federal Schedule 6 property identity. |
| `abAt1Inputs.calculation.capital.elections[].propertyKind` | string |  | Election property character: nonDepreciableCapital, depreciable, resource, inventory or other. Only ordinary non-depreciable capital effects are computed; other pool allocations remain held. |
| `abAt1Inputs.calculation.capital.elections[].receivedDate` | string |  | Actual evidenced authority receipt ISO date, required for authorityReceiptConfirmed and checked against the reviewed deadline. |
| `abAt1Inputs.calculation.capital.elections[].role` | string |  | This corporation is the transferor or transferee for this election. |
| `abAt1Inputs.calculation.capital.elections[].transferAt` | string |  | Actual offset timestamp of this elected transfer, reconciled to acquisition and debt histories. |
| `abAt1Inputs.calculation.capital.elections[].transferDate` | string |  | Actual ISO transfer date in this taxation year, matching the target acquisition or disposition. |
| `abAt1Inputs.calculation.capital.elections[].transfereeId` | string |  | Reviewed identity of the acquiring party to this election. |
| `abAt1Inputs.calculation.capital.elections[].transferorId` | string |  | Reviewed identity of the transferor party to this election. |
| `abAt1Inputs.calculation.capital.evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.inventoryOpenings` | array |  | Bounded captured inventoryOpenings roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[]` | object |  |  |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].cost` | string |  | Captured cost for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].currentCosts` | string |  | Captured currentCosts for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].dispositionKind` | string |  | Closed choice: none, ordinarySale, election. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].federalCost` | string |  | Captured federalCost for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].federalCurrentCosts` | string |  | Captured federalCurrentCosts for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].federalOpeningInventoryValue` | string |  | Captured federalOpeningInventoryValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].id` | string |  | Durable property, election or continuity-record identity; do not match by roster position. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].isPartnership` | boolean |  | Captured isPartnership for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].openingInventoryValue` | string |  | Captured openingInventoryValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].ownerId` | string |  | Captured ownerId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].priorFederalInventoryValuationMethod` | string |  | Closed choice: cost, lowerCostOrMarket, fairMarketValue. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].priorInventoryBusinessKind` | string |  | Closed choice: ordinary, adventureInTrade. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].priorInventoryValuationMethod` | string |  | Closed choice: cost, lowerCostOrMarket, fairMarketValue. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].propertyId` | string |  | Captured propertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].quantity` | string |  | Captured quantity for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts` | object |  | Reviewed saleFacts facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.ccaClass` | string |  | Captured ccaClass for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.classCapitalCostForAllocation` | string |  | Total original capital cost of the properties in the class immediately before transfer; positive denominator for the statutory UCC allocation. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.classUccBeforeTransfer` | string |  | Captured classUccBeforeTransfer for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.description` | string |  | Captured description for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.destinationBaseAmount` | string |  | Captured destinationBaseAmount for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.destinationPoolId` | string |  | Captured destinationPoolId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.dispositionOutlays` | string |  | Captured dispositionOutlays for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.expenseShareElectionDate` | string |  | Captured expenseShareElectionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.expenseShareElectionValidConfirmed` | boolean |  | Captured expenseShareElectionValidConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.expenseShareOptOutElectionMade` | boolean \| null |  | Captured expenseShareOptOutElectionMade for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.federalInventoryValuationMethod` | string |  | Closed choice: cost, lowerCostOrMarket, fairMarketValue. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.foreignResourceDesignation` | object |  | Reviewed foreignResourceDesignation facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.foreignResourceDesignation.amount` | string |  | Captured amount for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.foreignResourceDesignation.confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.foreignResourceDesignation.evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventoryBusinessKind` | string |  | Closed choice: ordinary, adventureInTrade. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventoryClosingFmv` | string |  | Captured inventoryClosingFmv for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventoryQuantity` | string |  | Captured inventoryQuantity for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventoryQuantitySold` | string |  | Captured inventoryQuantitySold for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventorySaleKind` | string |  | Closed choice: none, partial, all. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventorySaleProceeds` | string |  | Captured inventorySaleProceeds for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventorySold` | boolean \| null |  | Captured inventorySold for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventoryValuationChangeApprovedConfirmed` | boolean |  | Captured inventoryValuationChangeApprovedConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.inventoryValuationMethod` | string |  | Closed choice: cost, lowerCostOrMarket, fairMarketValue. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.limitedPartner66_8` | boolean \| null |  | Captured limitedPartner66_8 for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.propertyCapitalCostForAllocation` | string |  | Original capital cost of the elected depreciable property in the class, used for ACTA 14.1/14.2/16.1 column C allocation; never its fair market value. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.resourceDispositionEventId` | string |  | Captured resourceDispositionEventId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.resourceKind` | string |  | Closed choice: canadianMining, canadianOilGas, foreignResource. |
| `abAt1Inputs.calculation.capital.inventoryOpenings[].saleFacts.transferorCapitalCost` | string |  | Captured transferorCapitalCost for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.listedPersonalLossApplied` | object |  | Reviewed prior Alberta listed-personal-property loss application at line 060, capped at the positive current line 059 gain. Coordinate availability with Alberta loss continuity. |
| `abAt1Inputs.calculation.capital.listedPersonalLossApplied.amount` | string |  | Reviewed exact signed or nonnegative decimal amount as applicable to this component. Zero must be explicitly supplied and confirmed. |
| `abAt1Inputs.calculation.capital.listedPersonalLossApplied.confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.listedPersonalLossApplied.evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.listedPersonalLossAvailable` | object |  | Reviewed available prior Alberta listed-personal-property losses after current expiry and restrictions. The line 060 application cannot exceed this pool or positive current LPP gains. Computed closing proposals require fresh vintage and expiry review. |
| `abAt1Inputs.calculation.capital.listedPersonalLossAvailable.amount` | string |  | Nonnegative available prior Alberta LPP losses as exact decimal text; confirm explicit nil where applicable. |
| `abAt1Inputs.calculation.capital.listedPersonalLossAvailable.confirmed` | boolean |  | Confirm this period's available Alberta LPP loss pool and its evidence. |
| `abAt1Inputs.calculation.capital.listedPersonalLossAvailable.evidenceRef` | string |  | Assessed Alberta loss-vintage evidence and current expiry/restriction review reference. |
| `abAt1Inputs.calculation.capital.partnerships` | array |  | Bounded captured partnerships roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].businessIncomeBeforeCca` | object |  | Complete independently evidenced non-farming business/property income before partnership recapture, terminal loss and CCA; signed. Reconcile the resulting loss with Schedule21 and the canonical federal LP account. |
| `abAt1Inputs.calculation.capital.partnerships[].businessIncomeBeforeCca.amount` | string |  | Exact signed decimal complete income before CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].businessIncomeBeforeCca.confirmed` | boolean |  | Preparer reviewed the complete source income. |
| `abAt1Inputs.calculation.capital.partnerships[].businessIncomeBeforeCca.evidenceRef` | string |  | Independent jurisdiction-specific complete business source. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources` | array |  | Complete separate non-farming source roster; each actual CCA/terminal-loss/recapture class allocation must reconcile to the independent native partnership CCA calculation before member income/loss and at-risk restriction. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSourcesComplete` | boolean |  | Actual partnership source linkage/review for the canonical federal income producer; full source-return/period identity is required, and the reviewed federal bridge cannot override native source income. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].allocationReasonableUnder103Confirmed` | boolean |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field allocationReasonableUnder103Confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations` | array |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field ccaAllocations. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocationsComplete` | boolean |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field ccaAllocationsComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[].cca` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field cca. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[].ccaClass` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field ccaClass. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[].confirmed` | boolean |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[].evidenceRef` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[].propertyId` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field propertyId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[].recapture` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field recapture. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].ccaAllocations[].terminalLoss` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field terminalLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].confirmed` | boolean |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].evidenceRef` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].id` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field id. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].incomeBeforeCca` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field incomeBeforeCca. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].kind` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field kind. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].shareDenominator` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field shareDenominator. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].businessSources[].shareNumerator` | string |  | ACTA8/16/18; ITA96(1)(c)/(2.1),103: independent Alberta non-farming sources with actual class attribution verified against the completed CCA producer; source loss is summed before one at-risk cap, with positive sources retained. Source field shareNumerator. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties` | array |  | Gross retained partnership-owned capital bases for statutory additions and dated negative-ACB resets; never corporate property or CCA pools. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalPropertiesComplete` | boolean |  | Reviewed complete retained partnership capital-property roster, including the identified recipients of statutory additions. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements` | array |  | Bounded captured acbMovements roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].additions` | string |  | Captured additions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].date` | string |  | Captured date for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].effectiveAt` | string |  | Actual offset timestamp for this ACB movement. Same-day property, control, election and debt events must use their proven chronological order. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].eligibilityConfirmed` | boolean |  | Captured eligibilityConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].kind` | string |  | Closed choice: other, superficialLossAddition. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].reductions` | string |  | Captured reductions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].sourceDispositionDate` | string |  | Captured sourceDispositionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acbMovements[].sourcePropertyId` | string |  | Captured sourcePropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].acquisitionDate` | string |  | Actual ISO acquisition date. ABIL acquisition date must match federal Schedule 6 line 910. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].category` | string |  | Schedule 18 property category: shares, realEstate, bonds, other, personalUse, listedPersonal or abil. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].cost` | string |  | Independent Alberta acquisition or opening property cost as nonnegative exact decimal text. An ordinary transferee election replaces acquisition cost with its Alberta agreed amount. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].costAdditions` | string |  | Alberta ACB additions as nonnegative exact decimal text; explicit zero is required where nil. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].costReductions` | string |  | Alberta ACB reductions as nonnegative exact decimal text. A resulting negative ACB remains held for its deemed-gain calculation. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].description` | string |  | Property description; for ABIL identify the small business corporation (printed line 082). |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].id` | string |  | Stable unique identity within this Alberta roster; never an array position. |
| `abAt1Inputs.calculation.capital.partnerships[].capitalProperties[].retainedThroughPeriodEnd` | boolean |  | The partnership retained this property through its actual fiscal-period end. A future acquisition is a pending addition, not current ownership. |
| `abAt1Inputs.calculation.capital.partnerships[].cca` | object |  | Reviewed cca facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.adjustmentCoverage` | object |  | Existing CCA statutory-coverage review, completed for the Alberta input packet. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocBecomesOrCeasesExemptAtEvent` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocMainReasonIsToCauseProvisionToApply` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocMainReasonTargetedProvision` | string |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations` | array |  | Captured independent per-property designation facts. Application remains held until the Alberta deemed-disposition capital-gain receiver is reconciled; they are never applied through CCA alone. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].adjustedCostBase` | string |  | Separate pre-disposition adjusted cost base for the111(4)(e)(i) proceeds floor and Schedule18 gain. CCA capital cost remains separate for13(7)(f)/(111(4)(e)(iii)); bounded exact decimal text, at most80 characters. Required by the new receiver, with no assumed equality to CCA cost. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].capitalCost` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].ccaClass` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].designatedAmount` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].fmv` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].propertyId` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver` | object |  | Reviewed property identity, category, actual acquisition date and disposal-rule facts receiving the computed 111(4)(e) gain in Alberta Schedule18. The backend computes proceeds, gain, reacquired cost and UCC; no reviewed gain substitutes for it. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.acquisitionAt` | string |  | Actual property acquisition timestamp including UTC offset, required for an acquisition on an intraday control date. Must precede the reviewed control instant under ITA111(4)(e),249(4),256(9). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.acquisitionDate` | string |  | Independent Alberta CCA transition acquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.category` | string |  | Independent Alberta CCA transition category. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.description` | string |  | Independent Alberta CCA transition description. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts` | object |  | Independent Alberta CCA transition dispositionFacts. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.affiliatedPersonStopLossApplies` | boolean \| null |  | Independent Alberta CCA transition affiliatedPersonStopLossApplies. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.businessCeased` | boolean \| null |  | Independent Alberta CCA transition businessCeased. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.dispositionAcquirerReg1100_2_2_hApplies` | boolean \| null |  | Independent Alberta CCA transition dispositionAcquirerReg1100_2_2_hApplies. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.dispositionIsArmsLength` | boolean \| null |  | Independent Alberta CCA transition dispositionIsArmsLength. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.isFormerPropertyDeemedOwnedUnder13_4_3` | boolean \| null |  | Independent Alberta CCA transition isFormerPropertyDeemedOwnedUnder13_4_3. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.section13_21_1LandRelationshipExists` | boolean \| null |  | Independent Alberta CCA transition section13_21_1LandRelationshipExists. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.similarPropertyAcquiredWithin24MonthsAndStillOwned` | boolean \| null |  | Independent Alberta CCA transition similarPropertyAcquiredWithin24MonthsAndStillOwned. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.dispositionFacts.wasDIEP` | boolean \| null |  | Independent Alberta CCA transition wasDIEP. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.outlays` | object |  | Independent Alberta CCA transition outlays. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.outlays.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.outlays.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].receiver.outlays.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.aocPropertyDesignations[].subsection111_5_1WouldApply` | boolean |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.assets` | array |  | Alberta asset facts using the existing CCA asset-row vocabulary and statutory checks. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.assets[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.assistanceCapitalCostReductions` | array |  | Alberta assistance adjustments; unresolved producer cases retain their holds. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.assistanceCapitalCostReductions[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.availableForUseWorkpaper` | array |  | Alberta available-for-use facts, preserving the producer statutory checks. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.availableForUseWorkpaper[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.buildingConstructionStarts` | object |  | Actual construction or qualifying commercial-renovation start dates, keyed by the Alberta asset property ID. Required to resolve a saved purpose-built rental token: after 2024-04-15 and before 2031, with availability before 2036 (Reg.1104(2)). At most 500 entries; dates are full ISO dates, with an empty string retained only as an unanswered draft. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.class14_1Transitional` | object |  | Separate Alberta Class 14.1 transitional facts in the existing CCA vocabulary. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers` | array |  | Reviewed current-year wind-up property/class ledger. Source UCC and capital-cost history reconcile by predecessor and class; the backend allocates UCC by received capital-cost fraction and tests the364-day half-year exception. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfersComplete` | boolean |  | Explicit confirmation that every predecessor CCA class and received property has been captured. Changes clear this and dependent reviews. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentCapitalCostChanges` | object |  | Independent Alberta CCA transition currentCapitalCostChanges. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentCapitalCostChanges.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentCapitalCostChanges.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentCapitalCostChanges.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentUccChanges` | object |  | Independent Alberta CCA transition currentUccChanges. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentUccChanges.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentUccChanges.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].currentUccChanges.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].predecessorId` | string |  | Independent Alberta CCA transition predecessorId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties` | array |  | Independent Alberta CCA transition properties. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].propertiesComplete` | boolean |  | Independent Alberta CCA transition propertiesComplete. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].bookCapitalCostReceived` | object |  | Independent Alberta CCA transition bookCapitalCostReceived. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].bookCapitalCostReceived.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].bookCapitalCostReceived.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].bookCapitalCostReceived.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].capitalCost` | object |  | Independent Alberta CCA transition capitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].capitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].capitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].capitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].continuousOwnershipConfirmed` | boolean \| null |  | Independent Alberta CCA transition continuousOwnershipConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].previousReg1100ExceptionApplied` | boolean \| null |  | Independent Alberta CCA transition previousReg1100ExceptionApplied. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].properties[].sourceAcquisitionDate` | string |  | Independent Alberta CCA transition sourceAcquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceChangesPeriodStart` | string |  | First actual day covered by the source UCC and capital-cost changes. For a later transfer of the same predecessor class, this is the day after its preceding transfer. ITA88(1),248(1); the backend deducts earlier transfers once. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceClassRule` | string |  | Independent Alberta CCA transition sourceClassRule. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger` | object |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears` | array |  | Every actual contiguous following source taxation year, with independent native/restated deduction choices when that year closes. Carry the already restated property costs and UCC into the next year without translating them again. ITA261(16)/(17). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.followingYears[].targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceCurrencyLedger.targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourcePoolPropertyId` | string |  | Independent Alberta CCA transition sourcePoolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceReportingCurrency` | string |  | Independent Alberta CCA transition sourceReportingCurrency. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].sourceWasSeparatePrescribedClass` | boolean |  | Independent Alberta CCA transition sourceWasSeparatePrescribedClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].transferAt` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.classTransfers[].transferDate` | string |  | Independent Alberta CCA transition transferDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.controlOpeningUccReconciled` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases` | array |  | Complete independently evidenced federal and Quebec property capital-cost histories for first Alberta entry. The backend weights gross cost independently of UCC and computes deemed prior CCA; re-entry reconstruction has priority and is never replaced by this weighting. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBasesComplete` | boolean |  | Explicit completeness review of the entry property capital-cost roster. Property edits clear this confirmation and dependent CCA review. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].bookCapitalCostAtStart` | object |  | Independent Alberta CCA transition bookCapitalCostAtStart. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].federalCapitalCost` | object |  | Independent Alberta CCA transition federalCapitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].federalCapitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].federalCapitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].federalCapitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].poolPropertyId` | string |  | Independent Alberta CCA transition poolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].quebecCapitalCost` | object |  | Independent Alberta CCA transition quebecCapitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].quebecCapitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].quebecCapitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].quebecCapitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost` | object |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.confirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.evidenceRef` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years` | array |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.yearsComplete` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].additions` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].additions.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].additions.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].additions.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].confirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].evidenceRef` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].federalTreatmentConsistentConfirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].periodEnd` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].periodStart` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].reductions` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].reductions.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].reductions.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.entryPropertyBases[].reentryCapitalCost.years[].reductions.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases` | array |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBasesComplete` | boolean |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].bookCapitalCostAtStart` | object |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].ccaClass` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].confirmed` | boolean |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].continuousOwnershipConfirmed` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].depreciableBeforeChange` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].evidenceRef` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].fairMarketValue` | object |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].fairMarketValue.amount` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].fairMarketValue.confirmed` | boolean |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].fairMarketValue.evidenceRef` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].originalAcquisitionDate` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].poolPropertyId` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].previousReg1100ExceptionApplied` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.exemptPropertyBases[].propertyId` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.firstTaxationYear` | boolean |  | Explicit first-taxation-year fact for the corporation; Alberta entry is not automatically a first year. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.immediateExpensingAgreement` | object |  | Retained legacy agreement capture. Remove it for an immediate-expensing year: the completed canonical federal S8 agreement supplies the allocation and designated deduction under ACTA s.8(2.011). Independent Alberta pools and normal CCA elections remain separate. A wholly post-2023 year has no current DIEP or federal line 125. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.isCcpc` | boolean |  | Explicit CCPC status for the independent Alberta CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.leasingIncomeCeiling` | object |  | Separate Alberta leasing-income ceiling evidence for the adopted CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.openingPools` | array |  | Separately evidenced Alberta opening UCC pools using the existing CCA pool-row vocabulary. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.openingPools[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.ordinaryContinuityConfirmed` | boolean |  | Confirms no Alberta entry/re-entry, reorganization, control or currency transition requiring an unimplemented provincial transition computation. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.overrides` | object |  | Independent Alberta CCA elections by the producer pool key; the existing statutory ceilings still apply. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases` | array |  | Reviewed receiving-year inputs offered by the computed Alberta CCA carryforward. Opening pools retain the preceding stub closing; the reacquired net UCC enters current column5. Receiving-year property facts retain precedence. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].bookCapitalCostAtStart` | object |  | Independent Alberta CCA transition bookCapitalCostAtStart. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].capitalCostBefore` | string |  | Independent Alberta CCA transition capitalCostBefore. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].classClosingBeforeReacquisition` | string |  | Independent Alberta CCA transition classClosingBeforeReacquisition. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].controlDate` | string |  | Independent Alberta CCA transition controlDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].deemedProceeds` | string |  | Independent Alberta CCA transition deemedProceeds. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].originalAcquisitionAt` | string |  | Original acquisition instant including UTC offset, retained separately from the control reacquisition. Required when both acquisitions share the intraday control date; original ownership must precede control. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].originalAcquisitionDate` | string |  | Independent Alberta CCA transition originalAcquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].poolPropertyId` | string |  | Independent Alberta CCA transition poolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].previousReg1100ExceptionApplied` | boolean \| null |  | Independent Alberta CCA transition previousReg1100ExceptionApplied. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postControlPropertyBases[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments` | object |  | Complete post-disposition assistance and legally required repayments for S8 221/222. Signed UCC adjustments and Reg 1100(2) elements F/G are computed; no keyed adjustment total is accepted. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.complete` | boolean | strict | Confirm the complete disposed-property transaction roster. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.confirmed` | boolean | strict | Confirm the legal treatment, dates, ownership and assistance reconciliation after reviewing source evidence. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.evidenceRef` | string | strict | Supporting complete post-disposition reconciliation reference. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools` | array |  | Unique existing class/property pools with explicit openings, including zero. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[]` | object |  | One identified pool and its post-disposition records. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].assetCount` | number | strict | Actual remaining tax-property count, including deemed ownership, for terminal-loss and continuing-pool treatment. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].businessCeased` | boolean \| null | strict | Actual Class 14.1 business-cessation conclusion when no tax properties remain; null when irrelevant. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].ccaClass` | string | strict | Canonical CCA class identity. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].propertyId` | string | strict | Canonical separate-pool property ID, or empty text for an ordinary common pool. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions` | array |  | Unique source events. A current-year original disposition must also be recorded in W08; this packet does not replace its proceeds. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[]` | object |  | One assistance receipt/entitlement or legally required repayment after the identified disposition. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].afterDispositionConfirmed` | boolean | strict | Confirm the transaction occurred after disposition, including actual order where both dates are the same. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].amount` | string | strict | Exact nonnegative decimal text in the return reporting currency. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].assistanceId` | string | strict | Stable property-specific assistance allocation identity for the repayment ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].capitalCostTreatmentConfirmed` | boolean | strict | Confirm the amount would have reduced/increased capital cost under the selected provision if received/repaid before disposition. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].disposedPropertyId` | string | strict | Stable original disposed-property identity. A Class 10.1 vehicle must match its separate-pool ID. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].dispositionDate` | string | strict | Actual original property disposition date. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].elementFExclusion` | string | strict | Original-property Reg 1100(2) F(b) treatment: none, exempt class, vessel, listed Class 10/12 paragraph, specified leasing, s.16.1, or deemed available-for-use exclusion. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].evidenceRef` | string | strict | Source notice, agreement, entitlement and payment reference. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].id` | string | strict | Unique event identity; one event cannot be applied twice. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].kind` | string | strict | Assistance or repayment, kept separate for printed 221/222 and first-year allowance arithmetic. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].legallyRequired` | boolean | strict | Confirm the repayment was made pursuant to its legal obligation; voluntary payments do not establish line 222. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].originalAssistance` | string | strict | Exact original eligible assistance allocated to this disposed property. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].priorRepayments` | string | strict | Exact cumulative repayments before this taxation year. Current rows are accumulated once by assistance identity. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].statutoryBasis` | string | strict | Assistance: 13(7.1)(f); repayment: 13(7.1)(d) or 13(7.4)(b), as used by ITA 13(21) elements C/D/J. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].transactionDate` | string | strict | Current-period receipt/entitlement or actual repayment date. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionAdjustments.pools[].transactions[].wasDIEP` | boolean | strict | Whether the disposed property was ever designated immediate-expensing property; controls the Class 10.1 recapture exception. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts` | object |  | Closed partial-draft capture for the adopted producer post-disposition assistance/repayment computation under13(21) C/D/J and Reg1100(2) F/G. When present it replaces the retained complete packet, including when incomplete; no fallback to a stale reviewed claim. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.complete` | boolean |  | Independent Alberta CCA transition complete. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools` | array |  | Independent Alberta CCA transition pools. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].assetCount` | number |  | Independent Alberta CCA transition assetCount. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].businessCeased` | boolean \| null |  | Independent Alberta CCA transition businessCeased. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions` | array |  | Independent Alberta CCA transition transactions. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].afterDispositionConfirmed` | boolean |  | Independent Alberta CCA transition afterDispositionConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].amount` | string |  | Independent Alberta CCA transition amount. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].assistanceId` | string |  | Independent Alberta CCA transition assistanceId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].capitalCostTreatmentConfirmed` | boolean |  | Independent Alberta CCA transition capitalCostTreatmentConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].disposedPropertyId` | string |  | Independent Alberta CCA transition disposedPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].dispositionDate` | string |  | Independent Alberta CCA transition dispositionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].elementFExclusion` | string |  | Independent Alberta CCA transition elementFExclusion. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].id` | string |  | Independent Alberta CCA transition id. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].kind` | string |  | Independent Alberta CCA transition kind. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].legallyRequired` | boolean |  | Independent Alberta CCA transition legallyRequired. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].originalAssistance` | string |  | Independent Alberta CCA transition originalAssistance. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].priorRepayments` | string |  | Independent Alberta CCA transition priorRepayments. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].statutoryBasis` | string |  | Independent Alberta CCA transition statutoryBasis. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].transactionDate` | string |  | Independent Alberta CCA transition transactionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.postDispositionFacts.pools[].transactions[].wasDIEP` | boolean |  | Independent Alberta CCA transition wasDIEP. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers` | array |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgersComplete` | boolean |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].ccaClass` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].confirmed` | boolean |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].evidenceRef` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].predecessorId` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger` | object |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears` | array |  | Every actual contiguous following source taxation year, with independent native/restated deduction choices when that year closes. Carry the already restated property costs and UCC into the next year without translating them again. ITA261(16)/(17). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourcePoolPropertyId` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.predecessorCurrencyLedgers[].sourceReportingCurrency` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.priorTaxationYearEnds` | array |  | Actual prior taxation-year history required by the adopted CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.priorTaxationYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].cca.rentalIncomeCeiling` | object |  | Separate Alberta rental-income ceiling evidence for the adopted CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.savedBuildingClasses` | object |  | Reviewed map of property IDs from the Alberta asset register to exact saved building treatment tokens (1.1, 1.2, 1.3, 1.4, 6.1 or 8.2, with an optional pool-letter suffix). At most 500 bindings. Purpose-built rental and greenhouse classes require actual acquisition/available-for-use dates, underlying Schedule II class and qualification/election facts on that property; an opening amount alone cannot classify them. |
| `abAt1Inputs.calculation.capital.partnerships[].cca.specifiedEnergyIncomeCeiling` | object |  | Separate Alberta specified-energy income ceiling evidence. |
| `abAt1Inputs.calculation.capital.partnerships[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.partnerships[].federalBusinessIncomeBeforeCca` | object |  | Legacy reviewed single federal LOSS-source comparison used only without a canonical incomeWorkpaper. An active native federal partnership income source supersedes this retained amount, including its positive/nil income proof. |
| `abAt1Inputs.calculation.capital.partnerships[].federalBusinessIncomeBeforeCca.amount` | string |  | Legacy reviewed single federal LOSS-source comparison used only without a canonical incomeWorkpaper. An active native federal partnership income source supersedes this retained amount, including its positive/nil income proof. |
| `abAt1Inputs.calculation.capital.partnerships[].federalBusinessIncomeBeforeCca.confirmed` | boolean |  | Legacy reviewed single federal LOSS-source comparison used only without a canonical incomeWorkpaper. An active native federal partnership income source supersedes this retained amount, including its positive/nil income proof. |
| `abAt1Inputs.calculation.capital.partnerships[].federalBusinessIncomeBeforeCca.evidenceRef` | string |  | Legacy reviewed single federal LOSS-source comparison used only without a canonical incomeWorkpaper. An active native federal partnership income source supersedes this retained amount, including its positive/nil income proof. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca` | object |  | Reviewed federalCca facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.adjustmentCoverage` | object |  | Existing CCA statutory-coverage review, completed for the Alberta input packet. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocBecomesOrCeasesExemptAtEvent` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocMainReasonIsToCauseProvisionToApply` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocMainReasonTargetedProvision` | string |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations` | array |  | Captured independent per-property designation facts. Application remains held until the Alberta deemed-disposition capital-gain receiver is reconciled; they are never applied through CCA alone. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].adjustedCostBase` | string |  | Separate pre-disposition adjusted cost base for the111(4)(e)(i) proceeds floor and Schedule18 gain. CCA capital cost remains separate for13(7)(f)/(111(4)(e)(iii)); bounded exact decimal text, at most80 characters. Required by the new receiver, with no assumed equality to CCA cost. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].capitalCost` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].ccaClass` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].designatedAmount` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].fmv` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].propertyId` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver` | object |  | Reviewed property identity, category, actual acquisition date and disposal-rule facts receiving the computed 111(4)(e) gain in Alberta Schedule18. The backend computes proceeds, gain, reacquired cost and UCC; no reviewed gain substitutes for it. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.acquisitionAt` | string |  | Actual property acquisition timestamp including UTC offset, required for an acquisition on an intraday control date. Must precede the reviewed control instant under ITA111(4)(e),249(4),256(9). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.acquisitionDate` | string |  | Independent Alberta CCA transition acquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.category` | string |  | Independent Alberta CCA transition category. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.description` | string |  | Independent Alberta CCA transition description. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts` | object |  | Independent Alberta CCA transition dispositionFacts. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.affiliatedPersonStopLossApplies` | boolean \| null |  | Independent Alberta CCA transition affiliatedPersonStopLossApplies. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.businessCeased` | boolean \| null |  | Independent Alberta CCA transition businessCeased. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.dispositionAcquirerReg1100_2_2_hApplies` | boolean \| null |  | Independent Alberta CCA transition dispositionAcquirerReg1100_2_2_hApplies. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.dispositionIsArmsLength` | boolean \| null |  | Independent Alberta CCA transition dispositionIsArmsLength. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.isFormerPropertyDeemedOwnedUnder13_4_3` | boolean \| null |  | Independent Alberta CCA transition isFormerPropertyDeemedOwnedUnder13_4_3. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.section13_21_1LandRelationshipExists` | boolean \| null |  | Independent Alberta CCA transition section13_21_1LandRelationshipExists. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.similarPropertyAcquiredWithin24MonthsAndStillOwned` | boolean \| null |  | Independent Alberta CCA transition similarPropertyAcquiredWithin24MonthsAndStillOwned. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.dispositionFacts.wasDIEP` | boolean \| null |  | Independent Alberta CCA transition wasDIEP. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.outlays` | object |  | Independent Alberta CCA transition outlays. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.outlays.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.outlays.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].receiver.outlays.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.aocPropertyDesignations[].subsection111_5_1WouldApply` | boolean |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.assets` | array |  | Alberta asset facts using the existing CCA asset-row vocabulary and statutory checks. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.assets[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.assistanceCapitalCostReductions` | array |  | Alberta assistance adjustments; unresolved producer cases retain their holds. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.assistanceCapitalCostReductions[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.availableForUseWorkpaper` | array |  | Alberta available-for-use facts, preserving the producer statutory checks. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.availableForUseWorkpaper[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.buildingConstructionStarts` | object |  | Actual construction or qualifying commercial-renovation start dates, keyed by the Alberta asset property ID. Required to resolve a saved purpose-built rental token: after 2024-04-15 and before 2031, with availability before 2036 (Reg.1104(2)). At most 500 entries; dates are full ISO dates, with an empty string retained only as an unanswered draft. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.class14_1Transitional` | object |  | Separate Alberta Class 14.1 transitional facts in the existing CCA vocabulary. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers` | array |  | Reviewed current-year wind-up property/class ledger. Source UCC and capital-cost history reconcile by predecessor and class; the backend allocates UCC by received capital-cost fraction and tests the364-day half-year exception. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfersComplete` | boolean |  | Explicit confirmation that every predecessor CCA class and received property has been captured. Changes clear this and dependent reviews. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentCapitalCostChanges` | object |  | Independent Alberta CCA transition currentCapitalCostChanges. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentCapitalCostChanges.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentCapitalCostChanges.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentCapitalCostChanges.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentUccChanges` | object |  | Independent Alberta CCA transition currentUccChanges. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentUccChanges.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentUccChanges.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].currentUccChanges.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].predecessorId` | string |  | Independent Alberta CCA transition predecessorId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties` | array |  | Independent Alberta CCA transition properties. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].propertiesComplete` | boolean |  | Independent Alberta CCA transition propertiesComplete. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].bookCapitalCostReceived` | object |  | Independent Alberta CCA transition bookCapitalCostReceived. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].bookCapitalCostReceived.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].bookCapitalCostReceived.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].bookCapitalCostReceived.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].capitalCost` | object |  | Independent Alberta CCA transition capitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].capitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].capitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].capitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].continuousOwnershipConfirmed` | boolean \| null |  | Independent Alberta CCA transition continuousOwnershipConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].previousReg1100ExceptionApplied` | boolean \| null |  | Independent Alberta CCA transition previousReg1100ExceptionApplied. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].properties[].sourceAcquisitionDate` | string |  | Independent Alberta CCA transition sourceAcquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceChangesPeriodStart` | string |  | First actual day covered by the source UCC and capital-cost changes. For a later transfer of the same predecessor class, this is the day after its preceding transfer. ITA88(1),248(1); the backend deducts earlier transfers once. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceClassRule` | string |  | Independent Alberta CCA transition sourceClassRule. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger` | object |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears` | array |  | Every actual contiguous following source taxation year, with independent native/restated deduction choices when that year closes. Carry the already restated property costs and UCC into the next year without translating them again. ITA261(16)/(17). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.followingYears[].targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceCurrencyLedger.targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourcePoolPropertyId` | string |  | Independent Alberta CCA transition sourcePoolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceReportingCurrency` | string |  | Independent Alberta CCA transition sourceReportingCurrency. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].sourceWasSeparatePrescribedClass` | boolean |  | Independent Alberta CCA transition sourceWasSeparatePrescribedClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].transferAt` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.classTransfers[].transferDate` | string |  | Independent Alberta CCA transition transferDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.controlOpeningUccReconciled` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases` | array |  | Complete independently evidenced federal and Quebec property capital-cost histories for first Alberta entry. The backend weights gross cost independently of UCC and computes deemed prior CCA; re-entry reconstruction has priority and is never replaced by this weighting. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBasesComplete` | boolean |  | Explicit completeness review of the entry property capital-cost roster. Property edits clear this confirmation and dependent CCA review. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].bookCapitalCostAtStart` | object |  | Independent Alberta CCA transition bookCapitalCostAtStart. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].federalCapitalCost` | object |  | Independent Alberta CCA transition federalCapitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].federalCapitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].federalCapitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].federalCapitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].poolPropertyId` | string |  | Independent Alberta CCA transition poolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].quebecCapitalCost` | object |  | Independent Alberta CCA transition quebecCapitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].quebecCapitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].quebecCapitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].quebecCapitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost` | object |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.confirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.evidenceRef` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years` | array |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.yearsComplete` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].additions` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].additions.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].additions.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].additions.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].confirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].evidenceRef` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].federalTreatmentConsistentConfirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].periodEnd` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].periodStart` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].reductions` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].reductions.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].reductions.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.entryPropertyBases[].reentryCapitalCost.years[].reductions.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases` | array |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBasesComplete` | boolean |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].bookCapitalCostAtStart` | object |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].ccaClass` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].confirmed` | boolean |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].continuousOwnershipConfirmed` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].depreciableBeforeChange` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].evidenceRef` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].fairMarketValue` | object |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].fairMarketValue.amount` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].fairMarketValue.confirmed` | boolean |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].fairMarketValue.evidenceRef` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].originalAcquisitionDate` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].poolPropertyId` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].previousReg1100ExceptionApplied` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.exemptPropertyBases[].propertyId` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.firstTaxationYear` | boolean |  | Explicit first-taxation-year fact for the corporation; Alberta entry is not automatically a first year. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.immediateExpensingAgreement` | object |  | Retained legacy agreement capture. Remove it for an immediate-expensing year: the completed canonical federal S8 agreement supplies the allocation and designated deduction under ACTA s.8(2.011). Independent Alberta pools and normal CCA elections remain separate. A wholly post-2023 year has no current DIEP or federal line 125. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.isCcpc` | boolean |  | Explicit CCPC status for the independent Alberta CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.leasingIncomeCeiling` | object |  | Separate Alberta leasing-income ceiling evidence for the adopted CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.openingPools` | array |  | Separately evidenced Alberta opening UCC pools using the existing CCA pool-row vocabulary. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.openingPools[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.ordinaryContinuityConfirmed` | boolean |  | Confirms no Alberta entry/re-entry, reorganization, control or currency transition requiring an unimplemented provincial transition computation. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.overrides` | object |  | Independent Alberta CCA elections by the producer pool key; the existing statutory ceilings still apply. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases` | array |  | Reviewed receiving-year inputs offered by the computed Alberta CCA carryforward. Opening pools retain the preceding stub closing; the reacquired net UCC enters current column5. Receiving-year property facts retain precedence. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].bookCapitalCostAtStart` | object |  | Independent Alberta CCA transition bookCapitalCostAtStart. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].capitalCostBefore` | string |  | Independent Alberta CCA transition capitalCostBefore. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].classClosingBeforeReacquisition` | string |  | Independent Alberta CCA transition classClosingBeforeReacquisition. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].controlDate` | string |  | Independent Alberta CCA transition controlDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].deemedProceeds` | string |  | Independent Alberta CCA transition deemedProceeds. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].originalAcquisitionAt` | string |  | Original acquisition instant including UTC offset, retained separately from the control reacquisition. Required when both acquisitions share the intraday control date; original ownership must precede control. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].originalAcquisitionDate` | string |  | Independent Alberta CCA transition originalAcquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].poolPropertyId` | string |  | Independent Alberta CCA transition poolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].previousReg1100ExceptionApplied` | boolean \| null |  | Independent Alberta CCA transition previousReg1100ExceptionApplied. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postControlPropertyBases[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments` | object |  | Complete post-disposition assistance and legally required repayments for S8 221/222. Signed UCC adjustments and Reg 1100(2) elements F/G are computed; no keyed adjustment total is accepted. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.complete` | boolean | strict | Confirm the complete disposed-property transaction roster. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.confirmed` | boolean | strict | Confirm the legal treatment, dates, ownership and assistance reconciliation after reviewing source evidence. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.evidenceRef` | string | strict | Supporting complete post-disposition reconciliation reference. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools` | array |  | Unique existing class/property pools with explicit openings, including zero. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[]` | object |  | One identified pool and its post-disposition records. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].assetCount` | number | strict | Actual remaining tax-property count, including deemed ownership, for terminal-loss and continuing-pool treatment. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].businessCeased` | boolean \| null | strict | Actual Class 14.1 business-cessation conclusion when no tax properties remain; null when irrelevant. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].ccaClass` | string | strict | Canonical CCA class identity. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].propertyId` | string | strict | Canonical separate-pool property ID, or empty text for an ordinary common pool. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions` | array |  | Unique source events. A current-year original disposition must also be recorded in W08; this packet does not replace its proceeds. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[]` | object |  | One assistance receipt/entitlement or legally required repayment after the identified disposition. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].afterDispositionConfirmed` | boolean | strict | Confirm the transaction occurred after disposition, including actual order where both dates are the same. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].amount` | string | strict | Exact nonnegative decimal text in the return reporting currency. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].assistanceId` | string | strict | Stable property-specific assistance allocation identity for the repayment ledger. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].capitalCostTreatmentConfirmed` | boolean | strict | Confirm the amount would have reduced/increased capital cost under the selected provision if received/repaid before disposition. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].disposedPropertyId` | string | strict | Stable original disposed-property identity. A Class 10.1 vehicle must match its separate-pool ID. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].dispositionDate` | string | strict | Actual original property disposition date. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].elementFExclusion` | string | strict | Original-property Reg 1100(2) F(b) treatment: none, exempt class, vessel, listed Class 10/12 paragraph, specified leasing, s.16.1, or deemed available-for-use exclusion. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].evidenceRef` | string | strict | Source notice, agreement, entitlement and payment reference. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].id` | string | strict | Unique event identity; one event cannot be applied twice. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].kind` | string | strict | Assistance or repayment, kept separate for printed 221/222 and first-year allowance arithmetic. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].legallyRequired` | boolean | strict | Confirm the repayment was made pursuant to its legal obligation; voluntary payments do not establish line 222. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].originalAssistance` | string | strict | Exact original eligible assistance allocated to this disposed property. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].priorRepayments` | string | strict | Exact cumulative repayments before this taxation year. Current rows are accumulated once by assistance identity. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].statutoryBasis` | string | strict | Assistance: 13(7.1)(f); repayment: 13(7.1)(d) or 13(7.4)(b), as used by ITA 13(21) elements C/D/J. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].transactionDate` | string | strict | Current-period receipt/entitlement or actual repayment date. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionAdjustments.pools[].transactions[].wasDIEP` | boolean | strict | Whether the disposed property was ever designated immediate-expensing property; controls the Class 10.1 recapture exception. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts` | object |  | Closed partial-draft capture for the adopted producer post-disposition assistance/repayment computation under13(21) C/D/J and Reg1100(2) F/G. When present it replaces the retained complete packet, including when incomplete; no fallback to a stale reviewed claim. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.complete` | boolean |  | Independent Alberta CCA transition complete. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools` | array |  | Independent Alberta CCA transition pools. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].assetCount` | number |  | Independent Alberta CCA transition assetCount. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].businessCeased` | boolean \| null |  | Independent Alberta CCA transition businessCeased. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions` | array |  | Independent Alberta CCA transition transactions. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].afterDispositionConfirmed` | boolean |  | Independent Alberta CCA transition afterDispositionConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].amount` | string |  | Independent Alberta CCA transition amount. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].assistanceId` | string |  | Independent Alberta CCA transition assistanceId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].capitalCostTreatmentConfirmed` | boolean |  | Independent Alberta CCA transition capitalCostTreatmentConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].disposedPropertyId` | string |  | Independent Alberta CCA transition disposedPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].dispositionDate` | string |  | Independent Alberta CCA transition dispositionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].elementFExclusion` | string |  | Independent Alberta CCA transition elementFExclusion. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].id` | string |  | Independent Alberta CCA transition id. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].kind` | string |  | Independent Alberta CCA transition kind. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].legallyRequired` | boolean |  | Independent Alberta CCA transition legallyRequired. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].originalAssistance` | string |  | Independent Alberta CCA transition originalAssistance. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].priorRepayments` | string |  | Independent Alberta CCA transition priorRepayments. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].statutoryBasis` | string |  | Independent Alberta CCA transition statutoryBasis. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].transactionDate` | string |  | Independent Alberta CCA transition transactionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.postDispositionFacts.pools[].transactions[].wasDIEP` | boolean |  | Independent Alberta CCA transition wasDIEP. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers` | array |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgersComplete` | boolean |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].ccaClass` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].confirmed` | boolean |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].evidenceRef` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].predecessorId` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger` | object |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears` | array |  | Every actual contiguous following source taxation year, with independent native/restated deduction choices when that year closes. Carry the already restated property costs and UCC into the next year without translating them again. ITA261(16)/(17). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].class10_1WasDiep` | boolean \| null |  | Whether this actual source Class10.1 vehicle was ever designated immediate expensing property; required for negative source-year UCC under s.13(2). Null is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceCurrencyLedger.targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourcePoolPropertyId` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.predecessorCurrencyLedgers[].sourceReportingCurrency` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.priorTaxationYearEnds` | array |  | Actual prior taxation-year history required by the adopted CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.priorTaxationYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.rentalIncomeCeiling` | object |  | Separate Alberta rental-income ceiling evidence for the adopted CCA computation. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.savedBuildingClasses` | object |  | Reviewed map of property IDs from the Alberta asset register to exact saved building treatment tokens (1.1, 1.2, 1.3, 1.4, 6.1 or 8.2, with an optional pool-letter suffix). At most 500 bindings. Purpose-built rental and greenhouse classes require actual acquisition/available-for-use dates, underlying Schedule II class and qualification/election facts on that property; an opening amount alone cannot classify them. |
| `abAt1Inputs.calculation.capital.partnerships[].federalCca.specifiedEnergyIncomeCeiling` | object |  | Separate Alberta specified-energy income ceiling evidence. |
| `abAt1Inputs.calculation.capital.partnerships[].federalIncomeSourceRef` | string |  | Actual partnership source linkage/review for the canonical federal income producer; full source-return/period identity is required, and the reviewed federal bridge cannot override native source income. |
| `abAt1Inputs.calculation.capital.partnerships[].federalLossAccountNumber` | string |  | Exact canonical lpAccounts accountNumber, matched with this actual partnership fiscal period for the native federal s.96(2.1) computation. |
| `abAt1Inputs.calculation.capital.partnerships[].limitedPartnerForCca` | boolean \| null |  | Captured limitedPartnerForCca for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].members` | array |  | Bounded captured members roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].membersComplete` | boolean |  | Captured membersComplete for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].members[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].members[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].members[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.partnerships[].members[].isFiler` | boolean |  | Captured isFiler for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].members[].memberId` | string |  | Captured memberId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].members[].shareDenominator` | string |  | Captured shareDenominator for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].members[].shareNumerator` | string |  | Captured shareNumerator for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].partnershipId` | string |  | Captured partnershipId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions` | array |  | Bounded captured pendingAdditions roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[].acquisitionDate` | string |  | Actual ISO acquisition date of the property that is the subject of the gift. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[].amount` | string |  | Captured amount for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[].propertyId` | string |  | Captured propertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[].sourceDispositionDate` | string |  | Captured sourceDispositionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].pendingAdditions[].sourcePropertyId` | string |  | Captured sourcePropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].periodEnd` | string |  | Captured periodEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].periodStart` | string |  | Captured periodStart for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation` | object |  | Reviewed resourceAllocation facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.atRisk66_8` | string |  | Captured atRisk66_8 for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.destinationAmountsExcludePartnershipConfirmed` | boolean |  | Captured destinationAmountsExcludePartnershipConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.farmingLoss` | string |  | Captured farmingLoss for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.foreignCountryOrder` | array |  | Captured foreignCountryOrder for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.foreignCountryOrder[]` | string |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.limitedPartner66_8` | boolean \| null |  | Captured limitedPartner66_8 for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.orderFiledOrMinisterDetermined` | boolean |  | Captured orderFiledOrMinisterDetermined for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares` | array |  | Bounded captured otherShares roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherSharesComplete` | boolean |  | Captured otherSharesComplete for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares[]` | object |  |  |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares[].amount` | string |  | Captured amount for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares[].kind` | string |  | Closed choice: COGPE, CDE, CEE, CFRE, FEDE. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares[].poolId` | string |  | Captured poolId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.otherShares[].priorDenied` | string |  | Captured priorDenied for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.priorFiscalEnd` | string |  | Captured priorFiscalEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].resourceAllocation.taxCredits` | string |  | Captured taxCredits for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.partnerships[].singleBusinessPropertySourceConfirmed` | boolean |  | Reviewed single non-farming business/property loss source, including its CCA and elected inventory transactions. Separate income/loss sources must be allocated before they can be netted under ITA96(1)(c). |
| `abAt1Inputs.calculation.capital.pendingAdditions` | array |  | Bounded captured pendingAdditions roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.pendingAdditions[]` | object |  |  |
| `abAt1Inputs.calculation.capital.pendingAdditions[].acquisitionDate` | string |  | Actual ISO acquisition date of the property that is the subject of the gift. |
| `abAt1Inputs.calculation.capital.pendingAdditions[].amount` | string |  | Captured amount for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.pendingAdditions[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.pendingAdditions[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.pendingAdditions[].propertyId` | string |  | Captured propertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.pendingAdditions[].sourceDispositionDate` | string |  | Captured sourceDispositionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.pendingAdditions[].sourcePropertyId` | string |  | Captured sourcePropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties` | array |  | Complete independent Alberta property roster, at most 500 rows, including retained properties. Every disposed property identifies its matching canonical federal Schedule 6 occurrence. |
| `abAt1Inputs.calculation.capital.propertiesComplete` | boolean |  | Review that all independent Alberta property facts, including retained property and explicit empty rosters, are captured. |
| `abAt1Inputs.calculation.capital.properties[]` | object |  |  |
| `abAt1Inputs.calculation.capital.properties[].abilEligibilityConfirmed` | boolean |  | Review ordinary business investment loss eligibility, including small-business-corporation status and applicable restrictions; unsupported special rules remain held. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements` | array |  | Bounded captured acbMovements roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[]` | object |  |  |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].additions` | string |  | Captured additions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].date` | string |  | Captured date for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].effectiveAt` | string |  | Actual offset timestamp for this ACB movement. Same-day property, control, election and debt events must use their proven chronological order. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].eligibilityConfirmed` | boolean |  | Captured eligibilityConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].kind` | string |  | Closed choice: other, superficialLossAddition. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].reductions` | string |  | Captured reductions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].sourceDispositionDate` | string |  | Captured sourceDispositionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].acbMovements[].sourcePropertyId` | string |  | Captured sourcePropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].acquisitionAt` | string |  | Actual offset timestamp of this property acquisition, required to establish same-day ownership relative to settlement or control. |
| `abAt1Inputs.calculation.capital.properties[].acquisitionDate` | string |  | Actual ISO acquisition date. ABIL acquisition date must match federal Schedule 6 line 910. |
| `abAt1Inputs.calculation.capital.properties[].businessInvestmentKind` | string |  | ABIL property character: shares or debt (printed line 084). |
| `abAt1Inputs.calculation.capital.properties[].category` | string |  | Schedule 18 property category: shares, realEstate, bonds, other, personalUse, listedPersonal or abil. |
| `abAt1Inputs.calculation.capital.properties[].confirmed` | boolean |  | Affirm the current fact and its supporting evidence. Edits require fresh review; prior confirmations do not establish new facts. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis` | object |  | Independent Alberta non-depreciable property reconstruction under ITA 111(4)(c)/(d)/(e). Required for property held immediately before the captured control event; saved opening cost must reconcile to the computed result. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.confirmed` | boolean |  | Preparer confirmation of the control reconstruction and actual designation evidence. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.designatedAmount` | string |  | Amount actually designated under ITA 111(4)(e), at most 80 characters. Deemed proceeds are min(FMV, max(ACB, designation)). With no designation, a retained nonzero amount is refused. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.designationMethod` | string |  | none, priorYearReturn or prescribedForm. A designation cannot apply to a property with an accrued loss. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.eventDate` | string |  | Last shared control-event date in YYYY-MM-DD, at most 10 characters. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.evidenceRef` | string |  | Pre-control ACB, valuation, designation and intervening ledger evidence, at most 1000 characters. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.fairMarketValue` | string |  | Property FMV immediately before control, nonnegative exact decimal text, at most 80 characters. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.formFiledDate` | string |  | Actual prescribed-form filing date, YYYY-MM-DD, within 90 days after the notice under ITA 111(4)(e). |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.noticeSentDate` | string |  | Assessment or no-tax notice sent date, YYYY-MM-DD; needed for the prescribed-form 90-day deadline. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.postControlAdditions` | string |  | Intervening ACB additions between control and the current opening, exact nonnegative decimal text, at most 80 characters; nil in the year ending before control. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.postControlReductions` | string |  | Intervening ACB reductions between control and the current opening, exact nonnegative decimal text, at most 80 characters; nil in the year ending before control. |
| `abAt1Inputs.calculation.capital.properties[].controlBasis.preControlAcb` | string |  | Independent Alberta ACB immediately before control, nonnegative exact decimal text, at most 80 characters. |
| `abAt1Inputs.calculation.capital.properties[].cost` | string |  | Independent Alberta acquisition or opening property cost as nonnegative exact decimal text. An ordinary transferee election replaces acquisition cost with its Alberta agreed amount. |
| `abAt1Inputs.calculation.capital.properties[].costAdditions` | string |  | Alberta ACB additions as nonnegative exact decimal text; explicit zero is required where nil. |
| `abAt1Inputs.calculation.capital.properties[].costReductions` | string |  | Alberta ACB reductions as nonnegative exact decimal text. A resulting negative ACB remains held for its deemed-gain calculation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis` | object |  | Later depreciable-property receiver after an ITA111(4)(e) control designation. General cost and CCA cost remain separate; the actual Schedule13 disposition and complete39(1) income reconciliation are required. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.basisSource` | string |  | Actual basisSource for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.capitalCostBefore` | string |  | Exact reviewed CCA capital cost before control;13(7)(f)/111(4)(e)(iii) computes the purpose-limited subsequent CCA cost. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.ccaClass` | string |  | Actual prescribed CCA class of the same property in the independently computed Schedule13. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.controlDate` | string |  | Actual ISO control reacquisition date; must match this property holding period. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.deemedProceeds` | string |  | Exact computed111(4)(e)(i) proceeds and111(4)(e)(ii) general reacquisition cost; must reconcile to the property cost. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory` | array |  | Complete property-linked other-year or other ordinary income receipts under39(1)(a). Current recapture is calculated from Schedule13 and apportioned by disposed capital cost; an empty history does not suppress that computed exclusion. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistoryComplete` | boolean |  | Confirm the complete property income history, including evidenced nil overlap. Incomplete history holds the capital result. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[]` | object |  | Evidenced property income portion for an actual period. Current recapture receipts corroborate the computed allocation; other-year/other ordinary income portions add to the exclusion without duplicating current recapture. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[].incomeIncluded` | string |  | Exact income allocated to this property for this source period. A current recapture receipt cannot exceed the calculated capital-cost share of the actual Schedule13 class inclusion. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[].incomeKind` | string |  | Actual incomeKind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[].periodEnd` | string |  | Actual ISO end of the property income source taxation period. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[].periodStart` | string |  | Actual ISO start of the property income source taxation period. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.incomeHistory[].portionInGain` | string |  | Exact evidenced part of this property economic gain already included in that income; bounded by both the income receipt and the actual gain. Do not enter the entire class recapture as an automatic capital deduction. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.openingBasisChangesConfirmed` | boolean |  | Actual openingBasisChangesConfirmed for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.openingBasisChangesRef` | string |  | Actual openingBasisChangesRef for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.openingCcaCapitalCost` | string |  | Actual openingCcaCapitalCost for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.openingGeneralCost` | string |  | Actual openingGeneralCost for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.capital.properties[].depreciableBasis.poolPropertyId` | string |  | Actual separate-pool property identity, or empty text for an ordinary pooled class. Never substitute the property roster position. |
| `abAt1Inputs.calculation.capital.properties[].description` | string |  | Property description; for ABIL identify the small business corporation (printed line 082). |
| `abAt1Inputs.calculation.capital.properties[].disposed` | boolean \| null |  | Whether this property was disposed of this year. Unanswered does not establish a retained or disposed property. |
| `abAt1Inputs.calculation.capital.properties[].dispositionAt` | string |  | Actual offset timestamp of this sale, required to establish same-day ownership and statutory ordering. |
| `abAt1Inputs.calculation.capital.properties[].dispositionDate` | string |  | Actual ISO disposition date within this taxation period, on or after acquisition. |
| `abAt1Inputs.calculation.capital.properties[].evidenceRef` | string |  | Nonempty supporting document reference for this specific fact or roster review. |
| `abAt1Inputs.calculation.capital.properties[].federalOccurrence` | object |  | Semantic federal Schedule 6 selector: propertyId and dateOfDisposition, optionally event identity; event and date; or source workpaper, row and date. No positional selection. |
| `abAt1Inputs.calculation.capital.properties[].federalOccurrence.dateOfDisposition` | string |  | ISO date of the matching canonical federal Schedule 6 disposition. |
| `abAt1Inputs.calculation.capital.properties[].federalOccurrence.dispositionReconciliationId` | string |  | Canonical federal disposition event identity when needed to disambiguate the property/date. |
| `abAt1Inputs.calculation.capital.properties[].federalOccurrence.propertyId` | string |  | Stable target property identity; in federalOccurrence, the canonical federal Schedule 6 property identity. |
| `abAt1Inputs.calculation.capital.properties[].federalOccurrence.sourceRowKey` | string |  | Durable canonical source row key for the alternative workpaper/row/date selector. |
| `abAt1Inputs.calculation.capital.properties[].federalOccurrence.sourceWorkpaperId` | string |  | Canonical source workpaper identity for the alternative workpaper/row/date selector. |
| `abAt1Inputs.calculation.capital.properties[].giftEligibilityConfirmed` | boolean |  | Review qualification for the selected gift exclusion, including excluded-gift personal-use treatment where applicable. |
| `abAt1Inputs.calculation.capital.properties[].giftKind` | string |  | Qualifying gift category: none, securities under s.38(a.1), or ecological land under s.38(a.2). Answer none explicitly where applicable. |
| `abAt1Inputs.calculation.capital.properties[].id` | string |  | Stable unique identity within this Alberta roster; never an array position. |
| `abAt1Inputs.calculation.capital.properties[].lossRules` | array |  | Bounded captured lossRules roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[]` | object |  |  |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].affiliatedOwner` | boolean \| null |  | Captured affiliatedOwner for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].allThreePartiesRelated` | boolean \| null |  | Captured allThreePartiesRelated for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].armLengthCapitalConsideration` | boolean \| null |  | Captured armLengthCapitalConsideration for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].assistance` | string |  | Captured assistance for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].beneficiaryTransfer` | boolean \| null |  | Captured beneficiaryTransfer for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].considerationFairMarketValue` | string |  | Captured considerationFairMarketValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].costAdditions` | string |  | Captured costAdditions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].debtAcquiredForIncome` | boolean \| null |  | Captured debtAcquiredForIncome for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].disposedQuantity` | string |  | Captured disposedQuantity for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].excludedDisposition` | string |  | Closed choice: none, optionExpiry, deemedDisposition, control, section50, exemptStatus. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].exemptInterest` | string |  | Captured exemptInterest for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].heldAtWindowEnd` | boolean \| null |  | Captured heldAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].identicalProperty` | boolean \| null |  | Captured identicalProperty for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].kind` | string |  | Closed choice: replacement, debt, registeredPlan, relatedDebt, debtReplacement, controlledShares, assistedShares, exemptInterest. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].ownedQuantityAtWindowEnd` | string |  | Captured ownedQuantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].priorReductions` | string |  | Captured priorReductions for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].quantityAtWindowEnd` | string |  | Captured quantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].reacquiredQuantity` | string |  | Captured reacquiredQuantity for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].replacementAcquiredDate` | string |  | Captured replacementAcquiredDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].replacementDebtFairMarketValue` | string |  | Captured replacementDebtFairMarketValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].replacementOwnedByTaxpayer` | boolean \| null |  | Captured replacementOwnedByTaxpayer for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].replacementPropertyId` | string |  | Captured replacementPropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].rightOnlyQuantityAtWindowEnd` | string |  | Captured rightOnlyQuantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].rightToAcquireAtWindowEnd` | boolean \| null |  | Captured rightToAcquireAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].taxpayerAcquisitionDate` | string |  | Captured taxpayerAcquisitionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].lossRules[].taxpayerQuantityAtWindowEnd` | string |  | Captured taxpayerQuantityAtWindowEnd for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].outlays` | string |  | Disposition outlays as nonnegative exact decimal text; must match the identified canonical federal Schedule 6 outlays. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts` | object |  | Reviewed personalUseParts facts for the adopted Alberta statutory calculation; incomplete evidence holds the receiver. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.ordinarilyDisposedAsSet` | boolean \| null |  | Captured ordinarilyDisposedAsSet for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.retainedPart` | boolean \| null |  | Captured retainedPart for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.sameOrNonArmLengthAcquirers` | boolean \| null |  | Captured sameOrNonArmLengthAcquirers for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.setFairMarketValue` | string |  | Captured setFairMarketValue for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.wholePropertyAcb` | string |  | Captured wholePropertyAcb for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].personalUseParts.wholePropertyId` | string |  | Captured wholePropertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.properties[].personalUseTreatment` | string |  | s.46 treatment: whole, part, set or excludedGift. Part/set facts identify whole-property ACB, retained parts, related acquirers and the set valuation used to allocate the dated floor. |
| `abAt1Inputs.calculation.capital.properties[].proceeds` | string |  | Independent Alberta proceeds as nonnegative exact decimal text. A matched transferor election replaces them with its Alberta agreed amount. |
| `abAt1Inputs.calculation.capital.properties[].specialRulesApply` | boolean \| null |  | Whether adopted special loss-denial, deemed-disposition or ACB rules apply. Capture the dated lossRules, acbMovements or controlBasis facts and evidence; unanswered facts hold the receiver. |
| `abAt1Inputs.calculation.capital.reserveRulesConfirmed` | boolean |  | Review the capital-gain reserve rules and ACTA 9(3) federal matching requirement. |
| `abAt1Inputs.calculation.capital.suspendedLosses` | array |  | Bounded captured suspendedLosses roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.capital.suspendedLosses[]` | object |  |  |
| `abAt1Inputs.calculation.capital.suspendedLosses[].businessInvestmentKind` | string |  | Underlying shares or debt retained from the original suspended investment loss; it does not establish current ABIL qualification. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].category` | string |  | Closed choice: shares, realEstate, bonds, other, listedPersonal, abil. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].dispositionDate` | string |  | Captured dispositionDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].id` | string |  | Durable property, election or continuity-record identity; do not match by roster position. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].loss` | string |  | Captured loss for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].memberShareLossReduction` | object |  | Reviewed corporate member reduction under ITA112(3.1), applied after allocating the partnership share loss; explicit nil is required for shares. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].memberShareLossReduction.amount` | string |  | Exact decimal reduction, bounded by the allocated share loss. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].memberShareLossReduction.confirmed` | boolean |  | Preparer reviewed this reduction and its source. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].memberShareLossReduction.evidenceRef` | string |  | Supporting dividend and share-loss reduction evidence. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].partnershipId` | string |  | Original partnership transferor of a gross suspended loss. Release uses its current actual fiscal period and complete current member share, rather than a frozen historical fraction. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].propertyId` | string |  | Captured propertyId for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].release` | string |  | Closed choice: none, noIdenticalProperty30Days, emigration, exemptStatus, lossRestrictionEvent, section50, windUp. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].releaseConditionsConfirmed` | boolean |  | Captured releaseConditionsConfirmed for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].releaseDate` | string |  | Captured releaseDate for the independent Alberta calculation; omission is unanswered. |
| `abAt1Inputs.calculation.capital.suspendedLosses[].releaseTreatment` | string |  | Review ordinaryCapital to carry a released former investment loss to the shares/debt capital subtotal; qualifiedAbil requires a matched current qualifying property disposition. |
| `abAt1Inputs.calculation.capitalTax` | object |  | Actual other-province capital-tax liability; do not substitute the entire GIFI business-tax amount. |
| `abAt1Inputs.calculation.capitalTax.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.capitalTax.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.capitalTax.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.carrybacks` | array |  | Alberta applications by actual prior taxation year. An explicit empty list means no application requested. |
| `abAt1Inputs.calculation.carrybacks[]` | object |  |  |
| `abAt1Inputs.calculation.carrybacks[].assessmentRef` | string |  | Reference to the prior assessed return and remaining deduction capacity. |
| `abAt1Inputs.calculation.carrybacks[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.carrybacks[].grossCapitalClaim` | string |  | Gross capital loss requested for the application year. |
| `abAt1Inputs.calculation.carrybacks[].inclusionRate` | string |  | Reviewed six-place inclusion rate for the application year, distinct from the loss-year amount basis. |
| `abAt1Inputs.calculation.carrybacks[].netCapitalCapacity` | string |  | Remaining assessed taxable-capital-gain capacity in the application year. |
| `abAt1Inputs.calculation.carrybacks[].nonCapitalClaim` | string |  | Non-capital loss requested for the application year. |
| `abAt1Inputs.calculation.carrybacks[].taxableIncomeCapacity` | string |  | Remaining assessed taxable-income capacity before these combined carryback applications. |
| `abAt1Inputs.calculation.carrybacks[].yearEnd` | string |  | Actual taxation-year end to which this Alberta application relates. |
| `abAt1Inputs.calculation.cca` | object |  | Independent Alberta CCA input packet using the adopted CCA producer. No federal pool, claim or election is copied automatically. |
| `abAt1Inputs.calculation.cca.adjustmentCoverage` | object |  | Existing CCA statutory-coverage review, completed for the Alberta input packet. |
| `abAt1Inputs.calculation.cca.aocBecomesOrCeasesExemptAtEvent` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.cca.aocMainReasonIsToCauseProvisionToApply` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.cca.aocMainReasonTargetedProvision` | string |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations` | array |  | Captured independent per-property designation facts. Application remains held until the Alberta deemed-disposition capital-gain receiver is reconciled; they are never applied through CCA alone. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[]` | object |  |  |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].adjustedCostBase` | string |  | Separate pre-disposition adjusted cost base for the111(4)(e)(i) proceeds floor and Schedule18 gain. CCA capital cost remains separate for13(7)(f)/(111(4)(e)(iii)); bounded exact decimal text, at most80 characters. Required by the new receiver, with no assumed equality to CCA cost. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].capitalCost` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].ccaClass` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].designatedAmount` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].fmv` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].propertyId` | string |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver` | object |  | Reviewed property identity, category, actual acquisition date and disposal-rule facts receiving the computed 111(4)(e) gain in Alberta Schedule18. The backend computes proceeds, gain, reacquired cost and UCC; no reviewed gain substitutes for it. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.acquisitionAt` | string |  | Actual property acquisition timestamp including UTC offset, required for an acquisition on an intraday control date. Must precede the reviewed control instant under ITA111(4)(e),249(4),256(9). |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.acquisitionDate` | string |  | Independent Alberta CCA transition acquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.category` | string |  | Independent Alberta CCA transition category. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.description` | string |  | Independent Alberta CCA transition description. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts` | object |  | Independent Alberta CCA transition dispositionFacts. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.affiliatedPersonStopLossApplies` | boolean \| null |  | Independent Alberta CCA transition affiliatedPersonStopLossApplies. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.businessCeased` | boolean \| null |  | Independent Alberta CCA transition businessCeased. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.dispositionAcquirerReg1100_2_2_hApplies` | boolean \| null |  | Independent Alberta CCA transition dispositionAcquirerReg1100_2_2_hApplies. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.dispositionIsArmsLength` | boolean \| null |  | Independent Alberta CCA transition dispositionIsArmsLength. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.isFormerPropertyDeemedOwnedUnder13_4_3` | boolean \| null |  | Independent Alberta CCA transition isFormerPropertyDeemedOwnedUnder13_4_3. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.section13_21_1LandRelationshipExists` | boolean \| null |  | Independent Alberta CCA transition section13_21_1LandRelationshipExists. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.similarPropertyAcquiredWithin24MonthsAndStillOwned` | boolean \| null |  | Independent Alberta CCA transition similarPropertyAcquiredWithin24MonthsAndStillOwned. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.dispositionFacts.wasDIEP` | boolean \| null |  | Independent Alberta CCA transition wasDIEP. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.outlays` | object |  | Independent Alberta CCA transition outlays. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.outlays.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.outlays.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].receiver.outlays.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.aocPropertyDesignations[].subsection111_5_1WouldApply` | boolean |  | Independent Alberta per-property ITA 111(4)(e) designation, in the adopted Schedule 8 vocabulary; the class and property identity must reconcile and amounts use exact decimal text. |
| `abAt1Inputs.calculation.cca.assets` | array |  | Alberta asset facts using the existing CCA asset-row vocabulary and statutory checks. |
| `abAt1Inputs.calculation.cca.assets[]` | object |  |  |
| `abAt1Inputs.calculation.cca.assistanceCapitalCostReductions` | array |  | Alberta assistance adjustments; unresolved producer cases retain their holds. |
| `abAt1Inputs.calculation.cca.assistanceCapitalCostReductions[]` | object |  |  |
| `abAt1Inputs.calculation.cca.availableForUseWorkpaper` | array |  | Alberta available-for-use facts, preserving the producer statutory checks. |
| `abAt1Inputs.calculation.cca.availableForUseWorkpaper[]` | object |  |  |
| `abAt1Inputs.calculation.cca.buildingConstructionStarts` | object |  | Actual construction or qualifying commercial-renovation start dates, keyed by the Alberta asset property ID. Required to resolve a saved purpose-built rental token: after 2024-04-15 and before 2031, with availability before 2036 (Reg.1104(2)). At most 500 entries; dates are full ISO dates, with an empty string retained only as an unanswered draft. |
| `abAt1Inputs.calculation.cca.class14_1Transitional` | object |  | Separate Alberta Class 14.1 transitional facts in the existing CCA vocabulary. |
| `abAt1Inputs.calculation.cca.classTransfers` | array |  | Reviewed current-year wind-up property/class ledger. Source UCC and capital-cost history reconcile by predecessor and class; the backend allocates UCC by received capital-cost fraction and tests the364-day half-year exception. |
| `abAt1Inputs.calculation.cca.classTransfersComplete` | boolean |  | Explicit confirmation that every predecessor CCA class and received property has been captured. Changes clear this and dependent reviews. |
| `abAt1Inputs.calculation.cca.classTransfers[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentCapitalCostChanges` | object |  | Independent Alberta CCA transition currentCapitalCostChanges. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentCapitalCostChanges.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentCapitalCostChanges.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentCapitalCostChanges.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentUccChanges` | object |  | Reviewed net source-class UCC changes in its original reporting currency over this actual non-overlapping transfer interval. The source currency ledger independently computes receiving-currency movements; this native reconciliation amount is never translated as a scalar. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentUccChanges.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentUccChanges.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].currentUccChanges.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].predecessorId` | string |  | Independent Alberta CCA transition predecessorId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties` | array |  | Independent Alberta CCA transition properties. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].propertiesComplete` | boolean |  | Independent Alberta CCA transition propertiesComplete. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].bookCapitalCostReceived` | object |  | Independent Alberta CCA transition bookCapitalCostReceived. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].bookCapitalCostReceived.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].bookCapitalCostReceived.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].bookCapitalCostReceived.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].capitalCost` | object |  | Independent Alberta CCA transition capitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].capitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].capitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].capitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].continuousOwnershipConfirmed` | boolean \| null |  | Independent Alberta CCA transition continuousOwnershipConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].previousReg1100ExceptionApplied` | boolean \| null |  | Independent Alberta CCA transition previousReg1100ExceptionApplied. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].properties[].sourceAcquisitionDate` | string |  | Independent Alberta CCA transition sourceAcquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceChangesPeriodStart` | string |  | First actual day covered by the source UCC and capital-cost changes. For a later transfer of the same predecessor class, this is the day after its preceding transfer. ITA88(1),248(1); the backend deducts earlier transfers once. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceClassRule` | string |  | Independent Alberta CCA transition sourceClassRule. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger` | object |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.class10_1WasDiep` | boolean \| null |  | Whether the source Class10.1 passenger vehicle was ever designated immediate expensing property. Required for negative source-year UCC to distinguish actual from deemed recapture under13(2). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears` | array |  | Every actual contiguous following source taxation year, with independent native/restated deduction choices when that year closes. Carry the already restated property costs and UCC into the next year without translating them again. ITA261(16)/(17). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].class10_1WasDiep` | boolean \| null |  | Actual following source year's Class10.1 vehicle DIEP history; null remains unanswered (s.13(2)). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.followingYears[].targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceCurrencyLedger.targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourcePoolPropertyId` | string |  | Independent Alberta CCA transition sourcePoolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceReportingCurrency` | string |  | Predecessor's actual original reporting currency. Source balances, property capital costs and current native changes stay in that currency. A different receiving currency requires the independent ITA261(16)/(17) source ledger; do not translate a closing scalar at the transfer date. |
| `abAt1Inputs.calculation.cca.classTransfers[].sourceWasSeparatePrescribedClass` | boolean |  | Independent Alberta CCA transition sourceWasSeparatePrescribedClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.classTransfers[].transferAt` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.classTransfers[].transferDate` | string |  | Independent Alberta CCA transition transferDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.cca.controlOpeningUccReconciled` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.cca.entryPropertyBases` | array |  | Complete independently evidenced federal and Quebec property capital-cost histories for first Alberta entry. The backend weights gross cost independently of UCC and computes deemed prior CCA; re-entry reconstruction has priority and is never replaced by this weighting. |
| `abAt1Inputs.calculation.cca.entryPropertyBasesComplete` | boolean |  | Explicit completeness review of the entry property capital-cost roster. Property edits clear this confirmation and dependent CCA review. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].bookCapitalCostAtStart` | object |  | Independent Alberta CCA transition bookCapitalCostAtStart. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].federalCapitalCost` | object |  | Independent Alberta CCA transition federalCapitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].federalCapitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].federalCapitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].federalCapitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].poolPropertyId` | string |  | Independent Alberta CCA transition poolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].quebecCapitalCost` | object |  | Independent Alberta CCA transition quebecCapitalCost. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].quebecCapitalCost.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].quebecCapitalCost.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].quebecCapitalCost.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost` | object |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.confirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.departureCapitalCost.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.evidenceRef` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years` | array |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.yearsComplete` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[]` | object |  |  |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].additions` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].additions.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].additions.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].additions.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].confirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].evidenceRef` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].federalTreatmentConsistentConfirmed` | boolean |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].periodEnd` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].periodStart` | string |  | Separate Alberta property capital-cost reconstruction under ACTA85(4.2)/(4.202)(a). Preserve departure cost and every actual contiguous intervening taxation year, consistent federal treatment and source review; CCA deductions belong to the separate UCC ledger. |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].reductions` | object |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].reductions.amount` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].reductions.confirmed` | boolean |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.entryPropertyBases[].reentryCapitalCost.years[].reductions.evidenceRef` | string |  | Reviewed gross property capital-cost source: departure cost, capital additions, or disposed/statutory cost reductions. Exact decimal text, independent of UCC claims; evidence and confirmation are required. ACTA85(4.2). |
| `abAt1Inputs.calculation.cca.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases` | array |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBasesComplete` | boolean |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].bookCapitalCostAtStart` | object |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].ccaClass` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].confirmed` | boolean |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].continuousOwnershipConfirmed` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].depreciableBeforeChange` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].evidenceRef` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].fairMarketValue` | object |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].fairMarketValue.amount` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].fairMarketValue.confirmed` | boolean |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].fairMarketValue.evidenceRef` | string |  | Reviewed status-change property valuation or separate retained book cost. Exact decimal text with source evidence; ACTA35(3)(c) determines the new tax cost independently of book cost. Missing or unreviewed facts hold the receiver. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].originalAcquisitionDate` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].poolPropertyId` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].previousReg1100ExceptionApplied` | boolean \| null |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.exemptPropertyBases[].propertyId` | string |  | Ordinary ACTA35(3)(c) status-change depreciable-property receiver. Each pre-change owned property is reacquired at FMV, with no control-designation prior-CCA fiction. Reg1100(2.21)/(2.2) separately tests the half-year exception. Complete source roster and preparer review required; Crown35(5) continuity is separate. |
| `abAt1Inputs.calculation.cca.firstTaxationYear` | boolean |  | Explicit first-taxation-year fact for the corporation; Alberta entry is not automatically a first year. |
| `abAt1Inputs.calculation.cca.immediateExpensingAgreement` | object |  | Retained legacy agreement capture. Remove it for an immediate-expensing year: the completed canonical federal S8 agreement supplies the allocation and designated deduction under ACTA s.8(2.011). Independent Alberta pools and normal CCA elections remain separate. A wholly post-2023 year has no current DIEP or federal line 125. |
| `abAt1Inputs.calculation.cca.isCcpc` | boolean |  | Explicit CCPC status for the independent Alberta CCA computation. |
| `abAt1Inputs.calculation.cca.leasingIncomeCeiling` | object |  | Separate Alberta leasing-income ceiling evidence for the adopted CCA computation. |
| `abAt1Inputs.calculation.cca.openingPools` | array |  | Separately evidenced Alberta opening UCC pools using the existing CCA pool-row vocabulary. |
| `abAt1Inputs.calculation.cca.openingPools[]` | object |  |  |
| `abAt1Inputs.calculation.cca.ordinaryContinuityConfirmed` | boolean |  | Confirms no Alberta entry/re-entry, reorganization, control or currency transition requiring an unimplemented provincial transition computation. |
| `abAt1Inputs.calculation.cca.overrides` | object |  | Independent Alberta CCA elections by the producer pool key; the existing statutory ceilings still apply. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases` | array |  | Reviewed receiving-year inputs offered by the computed Alberta CCA carryforward. Opening pools retain the preceding stub closing; the reacquired net UCC enters current column5. Receiving-year property facts retain precedence. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[]` | object |  |  |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].bookCapitalCostAtStart` | object |  | Independent Alberta CCA transition bookCapitalCostAtStart. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].bookCapitalCostAtStart.amount` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].bookCapitalCostAtStart.confirmed` | boolean |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].bookCapitalCostAtStart.evidenceRef` | string |  | Reviewed exact CCA source operand; amounts use bounded decimal text, evidence and confirmation. Current class changes may be signed; received tax capital cost cannot be negative. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].capitalCostBefore` | string |  | Independent Alberta CCA transition capitalCostBefore. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].classClosingBeforeReacquisition` | string |  | Independent Alberta CCA transition classClosingBeforeReacquisition. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].controlDate` | string |  | Independent Alberta CCA transition controlDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].deemedProceeds` | string |  | Independent Alberta CCA transition deemedProceeds. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].originalAcquisitionAt` | string |  | Original acquisition instant including UTC offset, retained separately from the control reacquisition. Required when both acquisitions share the intraday control date; original ownership must precede control. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].originalAcquisitionDate` | string |  | Independent Alberta CCA transition originalAcquisitionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].poolPropertyId` | string |  | Independent Alberta CCA transition poolPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].previousReg1100ExceptionApplied` | boolean \| null |  | Independent Alberta CCA transition previousReg1100ExceptionApplied. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postControlPropertyBases[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments` | object |  | Complete post-disposition assistance and legally required repayments for S8 221/222. Signed UCC adjustments and Reg 1100(2) elements F/G are computed; no keyed adjustment total is accepted. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.complete` | boolean | strict | Confirm the complete disposed-property transaction roster. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.confirmed` | boolean | strict | Confirm the legal treatment, dates, ownership and assistance reconciliation after reviewing source evidence. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.evidenceRef` | string | strict | Supporting complete post-disposition reconciliation reference. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools` | array |  | Unique existing class/property pools with explicit openings, including zero. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[]` | object |  | One identified pool and its post-disposition records. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].assetCount` | number | strict | Actual remaining tax-property count, including deemed ownership, for terminal-loss and continuing-pool treatment. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].businessCeased` | boolean \| null | strict | Actual Class 14.1 business-cessation conclusion when no tax properties remain; null when irrelevant. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].ccaClass` | string | strict | Canonical CCA class identity. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].propertyId` | string | strict | Canonical separate-pool property ID, or empty text for an ordinary common pool. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions` | array |  | Unique source events. A current-year original disposition must also be recorded in W08; this packet does not replace its proceeds. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[]` | object |  | One assistance receipt/entitlement or legally required repayment after the identified disposition. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].afterDispositionConfirmed` | boolean | strict | Confirm the transaction occurred after disposition, including actual order where both dates are the same. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].amount` | string | strict | Exact nonnegative decimal text in the return reporting currency. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].assistanceId` | string | strict | Stable property-specific assistance allocation identity for the repayment ledger. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].capitalCostTreatmentConfirmed` | boolean | strict | Confirm the amount would have reduced/increased capital cost under the selected provision if received/repaid before disposition. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].disposedPropertyId` | string | strict | Stable original disposed-property identity. A Class 10.1 vehicle must match its separate-pool ID. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].dispositionDate` | string | strict | Actual original property disposition date. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].elementFExclusion` | string | strict | Original-property Reg 1100(2) F(b) treatment: none, exempt class, vessel, listed Class 10/12 paragraph, specified leasing, s.16.1, or deemed available-for-use exclusion. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].evidenceRef` | string | strict | Source notice, agreement, entitlement and payment reference. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].id` | string | strict | Unique event identity; one event cannot be applied twice. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].kind` | string | strict | Assistance or repayment, kept separate for printed 221/222 and first-year allowance arithmetic. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].legallyRequired` | boolean | strict | Confirm the repayment was made pursuant to its legal obligation; voluntary payments do not establish line 222. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].originalAssistance` | string | strict | Exact original eligible assistance allocated to this disposed property. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].priorRepayments` | string | strict | Exact cumulative repayments before this taxation year. Current rows are accumulated once by assistance identity. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].statutoryBasis` | string | strict | Assistance: 13(7.1)(f); repayment: 13(7.1)(d) or 13(7.4)(b), as used by ITA 13(21) elements C/D/J. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].transactionDate` | string | strict | Current-period receipt/entitlement or actual repayment date. |
| `abAt1Inputs.calculation.cca.postDispositionAdjustments.pools[].transactions[].wasDIEP` | boolean | strict | Whether the disposed property was ever designated immediate-expensing property; controls the Class 10.1 recapture exception. |
| `abAt1Inputs.calculation.cca.postDispositionFacts` | object |  | Closed partial-draft capture for the adopted producer post-disposition assistance/repayment computation under13(21) C/D/J and Reg1100(2) F/G. When present it replaces the retained complete packet, including when incomplete; no fallback to a stale reviewed claim. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.complete` | boolean |  | Independent Alberta CCA transition complete. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.confirmed` | boolean |  | Independent Alberta CCA transition confirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools` | array |  | Independent Alberta CCA transition pools. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[]` | object |  |  |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].assetCount` | number |  | Independent Alberta CCA transition assetCount. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].businessCeased` | boolean \| null |  | Independent Alberta CCA transition businessCeased. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].ccaClass` | string |  | Independent Alberta CCA transition ccaClass. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].propertyId` | string |  | Independent Alberta CCA transition propertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions` | array |  | Independent Alberta CCA transition transactions. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[]` | object |  |  |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].afterDispositionConfirmed` | boolean |  | Independent Alberta CCA transition afterDispositionConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].amount` | string |  | Independent Alberta CCA transition amount. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].assistanceId` | string |  | Independent Alberta CCA transition assistanceId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].capitalCostTreatmentConfirmed` | boolean |  | Independent Alberta CCA transition capitalCostTreatmentConfirmed. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].disposedPropertyId` | string |  | Independent Alberta CCA transition disposedPropertyId. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].dispositionDate` | string |  | Independent Alberta CCA transition dispositionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].elementFExclusion` | string |  | Independent Alberta CCA transition elementFExclusion. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].evidenceRef` | string |  | Independent Alberta CCA transition evidenceRef. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].id` | string |  | Independent Alberta CCA transition id. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].kind` | string |  | Independent Alberta CCA transition kind. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].legallyRequired` | boolean |  | Independent Alberta CCA transition legallyRequired. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].originalAssistance` | string |  | Independent Alberta CCA transition originalAssistance. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].priorRepayments` | string |  | Independent Alberta CCA transition priorRepayments. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].statutoryBasis` | string |  | Independent Alberta CCA transition statutoryBasis. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].transactionDate` | string |  | Independent Alberta CCA transition transactionDate. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.postDispositionFacts.pools[].transactions[].wasDIEP` | boolean |  | Independent Alberta CCA transition wasDIEP. Preserve exact decimal-text amounts and actual dates; missing legal facts remain held. References are bounded to1000 characters; confirmation records preparer review, never permission to override a formula. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers` | array |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgersComplete` | boolean |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].ccaClass` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].confirmed` | boolean |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].evidenceRef` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].predecessorId` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger` | object |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.class10_1WasDiep` | boolean \| null |  | Whether the source Class10.1 passenger vehicle was ever designated immediate expensing property. Required when source-year UCC is negative: s.13(2) suppresses income recapture only for a vehicle never designated DIEP. Null is unanswered. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears` | array |  | Every actual contiguous following source taxation year, with independent native/restated deduction choices when that year closes. Carry the already restated property costs and UCC into the next year without translating them again. ITA261(16)/(17). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].boundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].class10_1WasDiep` | boolean \| null |  | Actual following source year's Class10.1 vehicle DIEP history; null remains unanswered (s.13(2)). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].deductionRestated.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.followingYears[].targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movementsComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].amount.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].confirmed` | boolean |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].day` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].evidenceRef` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].id` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].kind` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].nativeSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].occurredAt` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays` | object |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.amount` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.confirmed` | boolean |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].outlays.evidenceRef` | string |  | Original monetary source amount or disposition expenses in that same currency. Exact decimal text with source evidence and confirmation. The backend converts monetary operands before applying the native and receiving-currency property-cost caps. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].propertyId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].targetSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].transactionCurrency` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.movements[].transactionSpotRateId` | string |  | Actual dated source capital addition, capital-cost assistance or disposition. Original monetary currency is distinct from the native booked entry. Same-day source ordering needs actual timestamps with UTC offsets; ITA13(21),261,248(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative` | object |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.amount` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.confirmed` | boolean |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.openingUccNative.evidenceRef` | string |  | Reviewed native class opening or actual final-source-year CCA deduction. The receiving-currency deduction is an independently restated source-return choice, not a translated old deduction. Current source-year CCA does not reduce a wind-up cost amount before that year ends. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodEnd` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodStart` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.periodStartAt` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.propertiesComplete` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost` | object |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.amount` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.confirmed` | boolean |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].capitalCost.evidenceRef` | string |  | Each owned source property capital cost in its native reporting currency at the source-year opening. Complete roster, exact decimal text, evidence and confirmation required; ITA261(7)(b)/(h). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].confirmed` | boolean |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].evidenceRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.properties[].propertyId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.restatedSourceReturnRef` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates` | array |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].cadPerUnit` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].confirmed` | boolean |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].currency` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].day` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].evidenceRef` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].id` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].quotedDay` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.spotRates[].series` | string |  | Evidenced Bank of Canada relevant spot quote for this actual currency/day. Closest preceding published quote needs explicit evidence. No rate is inferred, fetched or supplied by default; ITA261(1). |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceCurrencyLedger.targetBoundarySpotRateId` | string |  | Independent source class currency ledger under ACTA4.01/4.02 and ITA261(7)/(12)/(16)/(17). Convert each property cost separately, class UCC once and original monetary events at their own quotes. Do not convert a closing balance or a capped native disposition reduction at a transfer-day quote. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourcePoolPropertyId` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.predecessorCurrencyLedgers[].sourceReportingCurrency` | string |  | Actual predecessor class, reporting currency and reviewed source year under ITA261(16)/(17). An actual offset transfer timestamp orders monetary source events on the transfer date. Missing source ownership, dates or currency evidence hold CCA. |
| `abAt1Inputs.calculation.cca.priorTaxationYearEnds` | array |  | Actual prior taxation-year history required by the adopted CCA computation. |
| `abAt1Inputs.calculation.cca.priorTaxationYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.cca.rentalIncomeCeiling` | object |  | Separate Alberta rental-income ceiling evidence for the adopted CCA computation. |
| `abAt1Inputs.calculation.cca.savedBuildingClasses` | object |  | Reviewed map of property IDs from the Alberta asset register to exact saved building treatment tokens (1.1, 1.2, 1.3, 1.4, 6.1 or 8.2, with an optional pool-letter suffix). At most 500 bindings. Purpose-built rental and greenhouse classes require actual acquisition/available-for-use dates, underlying Schedule II class and qualification/election facts on that property; an opening amount alone cannot classify them. |
| `abAt1Inputs.calculation.cca.specifiedEnergyIncomeCeiling` | object |  | Separate Alberta specified-energy income ceiling evidence. |
| `abAt1Inputs.calculation.components` | array |  | Alberta Schedule 12 elections, keyed by the declared Alberta line; duplicate and unknown lines are refused. |
| `abAt1Inputs.calculation.components[]` | object |  |  |
| `abAt1Inputs.calculation.components[].amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.components[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.components[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.components[].line` | string |  | Declared Alberta Schedule 12 component code. Historical 010/012 retain the pre2017 CEC deduction/income pairs; 012 also carries a 2017 transition income election. This is not an override of a computed total. |
| `abAt1Inputs.calculation.components[].openingBalancesEqual` | boolean \| null |  | Whether the Alberta opening balance equals federal. Area A omits a pair only when both balances and claims are explicitly equal. |
| `abAt1Inputs.calculation.components[].sameAsFederal` | boolean \| null |  | Explicit election that the current Alberta amount equals the canonical federal amount; an unanswered choice is never inferred. |
| `abAt1Inputs.calculation.currency` | string |  | Reporting currency of the Alberta workpaper. A federal functional-currency election requires evidenced transition capture. Elected-currency tax and CAD settlement are separate; annual-dependent conversions remain held for the unresolved prescribed noon series. |
| `abAt1Inputs.calculation.currentFarmLoss` | object |  | Reviewed current farm loss; positive amounts retain the unfinished farm-continuity hold. |
| `abAt1Inputs.calculation.currentFarmLoss.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.currentFarmLoss.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.currentFarmLoss.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.currentGrossCapitalLoss` | object |  | Reviewed current gross capital loss, not the post-inclusion net amount. |
| `abAt1Inputs.calculation.currentGrossCapitalLoss.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.currentGrossCapitalLoss.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.currentGrossCapitalLoss.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations` | object |  | Schedule 20 calculation from independent Alberta gift vintages and reviewed supporting facts. When present it feeds Schedule 12 lines 056/058 and never falls back to a reviewed component amount. |
| `abAt1Inputs.calculation.donations.acquisitionOfControlOccurred` | boolean \| null |  | Reconcile the answer to the dated control event; Alberta pre-control gift forfeiture is computed independently of federal Schedule 2 adjustments. |
| `abAt1Inputs.calculation.donations.ccaRecaptureOnGifts` | object |  | Capital cost allowance recapture in respect of charitable gifts (Schedule 20 line 036). |
| `abAt1Inputs.calculation.donations.ccaRecaptureOnGifts.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.ccaRecaptureOnGifts.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.ccaRecaptureOnGifts.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.charitableApplied` | object |  | Charitable donations the corporation claims this year (Schedule 20 line 016), not exceeding the lesser of the amount available, the Area B maximum and Alberta net income. Applied oldest first. |
| `abAt1Inputs.calculation.donations.charitableApplied.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.charitableApplied.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.charitableApplied.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.creditUnionAddback` | object |  | Credit-union payments pursuant to allocations in proportion to borrowing and bonus interest deducted in arriving at Schedule 12 line 054, added back only for the Schedule 20 line 030 base. |
| `abAt1Inputs.calculation.donations.creditUnionAddback.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.creditUnionAddback.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.creditUnionAddback.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.currentCanadaProvinceGifts` | object |  | Optional reviewed reconciliation assertion against canonical federal Schedule 2 current gifts. Current ecological gifts use box 520; the separate Crown category is retired for 2016 onward. |
| `abAt1Inputs.calculation.donations.currentCanadaProvinceGifts.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.currentCanadaProvinceGifts.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.currentCanadaProvinceGifts.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.currentCharitableDonations` | object |  | Optional reviewed reconciliation assertion against canonical federal Schedule 2 current gifts. Current ecological gifts use box 520; the separate Crown category is retired for 2016 onward. |
| `abAt1Inputs.calculation.donations.currentCharitableDonations.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.currentCharitableDonations.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.currentCharitableDonations.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.currentCulturalPropertyGifts` | object |  | Optional reviewed reconciliation assertion against canonical federal Schedule 2 current gifts. Current ecological gifts use box 520; the separate Crown category is retired for 2016 onward. |
| `abAt1Inputs.calculation.donations.currentCulturalPropertyGifts.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.currentCulturalPropertyGifts.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.currentCulturalPropertyGifts.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.currentEcologicalLandGifts` | object |  | Optional reviewed reconciliation assertion against canonical federal Schedule 2 current gifts. Current ecological gifts use box 520; the separate Crown category is retired for 2016 onward. |
| `abAt1Inputs.calculation.donations.currentEcologicalLandGifts.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.currentEcologicalLandGifts.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.currentEcologicalLandGifts.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.currentGiftProperties` | array |  | Complete gift-property roster for ITA 110.1(1.2)(a)/(b); computes control denials at Schedule 20 lines 013/073 from acquired-property, expectation and donee facts, reconciled by category to federal Schedule 2. |
| `abAt1Inputs.calculation.donations.currentGiftPropertiesComplete` | boolean |  | Preparer confirms the current gift-property roster is complete; edits clear this confirmation and dependent claims. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[]` | object |  |  |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements` | array |  | Bounded captured arrangements roster; amounts remain decimal text, supported by evidence and preparer confirmation. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[]` | object |  |  |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].acquiredByControlledCorporation` | boolean \| null |  | Whether the particular corporation whose control changed acquired this gift property. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].acquisitionAt` | string |  | Actual offset-aware acquisition timestamp when the acquisition and intraday control event share a date. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].acquisitionDate` | string |  | Actual ISO acquisition date of the property that is the subject of the gift. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].controlAcquirerIsDonee` | boolean \| null |  | Whether the control acquirer was the qualified donee receiving this gift; ITA 110.1(1.2)(b) excepts that acquirer. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].eventDate` | string |  | Actual ISO control-event date matching the dated control history. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].expectedControlAcquisition` | boolean \| null |  | Whether the property-acquisition arrangement expected that control acquisition. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].arrangements[].expectedGift` | boolean \| null |  | Whether the same property-acquisition arrangement expected that gift. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].category` | string |  | Closed choice: charitable, canadaProvince, culturalProperty, ecologicalLand, medicine. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].eligibleAmount` | string |  | Eligible gift amount as exact nonnegative decimal text; the complete current-property roster must reconcile by category to canonical federal Schedule 2. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].giftAt` | string |  | Offset-aware actual gift timestamp required on an intraday control date. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].giftDate` | string |  | Actual ISO gift date, used with control timing to compute ITA 110.1(1.2) denial. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].id` | string |  | Unique gift-property identity within the current and opening gift rosters. |
| `abAt1Inputs.calculation.donations.currentGiftProperties[].predecessorId` | string |  | Predecessor identity joining this gift to the inherited control history, where applicable. |
| `abAt1Inputs.calculation.donations.deemedNonQualifyingGains` | object |  | Taxable capital gain in respect of deemed gifts of non-qualifying securities under ITA 40(1.01) (Schedule 20 line 034). |
| `abAt1Inputs.calculation.donations.deemedNonQualifyingGains.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.deemedNonQualifyingGains.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.deemedNonQualifyingGains.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.deniedGiftLimitAdditionsExcludedConfirmed` | boolean |  | Preparer confirms reviewed Schedule 20 Area B gain/recapture amounts exclude denied current charitable gifts under ITA 110.1(1)(a)/(1.2); required when such a gift is denied, and cleared when the gift roster changes. |
| `abAt1Inputs.calculation.donations.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.giftCapitalCost` | object |  | Capital cost of the gifted depreciable property (Schedule 20 line 040). |
| `abAt1Inputs.calculation.donations.giftCapitalCost.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.giftCapitalCost.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.giftCapitalCost.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.giftProceedsLessOutlays` | object |  | Proceeds of disposition less outlays and expenses for charitable gifts of depreciable property (Schedule 20 line 038). |
| `abAt1Inputs.calculation.donations.giftProceedsLessOutlays.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.giftProceedsLessOutlays.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.giftProceedsLessOutlays.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.giftedCapitalGains` | object |  | Taxable capital gains arising in respect of gifts of capital property (Schedule 20 line 032). |
| `abAt1Inputs.calculation.donations.giftedCapitalGains.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.giftedCapitalGains.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.giftedCapitalGains.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.isCreditUnion` | boolean \| null |  | Whether the corporation is a credit union, so the line 030 limit uses income before borrowing-proportional payments and bonus interest. |
| `abAt1Inputs.calculation.donations.medicineApplied` | object |  | Reviewed additional medicine-gift deduction from the unexpired five-year pool. AT20 Jan-15 and TRA11740 Rev.2026-06 page2 carry differing Alberta/federal claims through Schedule12 lines040/041 with an explanation at048. |
| `abAt1Inputs.calculation.donations.medicineApplied.amount` | string |  | Exact decimal-text medicine additional-deduction election, limited to its unexpired pool. |
| `abAt1Inputs.calculation.donations.medicineApplied.confirmed` | boolean |  | Preparer confirmation of the medicine additional-deduction election. |
| `abAt1Inputs.calculation.donations.medicineApplied.evidenceRef` | string |  | Assessed medicine pool and supporting additional-deduction claim reference. |
| `abAt1Inputs.calculation.donations.otherGiftsApplied` | object |  | Other gifts the corporation claims this year (Schedule 20 line 076), not exceeding the lesser of the amount available and Alberta net income less charitable donations applied. Applied oldest first. |
| `abAt1Inputs.calculation.donations.otherGiftsApplied.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.donations.otherGiftsApplied.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.otherGiftsApplied.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.vintages` | array |  | Independent Alberta opening gifts by identity, category and year of origin; never copied implicitly from federal Schedule 2 balances. |
| `abAt1Inputs.calculation.donations.vintagesComplete` | boolean \| null |  | Confirms the entire Alberta opening donation and gift roster by year of origin has been entered. |
| `abAt1Inputs.calculation.donations.vintages[]` | object |  |  |
| `abAt1Inputs.calculation.donations.vintages[].aocAdjustment` | string |  | Legacy or reconciliation assertion. With dated control facts, forfeiture is computed; an omitted assertion is not an omitted statutory calculation, and conflicting retained amounts hold. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements` | array |  | Retained property-acquisition arrangement facts by actual control event for ITA 110.1(1.2)(b). |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[]` | object |  |  |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].acquiredByControlledCorporation` | boolean \| null |  | Whether the particular corporation whose control changed acquired this gift property. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].acquisitionAt` | string |  | Actual offset-aware acquisition timestamp when the acquisition and intraday control event share a date. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].acquisitionDate` | string |  | Actual ISO acquisition date of the property that is the subject of the gift. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].confirmed` | boolean |  | Preparer review of these captured facts; changes clear this confirmation. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].controlAcquirerIsDonee` | boolean \| null |  | Whether the control acquirer was the qualified donee receiving this gift; ITA 110.1(1.2)(b) excepts that acquirer. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].eventDate` | string |  | Actual ISO control-event date matching the dated control history. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].evidenceRef` | string |  | Supporting source-document reference; required together with confirmed=true before use. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].expectedControlAcquisition` | boolean \| null |  | Whether the property-acquisition arrangement expected that control acquisition. |
| `abAt1Inputs.calculation.donations.vintages[].arrangements[].expectedGift` | boolean \| null |  | Whether the same property-acquisition arrangement expected that gift. |
| `abAt1Inputs.calculation.donations.vintages[].category` | string |  | Charitable donations, gifts to Canada or a province, certified cultural property, certified ecologically sensitive land, or qualifying medicine gifts made before March 22, 2017. |
| `abAt1Inputs.calculation.donations.vintages[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.donations.vintages[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.donations.vintages[].expiryYearEnd` | string |  | Optional retained expiry for reconciliation. Actual taxation-year history controls computed expiry; conflicting saved expiry is refused. |
| `abAt1Inputs.calculation.donations.vintages[].giftAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.donations.vintages[].giftDate` | string |  | Ecological gift date, required to distinguish five years from ten years for gifts made after February 10, 2014. |
| `abAt1Inputs.calculation.donations.vintages[].id` | string |  | Stable gift vintage identity used independently of row order. |
| `abAt1Inputs.calculation.donations.vintages[].openingBalance` | string |  | Assessed Alberta opening balance for this vintage as exact decimal text. |
| `abAt1Inputs.calculation.donations.vintages[].originYearEnd` | string |  | Taxation year end of the year the gift was made, from actual taxation years. |
| `abAt1Inputs.calculation.donations.vintages[].predecessorId` | string |  | Predecessor identity for a balance transferred on amalgamation or wind-up; required when the transferred amount is positive. |
| `abAt1Inputs.calculation.donations.vintages[].subsequentYearEnds` | array |  | Complete ordered actual taxation-year ends after this gift origin through the preceding year; at most 100. Expiry is computed by taxation-year count, including short years. |
| `abAt1Inputs.calculation.donations.vintages[].subsequentYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.donations.vintages[].transferred` | string |  | Amount of this vintage transferred on amalgamation or wind-up of a subsidiary, as exact decimal text. |
| `abAt1Inputs.calculation.eligibleCapital` | object |  | AT14/AT14S Mar-18 independent reconstruction for one business with a 2016 taxation-year start. Computed-only carryforward can propose the fixed January 2017 Class 14.1 history with confirmations cleared; it never replaces current opening pools or assets. |
| `abAt1Inputs.calculation.eligibleCapital.amounts` | object |  | Printed box-keyed independent Alberta facts. Explicit decimal-text nils are required for each applicable branch. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.002` | string |  | AT14/AT14S Mar-18 box 002: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.004` | string |  | AT14/AT14S Mar-18 box 004: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.006` | string |  | AT14/AT14S Mar-18 box 006: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.008` | string |  | AT14/AT14S Mar-18 box 008: exact signed Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.014` | string |  | AT14/AT14S Mar-18 box 014: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.016` | string |  | AT14/AT14S Mar-18 box 016: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.018` | string |  | AT14/AT14S Mar-18 box 018: exact signed Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.023` | string |  | AT14/AT14S Mar-18 box 023: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.024` | string |  | AT14/AT14S Mar-18 box 024: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.032` | string |  | AT14/AT14S Mar-18 box 032: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.034` | string |  | AT14/AT14S Mar-18 box 034: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.042` | string |  | AT14/AT14S Mar-18 box 042: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.044` | string |  | AT14/AT14S Mar-18 box 044: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.047` | string |  | AT14/AT14S Mar-18 box 047: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.048` | string |  | AT14/AT14S Mar-18 box 048: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.102` | string |  | AT14/AT14S Mar-18 box 102: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.amounts.300` | string |  | AT14/AT14S Mar-18 box 300: exact nonnegative Alberta decimal text, supported by the parent reference and confirmation. Use only the historical period to which the printed box applies. |
| `abAt1Inputs.calculation.eligibleCapital.businessId` | string |  | Stable business identity; keep separate Class 14.1 pools per business. |
| `abAt1Inputs.calculation.eligibleCapital.confirmed` | boolean |  | Preparer review of the reconstruction. |
| `abAt1Inputs.calculation.eligibleCapital.currency` | string |  | Explicit historical-period currency: CAD only, or blank while unconfirmed. The current return currency does not establish the 2016/2017 amount units; functional-currency reconstruction remains held. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction` | object |  | Historical AT14/AT14S original-currency monetary sources, elected tax basis and subsequent261(7)/(12) boundaries. Transaction and boundary spots remain distinct; no annual-average scalar translates ECP costs. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions` | array |  | Complete chronological election/reversion boundaries after the historical year through the receiving return. Fixed2017 history crosses at261(7)/(12) spots; current reviewed UCC is preserved. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversionsComplete` | boolean |  | Confirm all subsequent actual currency boundaries through the current return reporting unit. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[]` | object |  | Complete chronological election/reversion boundaries after the historical year through the receiving return. Fixed2017 history crosses at261(7)/(12) spots; current reviewed UCC is preserved. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].effectiveDate` | string |  | Actual ISO first day of the election or reversion taxation year. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].fromCurrency` | string |  | Tax reporting currency immediately before this actual boundary. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].immediatelyAfterCadStubConfirmed` | boolean |  | Actual immediatelyAfterCadStubConfirmed for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot` | object |  | Evidenced Bank of Canada relevant spot on the last Canadian/functional year end immediately preceding this actual boundary. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.cadPerUnit` | string |  | Positive exact CAD per one elected-currency unit. A quote never stands in for an annual-average roster. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.closestPrecedingQuoteConfirmed` | boolean |  | Confirm no closer Bank publication exists when the quote precedes the statutory day. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.day` | string |  | Actual transaction or statutory boundary quote day as ISO date; an opening conversion uses the day preceding the first functional year. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.quotedDay` | string |  | Actual Bank publication day, on or before the statutory quote day. An earlier quote requires closest-preceding-publication confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].spot.series` | string |  | Use the enacted Bank of Canada noon or daily spot series for the quote date. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].toCurrency` | string |  | Tax reporting currency immediately after this actual boundary; different elected currencies require the intervening CAD path under261(16). |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.currentBasisConversions[].windingUp26116Ref` | string |  | Actual windingUp26116Ref for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.federalElectionRef` | string |  | Retained evidence of the federal functional-currency election applicable to this historical tax year, adopted by ACTA4.02. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.functionalCurrencyStart` | string |  | Actual first elected functional taxation-year start, no later than the historical period start. The historical currency must qualify in that year. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources` | array |  | Complete original-currency monetary sources for every used printed amount box and the non-taxable transferor gain, including independently evidenced nil amounts. Each source identity appears once. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sourcesComplete` | boolean |  | Confirm the full original-currency source roster and native tax-basis history. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[]` | object |  | Complete original-currency monetary sources for every used printed amount box and the non-taxable transferor gain, including independently evidenced nil amounts. Each source identity appears once. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].amount` | string |  | Exact original monetary amount as decimal text. Other additions008 and reductions018 may be signed; all other source amounts are nonnegative. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].box` | string |  | AT14/AT14S input box receiving this monetary source, or nonTaxableTransferorGain before the statutory half factor. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].day` | string |  | Actual transaction or statutory boundary quote day as ISO date; an opening conversion uses the day preceding the first functional year. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].ministerAcceptanceConfirmed` | boolean |  | Actual ministerAcceptanceConfirmed for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].ministerAcceptanceRef` | string |  | Actual ministerAcceptanceRef for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].ministerAcceptedCrossRate` | string |  | Actual ministerAcceptedCrossRate for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceCurrency` | string |  | Actual currency of this original source, before the statutory conversion. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot` | object |  | Evidenced CAD-per-source-unit Bank of Canada relevant spot for a non-CAD original transaction. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.cadPerUnit` | string |  | Positive exact CAD per one elected-currency unit. A quote never stands in for an annual-average roster. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.closestPrecedingQuoteConfirmed` | boolean |  | Confirm no closer Bank publication exists when the quote precedes the statutory day. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.day` | string |  | Actual transaction or statutory boundary quote day as ISO date; an opening conversion uses the day preceding the first functional year. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.quotedDay` | string |  | Actual Bank publication day, on or before the statutory quote day. An earlier quote requires closest-preceding-publication confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].sourceSpot.series` | string |  | Use the enacted Bank of Canada noon or daily spot series for the quote date. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot` | object |  | Evidenced CAD-per-historical-reporting-unit Bank of Canada relevant spot for a transaction or first functional opening. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.cadPerUnit` | string |  | Positive exact CAD per one elected-currency unit. A quote never stands in for an annual-average roster. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.closestPrecedingQuoteConfirmed` | boolean |  | Confirm no closer Bank publication exists when the quote precedes the statutory day. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.day` | string |  | Actual transaction or statutory boundary quote day as ISO date; an opening conversion uses the day preceding the first functional year. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.quotedDay` | string |  | Actual Bank publication day, on or before the statutory quote day. An earlier quote requires closest-preceding-publication confirmation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].targetSpot.series` | string |  | Use the enacted Bank of Canada noon or daily spot series for the quote date. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].transactionRateKind` | string |  | Actual transactionRateKind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.eligibleCapital.currencyReconstruction.sources[].treatment` | string |  | nativeTaxBasis retains an already reconciled amount in the historical tax reporting unit; transaction uses actual-day spots under261(5)(c); electionOpening converts002 at the last Canadian year end under261(7). |
| `abAt1Inputs.calculation.eligibleCapital.election` | string |  | Negative transition-balance election: capitalGain, incomeInclusion, deferCapitalGain or deferIncomeInclusion. |
| `abAt1Inputs.calculation.eligibleCapital.evidenceRef` | string |  | Independent Alberta historical CEC source record. |
| `abAt1Inputs.calculation.eligibleCapital.nonTaxableTransferorGain` | string |  | Reviewed non-taxable portion of the non-arm-length transferor gain, before the printed one-half factor for AT14 line 011. Exact nonnegative decimal text; independent Alberta evidence and parent confirmation required. |
| `abAt1Inputs.calculation.eligibleCapital.pre2017TransactionsComplete` | boolean |  | Confirm the complete transactions through 2016-12-31; later property costs belong at 300. |
| `abAt1Inputs.calculation.eligibleCapital.specialTransitionsApply` | boolean \| null |  | Whether control, predecessors or entry adjustments apply; positive/unknown remains held. |
| `abAt1Inputs.calculation.eligibleCapital.yearEnd` | string |  | Actual historical year end, before the current return, at most 371 days after year start inclusive. |
| `abAt1Inputs.calculation.eligibleCapital.yearStart` | string |  | Actual historical year beginning in 2016, YYYY-MM-DD. |
| `abAt1Inputs.calculation.farming` | object |  | Independent Alberta farming inventory capture under ITA 28; evidence and confirmation required before computation. |
| `abAt1Inputs.calculation.farming.businesses` | array |  | Reviewed independent Alberta businesses; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[]` | object |  | Independent Alberta farming inventory capture under ITA 28; evidence and confirmation required before computation. |
| `abAt1Inputs.calculation.farming.businesses[].cashMethodContinues` | boolean \| null |  | Reviewed independent Alberta cashMethodContinues; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].cashReceipts` | string |  | Independent Alberta business cash receipts. |
| `abAt1Inputs.calculation.farming.businesses[].confirmed` | boolean |  | Reviewed independent Alberta confirmed; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].deductibleCashPayments` | string |  | Independent Alberta eligible actual and deemed cash payments under s.28(1)(e), (1.1). |
| `abAt1Inputs.calculation.farming.businesses[].evidenceRef` | string |  | Reviewed independent Alberta evidenceRef; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].groups` | array |  | Reviewed independent Alberta groups; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].groups[]` | object |  | Independent Alberta farming inventory capture under ITA 28; evidence and confirmation required before computation. |
| `abAt1Inputs.calculation.farming.businesses[].groups[].cashCost` | string |  | Reviewed independent Alberta cashCost; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].groups[].deemedCostIncluded` | boolean \| null |  | Reviewed independent Alberta deemedCostIncluded; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].groups[].fairMarketValue` | string |  | Reviewed independent Alberta fairMarketValue; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].groups[].id` | string |  | Reviewed independent Alberta id; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].groups[].openingCashCost` | string |  | At a currency boundary, the opening purchased-inventory cash cost in the current reporting currency. Schedule012 currency opening identity is farming.\<business ID>.inventory.\<item ID>.cashCost. Reconcile source amount and boundary spot; current payments are separate. |
| `abAt1Inputs.calculation.farming.businesses[].groups[].purchasePricePaidInYear` | string |  | Current reporting-currency purchase payments added to converted opening cash cost at a currency boundary. The total must equal cashCost. |
| `abAt1Inputs.calculation.farming.businesses[].id` | string |  | Reviewed independent Alberta id; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].inventoryFMV` | string |  | Reviewed independent Alberta inventoryFMV; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].jointElectionSatisfied` | boolean \| null |  | Reviewed independent Alberta jointElectionSatisfied; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].lossBeforeInventory` | string |  | Reviewed independent Alberta lossBeforeInventory; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].optionalClaim` | string |  | Reviewed independent Alberta optionalClaim; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].otherDeductions` | string |  | Other allocated Alberta tax deductions before the inventory adjustments, including prior-paid expense releases. |
| `abAt1Inputs.calculation.farming.businesses[].otherInclusions` | string |  | Other allocated Alberta tax inclusions before the inventory adjustments. |
| `abAt1Inputs.calculation.farming.businesses[].priorMandatory` | string |  | Reviewed independent Alberta priorMandatory; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].priorOptional` | string |  | Reviewed independent Alberta priorOptional; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].priorReturnMandatory` | string |  | Reviewed independent Alberta priorReturnMandatory; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].priorReturnOptional` | string |  | Reviewed independent Alberta priorReturnOptional; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].priorYearEnd` | string |  | Reviewed independent Alberta priorYearEnd; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals` | array |  | Reviewed independent Alberta specifiedAnimals; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[]` | object |  | Independent Alberta farming inventory capture under ITA 28; evidence and confirmation required before computation. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].acquiredInYear` | boolean \| null |  | Reviewed independent Alberta acquiredInYear; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].bovineElectionContinues` | boolean \| null |  | Reviewed independent Alberta bovineElectionContinues; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].cashCost` | string |  | Reviewed independent Alberta cashCost; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].designatedValue` | string |  | Reviewed independent Alberta designatedValue; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].id` | string |  | Reviewed independent Alberta id; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].kind` | string |  | Reviewed independent Alberta kind; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].priorCashCost` | string |  | Reviewed opening Alberta specified-animal cash cost, reconciled to current payments and the prior designated value under ITA 28(1.2). |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].priorValue` | string |  | Reviewed independent Alberta priorValue; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].specifiedAnimals[].purchasePricePaidInYear` | string |  | Reviewed independent Alberta purchasePricePaidInYear; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions` | array |  | At most 1000 owner-qualified predecessor inventory acquisitions. An amalgamation computes allocated predecessor MIA+OIA purchases under ITA87(2)(b); a wind-up computes (A×B/C)+D under88(1.2). These are purchases, not subsidiary opening releases. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitionsComplete` | boolean |  | Confirms all acquired predecessor inventory, including disposed items, is captured for this business. Required for amalgamation and wind-up inventory packets. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[]` | object |  |  |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].acquiredOn` | string |  | Actual acquisition/distribution ISO date in this return period, after wind-up commencement or at amalgamation. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].additionalDesignation` | string |  | Additional amount designated for this property. D is limited by FMV less variableA, following the literal88(1.2)(a) formula. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].allocationDenominator` | string |  | Complete positive allocation denominator for the predecessor business inventory; repeated values must agree. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].allocationNumerator` | string |  | This item part of the reasonable inventory cost allocation under sections68/87(2)(b). Allocation numerators must total the shared denominator per predecessor business. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].confirmed` | boolean |  | Review of this acquisition source record. Capture changes clear this flag, business review and roster completeness. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].evidenceRef` | string |  | Nonblank predecessor return, inventory, distribution and allocation evidence, at most1000 characters. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].fairMarketValue` | string |  | This property fair market value at distribution, used by the88(1.2)(a) additional-designation cap. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].heldAtYearEnd` | boolean |  | Whether this acquired item remains owned at year-end. Disposed transferred inventory must not also occur in the ending register. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].id` | string |  | Unique acquisition identity, at most80 characters. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].inventoryItemId` | string |  | Unique ordinary-group or specified-animal identity in this taxpayer register. Retained transfers must match that item computed cash cost. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].lossBeforeInventoryAtTransfer` | string |  | Wind-up subsidiary cash loss magnitude before section28 inventory at the distribution time; variableA is the lesser of this and total purchased inventory value. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].predecessorId` | string |  | Owner in the shared qualifying amalgamation/wind-up roster, at most1000 characters. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].predecessorMandatory` | string |  | Amalgamation source MIA inclusion, reconciled to the predecessor Schedule012 transition balance. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].predecessorOptional` | string |  | Amalgamation source OIA inclusion, reconciled to the predecessor Schedule012 transition balance. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].propertyPurchasedInventoryValue` | string |  | Section28(1.2) value of this purchased inventory distributed to the parent; variableB. Total distributed portions cannot exceedC. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].purchasedInventoryValueAtTransfer` | string |  | Total section28(1.2) value of purchased inventory at distribution; variableC and the other limb of variableA. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].reasonableAllocationConfirmed` | boolean |  | Confirms the evidenced reasonable inventory allocation under ITA68; it does not waive the computed total or item-cost checks. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].sourceBusinessId` | string |  | Predecessor cash-method business identity. Amalgamation source balance IDs are farming.\<sourceBusinessId>.mandatory and .optional under Schedule012. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].sourceCashMethodConfirmed` | boolean |  | Confirms the predecessor business used section28 cash accounting; another method cannot use these formulas. |
| `abAt1Inputs.calculation.farming.businesses[].transitionAcquisitions[].sourceYearStart` | string |  | For wind-ups, actual subsidiary taxation-year start containing the distribution. Its final year-end comes from the shared predecessor roster. |
| `abAt1Inputs.calculation.farming.businesses[].transitionDeemedPurchasePayments` | string |  | The total computed statutory deemed purchases already included once in deductibleCashPayments and reconciled Alberta cash income. It must equal the acquisition ledger; no reviewed plug can replace that calculation. |
| `abAt1Inputs.calculation.farming.complete` | boolean |  | Reviewed independent Alberta complete; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.confirmed` | boolean |  | Reviewed independent Alberta confirmed; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.continuity` | string |  | Reviewed independent Alberta continuity; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.farming.evidenceRef` | string |  | Reviewed independent Alberta evidenceRef; missing facts hold Schedule 12 farming inventory. |
| `abAt1Inputs.calculation.federalRevisions` | object |  | Optional explicit federal form-edition pins. They must match the canonical producers and taxation period. |
| `abAt1Inputs.calculation.identityFacts` | object |  | Reviewed non-monetary filing identities, bound to this preparation packet and its taxation period. No amount or software-identity overrides. |
| `abAt1Inputs.calculation.identityFacts.abilCorporationNames` | object |  | Map of Schedule 18 ABIL property IDs to corporation names required for the filing rows. At most 500 entries, each key and name at most 175 characters. |
| `abAt1Inputs.calculation.identityFacts.confirmed` | boolean |  | True only after reviewing the complete identity roster against its evidence. Clear on identity, evidence, source-roster or taxation-period changes. |
| `abAt1Inputs.calculation.identityFacts.corporateAccounts` | object |  | Map of Schedule 1 corporation IDs to checksum-valid Alberta corporate account numbers. Explicit null means the reviewed member has no Alberta registration; an absent entry is unanswered. |
| `abAt1Inputs.calculation.identityFacts.countryCodes` | object |  | Map of producer country identities to Chapter 3 v2026.4 country codes, at most 500 entries; codes must be in the authority vocabulary. |
| `abAt1Inputs.calculation.identityFacts.evidenceRef` | string |  | Supporting evidence for the complete reviewed identity roster, at most 500 characters. Required before confirming, including an empty roster. |
| `abAt1Inputs.calculation.identityFacts.partnershipNames` | object |  | Map of Schedule 21 partnership IDs to the partnership names required for the filing rows. At most 500 entries, each key and name at most 175 characters. |
| `abAt1Inputs.calculation.identityFacts.savedRowGuids` | object |  | Reviewed map to nonzero saved row GUIDs: s1:corporationId, ieg:corporationId, abil:propertyId, or resource:poolKind:originalOwnerId:poolId. At most 500 bindings; keys at most 2200 characters. Resolves repeated countries or changed names without using amounts or row positions. |
| `abAt1Inputs.calculation.jacket` | object |  | TRA11722 rev 2025-07 identification, certification and filer facts. Shared federal facts have no Alberta override; preparation never authorizes filing. |
| `abAt1Inputs.calculation.jacket.albertaProfessional` | boolean \| null |  | Reviewed Alberta albertaProfessional fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.amalgamatedCanConfirmed` | boolean |  | Confirms the CAN belongs to the new amalgamated corporation, including when its federal BN core is unchanged. |
| `abAt1Inputs.calculation.jacket.amalgamationDate` | string |  | Reviewed Alberta amalgamationDate fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.businessDescription` | string |  | Reviewed Alberta businessDescription fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.can` | string |  | Alberta corporate account number: 9 or 10 ASCII digits, checked using the TRA October 2, 2026 supplied mod-10 algorithm. Never substitute the federal BN. |
| `abAt1Inputs.calculation.jacket.certification` | object |  | Independent Alberta signing-officer certification; 101/103/105 are mandatory canonical source facts with no override map. |
| `abAt1Inputs.calculation.jacket.certification.authorizedEmail` | string |  | 000105: the specified corporation owner, operator or director email, at most 50 characters. Never automatically copy the preparer or EDI041 email. |
| `abAt1Inputs.calculation.jacket.certification.authorizedOfficerConfirmed` | boolean |  | Confirms the named person is an authorized signing officer of the corporation. This preparation input is not a filing declaration. |
| `abAt1Inputs.calculation.jacket.certification.computationMethodConsistent` | boolean \| null |  | Reviewed Alberta computationMethodConsistent fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.jacket.certification.date` | string |  | Reviewed Alberta date fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.emailOwnerRole` | string |  | Role of the corporation contact owning 000105: owner, operator or director. |
| `abAt1Inputs.calculation.jacket.certification.evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.jacket.certification.filingConsentConfirmed` | boolean \| null |  | Whether the authorized signing officer instructed the third party to file this particular return (TRA Chapter 3 section 3.3.12). Separate from return examination, officer authority and the server-owned transmission declaration. |
| `abAt1Inputs.calculation.jacket.certification.filingConsentEvidenceRef` | string |  | Retained officer instruction to file this return; required for a third-party filer, maximum 500 characters. Editing clears certification review. Does not authorize transmission. |
| `abAt1Inputs.calculation.jacket.certification.firstName` | string |  | Reviewed Alberta firstName fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.methodChangeStatementRef` | string |  | Reviewed Alberta methodChangeStatementRef fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.position` | string |  | Reviewed Alberta position fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.returnExaminedConfirmed` | boolean |  | Reviewed Alberta returnExaminedConfirmed fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.sameOfficerAsFederal` | boolean \| null |  | Whether Alberta 097/098/099 use the current canonical federal signing officer; certification date/phone/email remain independent Alberta facts. |
| `abAt1Inputs.calculation.jacket.certification.signatureEvidenceRef` | string |  | Reviewed Alberta signatureEvidenceRef fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.surname` | string |  | Reviewed Alberta surname fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.certification.telephone` | string |  | Reviewed Alberta telephone fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.jacket.contactName` | string |  | Reviewed Alberta contactName fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.contactSameAsFederal` | boolean \| null |  | Reviewed Alberta contactSameAsFederal fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.contactTelephone` | string |  | Reviewed Alberta contactTelephone fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.digitalMediaCertificate` | string |  | Reviewed Alberta digitalMediaCertificate fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.jacket.filer` | object |  | EDI filer/contact facts captured separately from the corporation and signing officer. Software certification codes/versions remain restricted application configuration. |
| `abAt1Inputs.calculation.jacket.filer.address` | object |  | Reviewed Alberta address fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.address.city` | string |  | Reviewed Alberta city fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.address.country` | string |  | Reviewed Alberta country fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.address.postalOrZip` | string |  | Reviewed Alberta postalOrZip fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.address.provinceOrState` | string |  | Reviewed Alberta provinceOrState fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.address.street1` | string |  | Reviewed Alberta street1 fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.address.street2` | string |  | Reviewed Alberta street2 fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.amended` | boolean \| null |  | EDI071: whether this is an amended return. This fact does not establish assessment or permission to transmit an amendment. |
| `abAt1Inputs.calculation.jacket.filer.changes` | string |  | EDI073: description of changes, at most 100 characters; required only for an amended return. |
| `abAt1Inputs.calculation.jacket.filer.confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.jacket.filer.email` | string |  | Reviewed Alberta email fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.jacket.filer.fax` | string |  | Reviewed Alberta fax fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.firstName` | string |  | Reviewed Alberta firstName fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.organizationLegalName` | string |  | Reviewed Alberta organizationLegalName fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.organizationOperatingName` | string |  | Reviewed Alberta organizationOperatingName fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.organizationType` | string |  | Reviewed Alberta organizationType fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.position` | string |  | Reviewed Alberta position fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.surname` | string |  | Reviewed Alberta surname fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.telephone` | string |  | Reviewed Alberta telephone fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.filer.thirdParty` | boolean \| null |  | EDI017: true for a third-party service provider, false for the corporation. Organization and address fields are conditional on true. |
| `abAt1Inputs.calculation.jacket.filmCreditEvidenceRef` | string |  | Reviewed Alberta filmCreditEvidenceRef fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.finalReturn` | boolean \| null |  | Reviewed Alberta finalReturn fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.finalReturnReason` | string |  | Reviewed Alberta finalReturnReason fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.functionalCurrencyAverageRate` | string |  |  |
| `abAt1Inputs.calculation.jacket.mailingAddress` | object |  | Alberta mailing-address facts. Existing canonical federal street lines are compulsory; independently captured city/country/subdivision/postal facts follow current TRA tables. |
| `abAt1Inputs.calculation.jacket.mailingAddress.city` | string |  | Reviewed Alberta city fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.mailingAddress.country` | string |  | Reviewed Alberta country fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.mailingAddress.postalOrZip` | string |  | Reviewed Alberta postalOrZip fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.mailingAddress.provinceOrState` | string |  | Reviewed Alberta provinceOrState fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.mailingAddress.street1` | string |  | Reviewed Alberta street1 fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.mailingAddress.street2` | string |  | Reviewed Alberta street2 fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.operatingName` | string |  | Reviewed Alberta operatingName fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.operatingNameStatementId` | string |  | Stable canonical S125 statement identity supplying AT1 011 when supplementary statements have distinct operating names. Requires the jacket evidence and review; an absent, held or mismatched statement never falls back to a retained name. |
| `abAt1Inputs.calculation.jacket.operationsCeasedDate` | string |  | Reviewed Alberta operationsCeasedDate fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.otherCorporationType` | string |  | Reviewed Alberta otherCorporationType fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.paymentWithReturn` | string |  | 000091: exact nonnegative enclosed payment. Retained independently of credited line 082; Net File emission requires zero. |
| `abAt1Inputs.calculation.jacket.preparedForFee` | boolean \| null |  | Reviewed Alberta preparedForFee fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.preparerName` | string |  | Reviewed Alberta preparerName fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.propertyRollover` | boolean \| null |  | Reviewed Alberta propertyRollover fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.qetStatementRef` | string |  | Reviewed Alberta qetStatementRef fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.refundDisposition` | string |  | Reviewed Alberta refundDisposition fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.sicCode` | string |  | Four-character SIC code from the transcribed Chapter 3 v2026.4 table (875 rows), including explicit 9999 when reviewed. NAICS is not a substitute. |
| `abAt1Inputs.calculation.jacket.specialStatus` | string |  | Reviewed Alberta specialStatus fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.yearEndChangeReason` | string |  | Reviewed Alberta yearEndChangeReason fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacket.yearEndChanged` | boolean \| null |  | Reviewed Alberta yearEndChanged fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.jacketAmounts` | object |  | Reviewed deductions, credits and actual payments keyed by the permitted Alberta jacket lines. Unbuilt supporting calculations are not claimed as implemented. |
| `abAt1Inputs.calculation.jacketAmounts.070` | object |  | Reviewed supporting amount for Alberta jacket line 070. |
| `abAt1Inputs.calculation.jacketAmounts.070.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.070.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.070.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.072` | object |  | Reviewed supporting amount for Alberta jacket line 072. |
| `abAt1Inputs.calculation.jacketAmounts.072.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.072.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.072.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.076` | object |  | Reviewed supporting amount for Alberta jacket line 076. |
| `abAt1Inputs.calculation.jacketAmounts.076.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.076.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.076.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.082` | object |  | Reviewed supporting amount for Alberta jacket line 082. |
| `abAt1Inputs.calculation.jacketAmounts.082.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.082.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.082.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.085` | object |  | Reviewed supporting amount for Alberta jacket line 085. |
| `abAt1Inputs.calculation.jacketAmounts.085.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.085.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.085.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.086` | object |  | Reviewed supporting amount for Alberta jacket line 086. |
| `abAt1Inputs.calculation.jacketAmounts.086.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.086.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.086.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.087` | object |  | Reviewed supporting amount for Alberta jacket line 087. |
| `abAt1Inputs.calculation.jacketAmounts.087.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.087.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.087.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.115` | object |  | Reviewed supporting amount for Alberta jacket line 115. |
| `abAt1Inputs.calculation.jacketAmounts.115.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.115.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.115.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketAmounts.129` | object |  | Reviewed supporting amount for Alberta jacket line 129. |
| `abAt1Inputs.calculation.jacketAmounts.129.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.jacketAmounts.129.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.jacketAmounts.129.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.jacketCredits` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.allowableCapitalLosses` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. allowableCapitalLosses: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.applicationOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. applicationOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.closingCash` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. closingCash: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.closingDebt` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. closingDebt: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.closingPropertyCost` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. closingPropertyCost: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.closingShareValue` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. closingShareValue: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.corporationKind` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. corporationKind: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends` | array |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividendsComplete` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. dividendsComplete: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[]` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[].amount` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. amount: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[].availableDividendAccount` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. availableDividendAccount: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[].confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[].evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[].id` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. id: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[].paidOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. paidOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.dividends[].validCapitalGainsElection` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. validCapitalGainsElection: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.eligibleThroughoutYear` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. eligibleThroughoutYear: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.ministerialAdjustment` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. ministerialAdjustment: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.ministerialAdjustmentDetermined` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. ministerialAdjustmentDetermined: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.openingAsOf` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. openingAsOf: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.openingRefundableTax` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. openingRefundableTax: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.ordinaryContinuity` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. ordinaryContinuity: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.prescribedLabourSponsoredVentureCapital` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. prescribedLabourSponsoredVentureCapital: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.priorRefundUnallocated` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. priorRefundUnallocated: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.publicCorporation` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. publicCorporation: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.qualifyingExchanges` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. qualifyingExchanges: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.redemptionPayments` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. redemptionPayments: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.returnFiledOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. returnFiledOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.taxableCapitalGains` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. taxableCapitalGains: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.capitalGainsRefund.withinReassessmentPeriod` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. withinReassessmentPeriod: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.albertaSredCreditClaimed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. albertaSredCreditClaimed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.applicationInPrescribedManner` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. applicationInPrescribedManner: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates` | array |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[]` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].amount` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. amount: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].holderMatchesCorporation` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. holderMatchesCorporation: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].informationReceivedOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. informationReceivedOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].issuedOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. issuedOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].number` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. number: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].originalIssuedOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. originalIssuedOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].previouslyUsed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. previouslyUsed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].priorCreditAllowed` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. priorCreditAllowed: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].reassessmentResolved` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. reassessmentResolved: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].replacesNumber` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. replacesNumber: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].status` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. status: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].taxationYearEnd` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. taxationYearEnd: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.certificates[].taxationYearStart` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. taxationYearStart: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.complete` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. complete: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.filmTelevision.evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.albertaSredCreditClaimed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. albertaSredCreditClaimed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.applicationInPrescribedManner` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. applicationInPrescribedManner: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates` | array |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[]` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].amount` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. amount: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].holderMatchesCorporation` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. holderMatchesCorporation: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].informationReceivedOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. informationReceivedOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].issuedOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. issuedOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].number` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. number: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].originalIssuedOn` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. originalIssuedOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].previouslyUsed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. previouslyUsed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].priorCreditAllowed` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. priorCreditAllowed: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].reassessmentResolved` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. reassessmentResolved: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].replacesNumber` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. replacesNumber: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].status` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. status: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].taxationYearEnd` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. taxationYearEnd: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.certificates[].taxationYearStart` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. taxationYearStart: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.complete` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. complete: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.idmtc.evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.qet.applicationInPrescribedManner` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. applicationInPrescribedManner: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.qet.complete` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. complete: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.qet.confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.qet.evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements` | array |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[]` | object |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].albertaResident` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. albertaResident: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].albertaTaxPaid` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. albertaTaxPaid: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].beneficiaryIncomeDeducted` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. beneficiaryIncomeDeducted: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].beneficiaryIncomeIncluded` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. beneficiaryIncomeIncluded: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].confirmed` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].corporationShareDenominator` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. corporationShareDenominator: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].corporationShareNumerator` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. corporationShareNumerator: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].evidenceRef` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].partnershipId` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. partnershipId: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].partnershipYearEnd` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. partnershipYearEnd: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].partnershipYearStart` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. partnershipYearStart: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].route` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. route: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].statementAvailable` | boolean |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. statementAvailable: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].statementCredit` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. statementCredit: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].trustId` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. trustId: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].trustIncome` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. trustIncome: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.jacketCredits.qet.statements[].trustYearEnd` | string |  | TRA11722 lines 085/086/115/087; ACTA 26.92-30. trustYearEnd: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.legacySchedules` | array |  | Separately dated CAD original-period1998-2014 Schedules5/6/7/11, maximum50 worksheets. Actual fiscal start/end choose the archived face and sunset rules. Original jacket hand-offs and unconfirmed closing proposals stay on that prior period. |
| `abAt1Inputs.calculation.legacySchedules[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].can` | string |  | Original-period Alberta worksheet can; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].currency` | string |  | Original-period Alberta worksheet currency; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].legalName` | string |  | Original-period Alberta worksheet legalName; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].periodEnd` | string |  | Original-period Alberta worksheet periodEnd; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].periodStart` | string |  | Original-period Alberta worksheet periodStart; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11` | object |  | Original-period Alberta worksheet schedule11; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.activeBusinessOutsideCanada` | boolean |  | Original-period Alberta worksheet activeBusinessOutsideCanada; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.adjustedBusinessIncome` | object |  | Original-period Alberta worksheet adjustedBusinessIncome; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.adjustedBusinessIncome.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.adjustedBusinessIncome.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.adjustedBusinessIncome.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.aggregateInvestmentIncome` | object |  | Original-period Alberta worksheet aggregateInvestmentIncome; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.aggregateInvestmentIncome.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.aggregateInvestmentIncome.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.aggregateInvestmentIncome.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.allocationFactor` | object |  | Original-period Alberta worksheet allocationFactor; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.allocationFactor.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.allocationFactor.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.allocationFactor.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfCapital` | object |  | Original-period Alberta worksheet costOfCapital; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfCapital.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfCapital.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfCapital.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfLabour` | object |  | Original-period Alberta worksheet costOfLabour; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfLabour.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfLabour.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.costOfLabour.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.excludedActivities` | boolean |  | Original-period Alberta worksheet excludedActivities; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.grossRevenue` | object |  | Original-period Alberta worksheet grossRevenue; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.grossRevenue.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.grossRevenue.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.grossRevenue.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.groupActiveBusinessIncome` | object |  | Original-period Alberta worksheet groupActiveBusinessIncome; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.groupActiveBusinessIncome.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.groupActiveBusinessIncome.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.groupActiveBusinessIncome.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.independentAlbertaBasisConfirmed` | boolean |  | Original-period Alberta worksheet independentAlbertaBasisConfirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.isCcpc` | boolean |  | Original-period Alberta worksheet isCcpc; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingCapital` | object |  | Original-period Alberta worksheet manufacturingCapital; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingCapital.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingCapital.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingCapital.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingLabour` | object |  | Original-period Alberta worksheet manufacturingLabour; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingLabour.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingLabour.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingLabour.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingRevenue` | object |  | Original-period Alberta worksheet manufacturingRevenue; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingRevenue.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingRevenue.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.manufacturingRevenue.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.primarilyManufacturing` | boolean |  | Original-period Alberta worksheet primarilyManufacturing; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessActiveIncome` | object |  | Original-period Alberta worksheet smallBusinessActiveIncome; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessActiveIncome.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessActiveIncome.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessActiveIncome.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessLimit` | object |  | Original-period Alberta worksheet smallBusinessLimit; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessLimit.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessLimit.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessLimit.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessTaxableIncome` | object |  | Original-period Alberta worksheet smallBusinessTaxableIncome; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessTaxableIncome.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessTaxableIncome.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallBusinessTaxableIncome.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.smallManufacturer` | boolean |  | Original-period Alberta worksheet smallManufacturer; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.taxableInAlberta` | object |  | Original-period Alberta worksheet taxableInAlberta; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.taxableInAlberta.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.taxableInAlberta.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule11.taxableInAlberta.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5` | object |  | Original-period Alberta worksheet schedule5; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.acquirerName` | string |  | Original-period Alberta worksheet acquirerName; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.ceasedExemptAtStart` | boolean \| null |  | Original-period Alberta worksheet ceasedExemptAtStart; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.claim` | object |  | Original-period Alberta worksheet claim; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.claim.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.claim.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.claim.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.controlAgreementDate` | string |  | Actual ISO date of the written control agreement, no later than the control-date original period start; determines the SA2002 c28 s.14(4) commencement exception. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.controlByWrittenAgreement` | boolean \| null |  | Whether the control event creating the original period start followed a written agreement. Required when the year straddles December 4, 2002; an earlier written agreement defers former ACTA 20(6.4) to the first year beginning after that date (SA2002 c28 s.14(4)). |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.controlPoolAdvancementReviewed` | boolean |  | Original-period Alberta worksheet controlPoolAdvancementReviewed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.opening` | object |  | Original-period Alberta worksheet opening; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.opening.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.opening.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.opening.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.ordinaryContinuityConfirmed` | boolean |  | Original-period Alberta worksheet ordinaryContinuityConfirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.poolTransfer` | string |  | Original-period Alberta worksheet poolTransfer; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.poolTransferDate` | string |  | Original-period Alberta worksheet poolTransferDate; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.preControlStatus` | string |  | For old Schedule 5 control-date reconstruction: regular, first or second successor status before the event. Former ACTA 20(6.4) advances regular to first, first to second and permits no third succession. Mixed status histories require separate ownership tracing. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.previousControlChange` | boolean \| null |  | Original-period Alberta worksheet previousControlChange; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorFirstSuccessorPool` | object |  | Original-period Alberta worksheet priorFirstSuccessorPool; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorFirstSuccessorPool.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorFirstSuccessorPool.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorFirstSuccessorPool.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorRegularPool` | object |  | Original-period Alberta worksheet priorRegularPool; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorRegularPool.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorRegularPool.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorRegularPool.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorSecondSuccessorPool` | object |  | Original-period Alberta worksheet priorSecondSuccessorPool; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorSecondSuccessorPool.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorSecondSuccessorPool.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.priorSecondSuccessorPool.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.reimbursements` | object |  | Original-period Alberta worksheet reimbursements; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.reimbursements.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.reimbursements.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.reimbursements.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.resourceAllowance` | object |  | Original-period Alberta worksheet resourceAllowance; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.resourceAllowance.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.resourceAllowance.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.resourceAllowance.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.rostersComplete` | boolean |  | Original-period Alberta worksheet rostersComplete; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors` | array |  | Original-period Alberta worksheet successors; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].acquired` | object |  | Original-period Alberta worksheet acquired; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].acquired.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].acquired.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].acquired.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].can` | string |  | Original-period Alberta worksheet can; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].claim` | object |  | Original-period Alberta worksheet claim; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].claim.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].claim.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].claim.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].eventDate` | string |  | Original-period Alberta worksheet eventDate; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].id` | string |  | Original-period Alberta worksheet id; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].level` | string |  | Original-period Alberta worksheet level; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].name` | string |  | Original-period Alberta worksheet name; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].opening` | object |  | Original-period Alberta worksheet opening; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].opening.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].opening.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].opening.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].propertyIncome` | object |  | Original-period Alberta worksheet propertyIncome; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].propertyIncome.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].propertyIncome.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.successors[].propertyIncome.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.taxableIncome` | object |  | Original-period Alberta worksheet taxableIncome; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.taxableIncome.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.taxableIncome.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.taxableIncome.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transferredOut` | object |  | Original-period Alberta worksheet transferredOut; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transferredOut.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transferredOut.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transferredOut.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers` | array |  | Original-period Alberta worksheet transfers; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].balance` | object |  | Original-period Alberta worksheet balance; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].balance.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].balance.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].balance.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].can` | string |  | Original-period Alberta worksheet can; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].date` | string |  | Original-period Alberta worksheet date; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].id` | string |  | Original-period Alberta worksheet id; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].kind` | string |  | Original-period Alberta worksheet kind; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule5.transfers[].name` | string |  | Original-period Alberta worksheet name; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6` | object |  | Original-period Alberta worksheet schedule6; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.associated` | boolean \| null |  | Original-period Alberta worksheet associated; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.associationAndRestrictionsReviewed` | boolean |  | Original-period Alberta worksheet associationAndRestrictionsReviewed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.claimReceivedOn` | string |  | Original-period Alberta worksheet claimReceivedOn; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.directCrownRoyalty` | object |  | Original-period Alberta worksheet directCrownRoyalty; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.directCrownRoyalty.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.directCrownRoyalty.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.directCrownRoyalty.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.instalments` | object |  | Original-period Alberta worksheet instalments; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.instalments.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.instalments.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.instalments.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members` | array |  | Original-period Alberta worksheet members; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].allocatedShelter` | object |  | Original-period Alberta worksheet allocatedShelter; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].allocatedShelter.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].allocatedShelter.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].allocatedShelter.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].can` | string |  | Original-period Alberta worksheet can; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].directCrownRoyalty` | object |  | Original-period Alberta worksheet directCrownRoyalty; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].directCrownRoyalty.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].directCrownRoyalty.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].directCrownRoyalty.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].id` | string |  | Original-period Alberta worksheet id; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].isFiler` | boolean |  | Original-period Alberta worksheet isFiler; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].name` | string |  | Original-period Alberta worksheet name; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships` | array |  | Original-period Alberta worksheet partnerships; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[].crownRoyalty` | object |  | Original-period Alberta worksheet crownRoyalty; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[].crownRoyalty.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[].crownRoyalty.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[].crownRoyalty.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[].id` | string |  | Original-period Alberta worksheet id; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[].periodEnd` | string |  | Original-period Alberta worksheet periodEnd; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].partnerships[].periodStart` | string |  | Original-period Alberta worksheet periodStart; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].periodEnd` | string |  | Original-period Alberta worksheet periodEnd; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.members[].periodStart` | string |  | Original-period Alberta worksheet periodStart; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships` | array |  | Original-period Alberta worksheet partnerships; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[].crownRoyalty` | object |  | Original-period Alberta worksheet crownRoyalty; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[].crownRoyalty.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[].crownRoyalty.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[].crownRoyalty.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[].id` | string |  | Original-period Alberta worksheet id; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[].periodEnd` | string |  | Original-period Alberta worksheet periodEnd; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.partnerships[].periodStart` | string |  | Original-period Alberta worksheet periodStart; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters` | array |  | Original-period Alberta worksheet quarters; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters[].quarter` | number |  | Original-period Alberta worksheet quarter; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters[].referencePrice` | object |  | Original-period Alberta worksheet referencePrice; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters[].referencePrice.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters[].referencePrice.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters[].referencePrice.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule6.quarters[].year` | number |  | Original-period Alberta worksheet year; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7` | object |  | Original-period Alberta worksheet schedule7; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments` | array |  | Original-period Alberta worksheet adjustments; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].decreases` | object |  | Original-period Alberta worksheet decreases; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].decreases.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].decreases.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].decreases.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].increases` | object |  | Original-period Alberta worksheet increases; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].increases.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].increases.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].increases.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].ineligibleAdjustment` | object |  | Original-period Alberta worksheet ineligibleAdjustment; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].ineligibleAdjustment.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].ineligibleAdjustment.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].ineligibleAdjustment.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].productionYearEnd` | string |  | Original-period Alberta worksheet productionYearEnd; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.adjustments[].source` | string |  | Original-period Alberta worksheet source; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts` | object |  | Original-period Alberta worksheet amounts; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.003` | object |  | Original-period Alberta worksheet 003; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.003.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.003.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.003.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.005` | object |  | Original-period Alberta worksheet 005; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.005.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.005.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.005.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.007` | object |  | Original-period Alberta worksheet 007; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.007.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.007.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.007.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.009` | object |  | Original-period Alberta worksheet 009; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.009.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.009.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.009.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.011` | object |  | Original-period Alberta worksheet 011; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.011.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.011.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.011.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.013` | object |  | Original-period Alberta worksheet 013; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.013.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.013.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.013.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.017` | object |  | Original-period Alberta worksheet 017; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.017.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.017.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.017.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.025` | object |  | Original-period Alberta worksheet 025; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.025.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.025.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.025.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.029` | object |  | Original-period Alberta worksheet 029; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.029.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.029.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.amounts.029.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.balanceSheetDescription` | string |  | Original-period Alberta worksheet balanceSheetDescription; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.otherDescriptions` | array |  | Original-period Alberta worksheet otherDescriptions; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.otherDescriptions[]` | string |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships` | array |  | Original-period Alberta worksheet partnerships; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[]` | object |  |  |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].eligibleCrownRoyalty` | object |  | Original-period Alberta worksheet eligibleCrownRoyalty; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].eligibleCrownRoyalty.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].eligibleCrownRoyalty.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].eligibleCrownRoyalty.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].id` | string |  | Original-period Alberta worksheet id; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].interestPercent` | string |  | Original-period Alberta worksheet interestPercent; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].name` | string |  | Original-period Alberta worksheet name; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherAlbertaRoyalties` | object |  | Original-period Alberta worksheet otherAlbertaRoyalties; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherAlbertaRoyalties.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherAlbertaRoyalties.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherAlbertaRoyalties.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherCrownCharges` | object |  | Original-period Alberta worksheet otherCrownCharges; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherCrownCharges.amount` | string |  | Original-period Alberta worksheet amount; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherCrownCharges.confirmed` | boolean |  | Original-period Alberta worksheet confirmed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].otherCrownCharges.evidenceRef` | string |  | Original-period Alberta worksheet evidenceRef; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].periodEnd` | string |  | Original-period Alberta worksheet periodEnd; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.partnerships[].periodStart` | string |  | Original-period Alberta worksheet periodStart; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.rostersComplete` | boolean |  | Original-period Alberta worksheet rostersComplete; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.legacySchedules[].schedule7.royaltyEligibilityReviewed` | boolean |  | Original-period Alberta worksheet royaltyEligibilityReviewed; reviewed independent Alberta fact, AT176/AT4/AT196/AT26 and cited statutory date rules. Exact monetary values remain decimal text and require evidence plus confirmation. |
| `abAt1Inputs.calculation.lossAccounts` | array |  | Independent Alberta opening losses by identity, type and origin; never copied implicitly from federal balances. |
| `abAt1Inputs.calculation.lossAccountsComplete` | boolean \| null |  | Confirms the entire Alberta opening-loss roster has been entered. |
| `abAt1Inputs.calculation.lossAccounts[]` | object |  |  |
| `abAt1Inputs.calculation.lossAccounts[].adjustment` | string |  | Signed reviewed adjustment to this Alberta loss account. |
| `abAt1Inputs.calculation.lossAccounts[].applied` | string |  | Current Alberta deduction from this vintage; must agree with Schedule 12 and oldest-loss ordering. |
| `abAt1Inputs.calculation.lossAccounts[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.lossAccounts[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.lossAccounts[].expired` | string |  | Positive expired amount removed from available losses. |
| `abAt1Inputs.calculation.lossAccounts[].expiryYearEnd` | null \| string |  | Reviewed statutory expiry based on actual taxation years; required for expiring loss types. |
| `abAt1Inputs.calculation.lossAccounts[].id` | string |  | Stable identity of the Alberta loss account or vintage. |
| `abAt1Inputs.calculation.lossAccounts[].kind` | string |  | Loss kind; capital balances use the gross basis. |
| `abAt1Inputs.calculation.lossAccounts[].openingBalance` | string |  | Assessed or otherwise evidenced Alberta balance before current movements. |
| `abAt1Inputs.calculation.lossAccounts[].originYearEnd` | string |  | Actual taxation-year end in which the loss originated. |
| `abAt1Inputs.calculation.lossAccounts[].partnershipId` | string |  | Stable partnership identity for limited-partnership losses; vintage ordering never crosses partnership accounts. |
| `abAt1Inputs.calculation.lossAccounts[].predecessorId` | string |  | Identity of the predecessor whose transferred loss balance is being recognized. |
| `abAt1Inputs.calculation.lossAccounts[].transferred` | string |  | Reviewed positive transfer into this Alberta loss account. |
| `abAt1Inputs.calculation.lossRestrictionsReviewed` | boolean \| null |  | Legacy ordinary loss review. It cannot replace transition-qualified Schedule 21 vintages or Schedule 10 applications when a dated transition is captured. |
| `abAt1Inputs.calculation.obligations` | object |  | Independent Alberta filing/payment exposure under ACTA ss.36-39 and CT-2R11 September 2025. Reuses the determination filing deadline and reviewed TRA closures; does not alter federal deadlines or authorize filing. |
| `abAt1Inputs.calculation.obligations.accountAdjustments` | array |  | Complete dated adjustments. Jacket tax is reassessed tax; carryback reductions are restored to the interest tax base until their latest statutory deemed payment date. At most 500. |
| `abAt1Inputs.calculation.obligations.accountAdjustmentsComplete` | boolean |  | Confirm every reassessment/carryback adjustment is included. Roster edits clear this confirmation. An explicit complete empty roster supports a tax-only reassessment; an absent roster does not. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].amount` | string |  | Reviewed CAD tax reduction, excess refund or account adjustment; preserve its separately evidenced effective date and do not convert it again. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].carrybackRoute` | string |  | request (default): use actual filed form/request dates. assessmentAction: only when neither form nor request applies, use the issued reassessment date under ACTA 39(3)/47(6)(h). The routes are mutually exclusive. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].confirmed` | boolean |  | Confirm this adjustment and its actual dates; edits clear confirmation. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].evidenceRef` | string |  | Assessment, carryback request, or reversed refund evidence; maximum 500 characters. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].id` | string |  | Unique adjustment identity distinct from all payment ledger identities, maximum 100 characters. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].kind` | string |  | anticipatedReassessment, lossCarryback, or refundReversal; no caller-selected effective date is accepted. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].lossReturnFiledDate` | string |  | Actual loss-year AT1 filing date, YYYY-MM-DD. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].lossYearEnd` | string |  | Actual subsequent loss taxation year end, YYYY-MM-DD. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].originalAssessmentDate` | string |  | Actual original assessment issue date, YYYY-MM-DD, through the review date. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].originalRefundAmount` | string |  | Full original cash refund principal, exact nonnegative decimal text, at least the excess amount. Required for refundReversal because line 082 contains credits only; revised tax already contains the excess tax component. Only refund interest attributable to the excess is added as a new charge. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].paymentId` | string |  | Existing line 082 payment identity. Anticipated payments are delayed to the later of receipt and original assessment; never counted twice. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].reassessmentDate` | string |  | Actual issued TRA reassessment date, YYYY-MM-DD, for the assessmentAction alternative when neither form nor request caused the carryback. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].refundDate` | string |  | Original payment date of the reversed refund, YYYY-MM-DD. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].refundInterest` | string |  | Exact nonnegative refund interest reversed with an excess refund, decimal text; enter explicit nil when appropriate. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].requestDate` | string |  | Actual carryback reassessment request date, YYYY-MM-DD. |
| `abAt1Inputs.calculation.obligations.accountAdjustments[].schedule10FiledDate` | string |  | Actual prescribed Schedule 10 filing date, YYYY-MM-DD. |
| `abAt1Inputs.calculation.obligations.accountHistoryComplete` | boolean |  | Confirms complete relevant account history through asOf, including credited payments, offsets and refundable-credit events without duplicate reporting. |
| `abAt1Inputs.calculation.obligations.asOf` | string |  | Actual reconciliation/statement date as YYYY-MM-DD. All effective credits must be on or before this date. |
| `abAt1Inputs.calculation.obligations.assessmentDate` | string |  | Date TRA sent the assessment, as YYYY-MM-DD, for the 35-day payment grace rule. |
| `abAt1Inputs.calculation.obligations.assessmentPaidInFullDate` | string |  | Proven full-payment date for the assessed balance. Timely payment within 35 days stops further interest after assessment; an unresolved grace period stays held. |
| `abAt1Inputs.calculation.obligations.assessmentStatus` | string |  | Reviewed actual assessment state: notAssessed, assessed or unknown. Unknown holds arrears interest. |
| `abAt1Inputs.calculation.obligations.believedExempt` | boolean \| null |  | Whether the original nonfiling was because the corporation believed it was exempt; true requires the determination proven federal T2 filing date for CT-2R11 paragraph 22. |
| `abAt1Inputs.calculation.obligations.completeReturnReceived` | boolean |  | Confirms TRA received the complete return and necessary attachments on receivedDate. A document upload alone is not a filing receipt. |
| `abAt1Inputs.calculation.obligations.confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.obligations.deliveryMethod` | string |  | Actual netFile, hand, mail or courier delivery, used only for CT-4R7 paragraph 46 late-penalty receipt concessions. The statutory filing deadline is unchanged. |
| `abAt1Inputs.calculation.obligations.estimatedCurrentTax` | string |  | Optional current Part5 tax estimate in CAD, after current reporting-currency settlement conversion; instalment Option1. ACTA4.02(2)/(3). |
| `abAt1Inputs.calculation.obligations.evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.obligations.filingStatus` | string |  | Reviewed actual Alberta filing state: filed, notFiled or unknown. Absence of a receipt does not establish that the return is unfiled. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers` | array |  | Complete dated wind-up/rollover roster for this or the preceding parent year. CT-2R11 paragraphs 57-58. At most 100. |
| `abAt1Inputs.calculation.obligations.instalmentTransfersComplete` | boolean |  | Confirm every applicable transfer and transferor history is included. Roster edits clear this confirmation. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].confirmed` | boolean |  | Confirm the transfer facts and statutory month count; edits clear confirmation. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].evidenceRef` | string |  | Reviewed transfer instrument and assessed Alberta tax history reference; maximum 500 characters. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].id` | string |  | Stable unique transferor identity; maximum 100 characters. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].kind` | string |  | windup for federal s.88(1); rollover for all or substantially all property transferred to a non-arm length corporation under s.85(1)/(2). |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].monthsBeforeTransfer` | number |  | Reviewed whole statutory months preceding the transfer in the parent transfer year, integer zero through twelve. Required for the following-year P + S\*N/12 formula. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].statutoryConditionsConfirmed` | boolean |  | Confirm all statutory conditions for the chosen transfer, supported by the reference. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferDate` | string |  | Actual distribution/transfer date, YYYY-MM-DD, in this or the immediately preceding parent year. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears` | array |  | Actual contiguous assessed Alberta years, newest first, using the ordinary prior-year record. At most twenty; short-year adjustment is computed. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage` | object |  | Source-year Reviewed exact fiscal-year Bank quote roster under AR119/2008 s.7.1(2), Alberta Interpretation Act ss.9/10 and the 2026-10-17 source adjudication. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.allBusinessDaysConfirmed` | boolean |  | Source-year True only after review that the roster includes every Bank-quoted business day and every listed non-publication weekday is supported by the source. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.confirmed` | boolean |  | Source-year Preparer confirmation of this complete taxation-year Bank quote source. Changes require renewed review. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.evidenceRef` | string |  | Source-year Nonblank reviewed source reference for the complete quoted-day and non-publication roster; at most 1000 characters. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.noQuoteDays` | array |  | Source-year At most 500 unique ISO weekdays in the taxation year on which the Bank did not publish a quote, evidenced by the same source. Together with quotes these must cover every weekday without overlap. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.noQuoteDays[]` | string |  |  |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.periodEnd` | string |  | Source-year Exact ISO end of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.periodStart` | string |  | Source-year Exact ISO start of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.quotes` | array |  | Complete source-year Bank roster; preserve exact quote sum/count before CAD tax conversion, then annualize. Never use the current-year average for prior tax (ACTA4.02(2)/(3); CT-23 paragraphs6-8). |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.quotes[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.quotes[].cadPerUnit` | string | strict | Source-year Positive exact decimal-text Bank quote, below 100000 and at most six decimal places, in CAD per elected-currency unit. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.quotes[].day` | string | strict | Source-year Unique ISO quoted weekday within this taxation year; no preceding-day fill. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].annualAverage.quotes[].series` | string | strict | Source-year bankOfCanadaNoon through 2017-04-28; bankOfCanadaDaily from 2017-05-01, including the noon/daily parallel period rule. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].claimedSmallBusinessDeduction` | boolean \| null |  | Whether the corporation claimed the Alberta SBD for this preceding taxation year; federal SBD eligibility is not a substitute. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].currency` | string |  | Source taxation-year reporting currency. Required for every preceding/predecessor/transferor year of a functional-currency current year; legacy CAD-only captures retain CAD. ACTA4.02(2)/(3). |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate` | object |  | Reviewed first-day relevant spot for the source-year s.38 income reference; distinct from the tax annual mean (adopted ITA261(5)(b)). |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.cadPerUnit` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.closestPrecedingQuoteConfirmed` | boolean |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.confirmed` | boolean |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.day` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.evidenceRef` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.id` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.quotedDay` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].firstDayRate.series` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].part5Tax` | string |  | Reviewed source-year Part5 tax before refundable credits, in that year's declared reporting currency. Convert to CAD at that year's exact annual Bank mean before instalment-base annualization or additions (ACTA4.02(2)/(3); CT-23 paragraphs6-8). |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].periodEnd` | string |  | Reviewed Alberta periodEnd fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].periodStart` | string |  | Reviewed Alberta periodStart fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorPriorYears[].taxableIncome` | string |  | Reviewed source-year Alberta taxable income, in that year's reporting currency. The s.38 income reference uses that year's first-day spot, distinct from its tax annual mean. |
| `abAt1Inputs.calculation.obligations.instalmentTransfers[].transferorYearStart` | string |  | Start of the actual transferor year containing the distribution; prior transferor years must end immediately before this date. |
| `abAt1Inputs.calculation.obligations.mutualFundCorporation` | boolean \| null |  | Reviewed mutual fund status, reconciled to the canonical federal investment/mutual fund fact. A true answer uses computed Alberta 086 divided by twelve, floored per instalment at nil (CT-2R11 paragraph 59). |
| `abAt1Inputs.calculation.obligations.preCarrybackSbdClaimed` | boolean \| null |  | Whether Alberta SBD was claimed before the carryback. A later reduction cannot create an original-year instalment exemption. |
| `abAt1Inputs.calculation.obligations.preCarrybackTaxableIncome` | string |  | Current taxation-year taxable income before carrybacks, in the current reporting currency. The s.38 dollar reference uses the canonical first-day spot, not the annual tax mean. |
| `abAt1Inputs.calculation.obligations.predecessors` | array |  | At most 100 uniquely identified amalgamation predecessors, with independent Alberta year histories. A new corporation formed by amalgamation cannot use the first-year instalment exemption. |
| `abAt1Inputs.calculation.obligations.predecessorsComplete` | boolean |  | Confirms that every amalgamation predecessor and its relevant Alberta taxation years are included. |
| `abAt1Inputs.calculation.obligations.predecessors[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.predecessors[].id` | string |  | Reviewed Alberta id fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.predecessors[].years` | array |  | Reviewed Alberta years fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage` | object |  | Source-year Reviewed exact fiscal-year Bank quote roster under AR119/2008 s.7.1(2), Alberta Interpretation Act ss.9/10 and the 2026-10-17 source adjudication. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.allBusinessDaysConfirmed` | boolean |  | Source-year True only after review that the roster includes every Bank-quoted business day and every listed non-publication weekday is supported by the source. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.confirmed` | boolean |  | Source-year Preparer confirmation of this complete taxation-year Bank quote source. Changes require renewed review. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.evidenceRef` | string |  | Source-year Nonblank reviewed source reference for the complete quoted-day and non-publication roster; at most 1000 characters. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.noQuoteDays` | array |  | Source-year At most 500 unique ISO weekdays in the taxation year on which the Bank did not publish a quote, evidenced by the same source. Together with quotes these must cover every weekday without overlap. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.noQuoteDays[]` | string |  |  |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.periodEnd` | string |  | Source-year Exact ISO end of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.periodStart` | string |  | Source-year Exact ISO start of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.quotes` | array |  | Complete source-year Bank roster; preserve exact quote sum/count before CAD tax conversion, then annualize. Never use the current-year average for prior tax (ACTA4.02(2)/(3); CT-23 paragraphs6-8). |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.quotes[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.quotes[].cadPerUnit` | string | strict | Source-year Positive exact decimal-text Bank quote, below 100000 and at most six decimal places, in CAD per elected-currency unit. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.quotes[].day` | string | strict | Source-year Unique ISO quoted weekday within this taxation year; no preceding-day fill. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].annualAverage.quotes[].series` | string | strict | Source-year bankOfCanadaNoon through 2017-04-28; bankOfCanadaDaily from 2017-05-01, including the noon/daily parallel period rule. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].claimedSmallBusinessDeduction` | boolean \| null |  | Whether the corporation claimed the Alberta SBD for this preceding taxation year; federal SBD eligibility is not a substitute. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].currency` | string |  | Source taxation-year reporting currency. Required for every preceding/predecessor/transferor year of a functional-currency current year; legacy CAD-only captures retain CAD. ACTA4.02(2)/(3). |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate` | object |  | Reviewed first-day relevant spot for the source-year s.38 income reference; distinct from the tax annual mean (adopted ITA261(5)(b)). |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.cadPerUnit` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.closestPrecedingQuoteConfirmed` | boolean |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.confirmed` | boolean |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.day` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.evidenceRef` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.id` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.quotedDay` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].firstDayRate.series` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].part5Tax` | string |  | Reviewed source-year Part5 tax before refundable credits, in that year's declared reporting currency. Convert to CAD at that year's exact annual Bank mean before instalment-base annualization or additions (ACTA4.02(2)/(3); CT-23 paragraphs6-8). |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].periodEnd` | string |  | Reviewed Alberta periodEnd fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].periodStart` | string |  | Reviewed Alberta periodStart fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.predecessors[].years[].taxableIncome` | string |  | Reviewed source-year Alberta taxable income, in that year's reporting currency. The s.38 income reference uses that year's first-day spot, distinct from its tax annual mean. |
| `abAt1Inputs.calculation.obligations.priorYears` | array |  | At most 20 actual contiguous preceding Alberta taxation years, newest first, with assessed Part 5 tax before refundable credits. Short years of at most 182 days need the last preceding year exceeding 182 days. |
| `abAt1Inputs.calculation.obligations.priorYears[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage` | object |  | Source-year Reviewed exact fiscal-year Bank quote roster under AR119/2008 s.7.1(2), Alberta Interpretation Act ss.9/10 and the 2026-10-17 source adjudication. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.allBusinessDaysConfirmed` | boolean |  | Source-year True only after review that the roster includes every Bank-quoted business day and every listed non-publication weekday is supported by the source. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.confirmed` | boolean |  | Source-year Preparer confirmation of this complete taxation-year Bank quote source. Changes require renewed review. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.evidenceRef` | string |  | Source-year Nonblank reviewed source reference for the complete quoted-day and non-publication roster; at most 1000 characters. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.noQuoteDays` | array |  | Source-year At most 500 unique ISO weekdays in the taxation year on which the Bank did not publish a quote, evidenced by the same source. Together with quotes these must cover every weekday without overlap. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.noQuoteDays[]` | string |  |  |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.periodEnd` | string |  | Source-year Exact ISO end of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.periodStart` | string |  | Source-year Exact ISO start of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.quotes` | array |  | Complete source-year Bank roster; preserve exact quote sum/count before CAD tax conversion, then annualize. Never use the current-year average for prior tax (ACTA4.02(2)/(3); CT-23 paragraphs6-8). |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.quotes[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.quotes[].cadPerUnit` | string | strict | Source-year Positive exact decimal-text Bank quote, below 100000 and at most six decimal places, in CAD per elected-currency unit. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.quotes[].day` | string | strict | Source-year Unique ISO quoted weekday within this taxation year; no preceding-day fill. |
| `abAt1Inputs.calculation.obligations.priorYears[].annualAverage.quotes[].series` | string | strict | Source-year bankOfCanadaNoon through 2017-04-28; bankOfCanadaDaily from 2017-05-01, including the noon/daily parallel period rule. |
| `abAt1Inputs.calculation.obligations.priorYears[].claimedSmallBusinessDeduction` | boolean \| null |  | Whether the corporation claimed the Alberta SBD for this preceding taxation year; federal SBD eligibility is not a substitute. |
| `abAt1Inputs.calculation.obligations.priorYears[].confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.obligations.priorYears[].currency` | string |  | Source taxation-year reporting currency. Required for every preceding/predecessor/transferor year of a functional-currency current year; legacy CAD-only captures retain CAD. ACTA4.02(2)/(3). |
| `abAt1Inputs.calculation.obligations.priorYears[].evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate` | object |  | Reviewed first-day relevant spot for the source-year s.38 income reference; distinct from the tax annual mean (adopted ITA261(5)(b)). |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.cadPerUnit` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.closestPrecedingQuoteConfirmed` | boolean |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.confirmed` | boolean |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.day` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.evidenceRef` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.id` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.quotedDay` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].firstDayRate.series` | string |  | Source-year Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.obligations.priorYears[].part5Tax` | string |  | Reviewed source-year Part5 tax before refundable credits, in that year's declared reporting currency. Convert to CAD at that year's exact annual Bank mean before instalment-base annualization or additions (ACTA4.02(2)/(3); CT-23 paragraphs6-8). |
| `abAt1Inputs.calculation.obligations.priorYears[].periodEnd` | string |  | Reviewed Alberta periodEnd fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.priorYears[].periodStart` | string |  | Reviewed Alberta periodStart fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.priorYears[].taxableIncome` | string |  | Reviewed source-year Alberta taxable income, in that year's reporting currency. The s.38 income reference uses that year's first-day spot, distinct from its tax annual mean. |
| `abAt1Inputs.calculation.obligations.reassessmentOrCarrybackAdjustments` | boolean \| null |  | Whether reassessment/carryback adjustments affect interest or penalty bases. True or unanswered holds quantified exposure pending their dated legal treatment. |
| `abAt1Inputs.calculation.obligations.receivedDate` | string |  | Actual TRA receipt of the complete AT1 as YYYY-MM-DD, not its preparation or dispatch date. |
| `abAt1Inputs.calculation.obligations.refundInterest` | object |  | Reconciled assessed overpayment tranches and charges for ACTA s.47/CT-2R11 paragraph 69 refund interest. Complete return receipt and published dated credit rates are required. |
| `abAt1Inputs.calculation.obligations.refundInterest.assessedInterest` | string |  | Exact nonnegative assessed interest deducted in the account overpayment reconciliation, decimal text. |
| `abAt1Inputs.calculation.obligations.refundInterest.assessedPenalties` | string |  | Exact nonnegative assessed penalties deducted in the account overpayment reconciliation, decimal text. |
| `abAt1Inputs.calculation.obligations.refundInterest.assessedTax` | string |  | Actual assessed CAD tax when different from the AT1; optional for legacy reconciliations. The dated carryback credit roster restores its reductions to the interest base to avoid counting a carryback twice. |
| `abAt1Inputs.calculation.obligations.refundInterest.complete` | boolean |  | Confirm complete reconciliation of assessed charges and all overpayment tranches. |
| `abAt1Inputs.calculation.obligations.refundInterest.confirmed` | boolean |  | Confirm the assessed overpayment reconciliation; edits clear confirmation. |
| `abAt1Inputs.calculation.obligations.refundInterest.evidenceRef` | string |  | Assessed account reconciliation reference; maximum 500 characters. |
| `abAt1Inputs.calculation.obligations.refundInterest.specialRulesApply` | boolean \| null |  | Explicit review of47(2.1),47(4.21),47(4.31); true requires the applicable typed tranche/objection facts. Unknown facts never fall back to ordinary refund interest. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches` | array |  | Overpayment tranches with unique identities; amounts must reconcile to dated credits less assessed tax, interest and penalties. At most 500. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].amount` | string |  | CAD cash principal of this refund or repayment tranche. Security is captured separately and earns no refund interest. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].anticipatedPaymentId` | string |  | Existing line 082 payment identity referenced by the anticipatedReassessment adjustment and funding this positive non-interest-bearing allocation. The backend identifies a unique eligible payment automatically. With multiple possible sources, identify the actual source and split a tranche when multiple payments fund it. Omit for nil. The result retains the matched payment identity. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].aroseOn` | string |  | Actual overpayment date for ordinary/special-refund reconciliation. Disputed repayment interest instead derives the hypothetical-overpayment day under47(4)(c) from dated account credits. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].confirmed` | boolean |  | Confirm this tranche; edits clear confirmation. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment` | object |  | Reviewed47(2.1) assessment, cash, security, objection/appeal, written request and collection/court restrictions. Security earns no refund interest. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.appealFiledOn` | string |  | Reviewed appealFiledOn fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.assessedAmount` | string |  | Reviewed assessedAmount fact for ACTA47(2.1)/(4)(c). Exact nonnegative CAD amount, supported by the dated account/assessment record. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.assessmentId` | string |  | Reviewed assessmentId fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.assessmentResponseOn` | string |  | Reviewed assessmentResponseOn fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.collectionAuthorized` | boolean \| null |  | Reviewed collectionAuthorized fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.confirmed` | boolean |  | Reviewed confirmed fact for ACTA47(2.1)/(4)(c). Explicit confirmation plus evidenceRef is required; edits clear it. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.courtProhibitedAmount` | string |  | Reviewed courtProhibitedAmount fact for ACTA47(2.1)/(4)(c). Exact nonnegative CAD amount, supported by the dated account/assessment record. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.evidenceRef` | string |  | Reviewed evidenceRef fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.largeCorporation` | boolean \| null |  | Reviewed largeCorporation fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.notInControversy` | string |  | Reviewed notInControversy fact for ACTA47(2.1)/(4)(c). Exact nonnegative CAD amount, supported by the dated account/assessment record. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.objectionServedOn` | string |  | Reviewed objectionServedOn fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.paidOnAssessment` | string |  | Reviewed paidOnAssessment fact for ACTA47(2.1)/(4)(c). Exact nonnegative CAD amount, supported by the dated account/assessment record. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.requestReceivedOn` | string |  | Reviewed requestReceivedOn fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.responseStatus` | string |  | Reviewed responseStatus fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.route` | string |  | Reviewed route fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.securitySurrendered` | string |  | Reviewed securitySurrendered fact for ACTA47(2.1)/(4)(c). Exact nonnegative CAD amount, supported by the dated account/assessment record. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.securityValue` | string |  | Reviewed securityValue fact for ACTA47(2.1)/(4)(c). Exact nonnegative CAD amount, supported by the dated account/assessment record. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].disputedRepayment.taxShelterGift` | boolean \| null |  | Reviewed taxShelterGift fact for ACTA47(2.1)/(4)(c). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].evidenceRef` | string |  | Account evidence for principal, origin and settlement; maximum 500 characters. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].id` | string |  | Unique overpayment tranche identity, maximum 100 characters. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].kind` | string |  | Ordinary overpayment, disputedRepayment under47(2.1), or specialRefund under47(4.31). All amounts and security values are CAD. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].nonInterestBearingAmount` | string |  | CAD principal allocated by TRA from a payment held in anticipation of reassessment. Required, including explicit nil, when both ordinary and held funds could finance the tranche. Omit when dated credits establish wholly held or wholly ordinary funding. Must not exceed the tranche or identified line 082 payment. This portion earns no refund interest under CT-2R11 paragraph72; statutory disputed and special repayments retain ACTA47 treatment. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].objectionReduction` | object |  | Reviewed47(4.21) reassessment and three statutory predicates; interest is reduced by min(5% of qualifying interest,$10000), once per reassessment. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].objectionReduction.albertaObjectionFiled` | boolean \| null |  | Reviewed albertaObjectionFiled fact for ACTA47(4.21); match the reassessment identity across all of its refund tranches. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].objectionReduction.assessmentActionReassessment` | boolean \| null |  | Reviewed assessmentActionReassessment fact for ACTA47(4.21); match the reassessment identity across all of its refund tranches. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].objectionReduction.confirmed` | boolean |  | Reviewed confirmed fact for ACTA47(4.21); match the reassessment identity across all of its refund tranches. Explicit confirmation plus evidenceRef is required; edits clear it. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].objectionReduction.evidenceRef` | string |  | Reviewed evidenceRef fact for ACTA47(4.21); match the reassessment identity across all of its refund tranches. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].objectionReduction.otherJurisdictionLargeCorporationObjection` | boolean \| null |  | Reviewed otherJurisdictionLargeCorporationObjection fact for ACTA47(4.21); match the reassessment identity across all of its refund tranches. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].objectionReduction.reassessmentId` | string |  | Reviewed reassessmentId fact for ACTA47(4.21); match the reassessment identity across all of its refund tranches. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].satisfactoryApplicationReceivedOn` | string |  | Actual TRA receipt of the satisfactory application/notification: the47(4.31) interest start, without the ordinary return/balance-due floor. |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].section4111AssessmentConfirmed` | boolean |  | Confirm the overpayment was determined by reason of41(1.1), for47(2.5)/(4.31). |
| `abAt1Inputs.calculation.obligations.refundInterest.tranches[].settledOn` | string |  | Actual refund or application date, YYYY-MM-DD; omit while outstanding through review. |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents` | array |  | At most 500 individually reviewed effective-credit events for jacket 129/085/086/115/087. Each line total must reconcile exactly, separately from line 082. |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents[].amount` | string |  | Exact nonnegative decimal text, below 1e18 with at most 12 decimal places; no per-entry rounding or float conversion. |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents[].confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents[].effectiveDate` | string |  | TRA effective receipt or application date as YYYY-MM-DD, not the date a payment instruction was sent. |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents[].evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents[].id` | string |  | Reviewed Alberta id fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.obligations.refundableCreditEvents[].line` | string |  | Refundable Alberta jacket credit line, or sred for historical gross Schedule9.110 before recapture. This is an account-event identity, not a NetFile code. Current-tax SR&ED/QET portions use the statutory balance-due day; excess portions use the later claim/application receipt date. |
| `abAt1Inputs.calculation.obligations.section362Notices` | array |  | Retained CRA/Quebec assessments and loss determinations, or discovered Alberta errors under ACTA s.36.2. At most 100. Upload the notices in CRA assessments; review Alberta effect and retain the reference separately from actual TRA receipt. |
| `abAt1Inputs.calculation.obligations.section362Notices[]` | object |  |  |
| `abAt1Inputs.calculation.obligations.section362Notices[].albertaCalculationAffected` | boolean \| null |  | Reviewed determination whether the notice or error changes Alberta tax or credits. Unknown remains held; an explicit no uses the statutory no-change exception. |
| `abAt1Inputs.calculation.obligations.section362Notices[].confirmed` | boolean |  | Confirm the notice, Alberta effect and actual receipt/action facts. Editing clears confirmation. |
| `abAt1Inputs.calculation.obligations.section362Notices[].evidenceRef` | string |  | Reference to the notice kept in CRA assessments, or to the discovered-error review, maximum 500 characters. |
| `abAt1Inputs.calculation.obligations.section362Notices[].id` | string |  | Stable unique notice/error identity, maximum 100 characters. |
| `abAt1Inputs.calculation.obligations.section362Notices[].jurisdiction` | string |  | CRA or Quebec for notices; Alberta for a discovered return error. |
| `abAt1Inputs.calculation.obligations.section362Notices[].kind` | string |  | assessment, reassessment, lossDetermination, lossRedetermination, or discoveredError. Only the last concerns an Alberta return. |
| `abAt1Inputs.calculation.obligations.section362Notices[].normalReassessmentExpiresOn` | string |  | Reviewed normal reassessment expiry, YYYY-MM-DD. Required for discovered-error applicability and the s.43(1.2) review limit. |
| `abAt1Inputs.calculation.obligations.section362Notices[].traActedOn` | string |  | Actual date TRA assessed or determined credits based on the other-jurisdiction notice, discharging notification under s.36.2. A forecast or source upload is insufficient. |
| `abAt1Inputs.calculation.obligations.section362Notices[].traReceivedOn` | string |  | Actual TRA receipt of the required information, YYYY-MM-DD, distinct from uploading the source evidence. |
| `abAt1Inputs.calculation.obligations.section362Notices[].triggerDate` | string |  | Actual notice issue date or error-discovery date, YYYY-MM-DD. The backend adds ninety days to the later of this and the filing deadline. |
| `abAt1Inputs.calculation.obligations.specialBaseAdjustments` | string |  | Review of CT-2R11 paragraphs 57-59 instalment-base exceptions. None permits ordinary bases; wind-ups, rollovers, mutual-fund reductions and unknown status remain explicitly held. |
| `abAt1Inputs.calculation.ordinaryTaxTreatmentConfirmed` | boolean \| null |  | Confirms ordinary taxable-corporation treatment. Exempt and partially exempt calculations remain unavailable in this workpaper. |
| `abAt1Inputs.calculation.otherAdjustments` | object |  | Schedule 12 lines 040/041: include corresponding Alberta/federal items as pairs. An absent or explicitly excluded item contributes neither side. Active schedules own their Alberta components, including holds. |
| `abAt1Inputs.calculation.otherAdjustments.capitalGainsAndAbil` | object |  | Reviewed signed taxable Alberta capital gains plus negative ABIL when Schedule 18 is not active. With Schedule 18 active its computed 076+094 replaces this amount. |
| `abAt1Inputs.calculation.otherAdjustments.capitalGainsAndAbil.amount` | string |  | Exact signed Alberta contribution, except resource deficits and foreign-tax deductions are nonnegative magnitudes. An included nil requires evidence; absence excludes both sides. |
| `abAt1Inputs.calculation.otherAdjustments.capitalGainsAndAbil.confirmed` | boolean |  | Confirm this Alberta amount after reviewing inclusion and supporting evidence. |
| `abAt1Inputs.calculation.otherAdjustments.capitalGainsAndAbil.evidenceRef` | string |  | Supporting reference for this specific Alberta component. |
| `abAt1Inputs.calculation.otherAdjustments.capitalGainsAndAbil.included` | boolean |  | Explicitly include this reviewed item in both lines 040/041, or exclude both sides. Active S18/S15/S4 producer conditions replace this answer for their component. Retained legacy amounts need a fresh inclusion answer. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateAdjustment` | object |  | Reviewed signed Alberta contribution due to ITA s.152(6.1), paired only when included with negative canonical federal S1 line 218. Retains independent Alberta evidence; no automatic Alberta foreign-affiliate calculation. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateAdjustment.amount` | string |  | Exact signed Alberta contribution, except resource deficits and foreign-tax deductions are nonnegative magnitudes. An included nil requires evidence; absence excludes both sides. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateAdjustment.confirmed` | boolean |  | Confirm this Alberta amount after reviewing inclusion and supporting evidence. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateAdjustment.evidenceRef` | string |  | Supporting reference for this specific Alberta component. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateAdjustment.included` | boolean |  | Explicitly include this reviewed item in both lines 040/041, or exclude both sides. Active S18/S15/S4 producer conditions replace this answer for their component. Retained legacy amounts need a fresh inclusion answer. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome` | object |  | Reviewed signed foreign-affiliate discretionary income component with its own separately evidenced federal counterpart. Exclude the separately captured s.152(6.1) adjustment from both sides of this pair. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.amount` | string |  | Exact signed Alberta contribution, except resource deficits and foreign-tax deductions are nonnegative magnitudes. An included nil requires evidence; absence excludes both sides. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.confirmed` | boolean |  | Confirm this Alberta amount after reviewing inclusion and supporting evidence. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.evidenceRef` | string |  | Supporting reference for this specific Alberta component. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.federal` | object |  | Separately evidenced reviewed signed federal counterpart; resource deficit additions must be nonnegative and restricted to the corresponding included Alberta deficits, excluding unrelated S1 additions. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.federal.amount` | string |  | Exact decimal text for the corresponding federal amount; no binary floats or aggregate S1 amount D. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.federal.confirmed` | boolean |  | Confirm the federal counterpart independently of the Alberta amount. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.federal.evidenceRef` | string |  | Independent supporting reference for this federal counterpart and its correspondence to the Alberta item. |
| `abAt1Inputs.calculation.otherAdjustments.foreignAffiliateIncome.included` | boolean |  | Explicitly include this reviewed item in both lines 040/041, or exclude both sides. Active S18/S15/S4 producer conditions replace this answer for their component. Retained legacy amounts need a fresh inclusion answer. |
| `abAt1Inputs.calculation.otherAdjustments.foreignTaxDeduction` | object |  | Reviewed nonnegative ACTA 8(2.2) deduction when S4 is absent; otherwise S4 supplies the total. Included only when total Alberta/federal deductions differ; both sides enter negatively. |
| `abAt1Inputs.calculation.otherAdjustments.foreignTaxDeduction.amount` | string |  | Exact signed Alberta contribution, except resource deficits and foreign-tax deductions are nonnegative magnitudes. An included nil requires evidence; absence excludes both sides. |
| `abAt1Inputs.calculation.otherAdjustments.foreignTaxDeduction.confirmed` | boolean |  | Confirm this Alberta amount after reviewing inclusion and supporting evidence. |
| `abAt1Inputs.calculation.otherAdjustments.foreignTaxDeduction.evidenceRef` | string |  | Supporting reference for this specific Alberta component. |
| `abAt1Inputs.calculation.otherAdjustments.foreignTaxDeduction.included` | boolean |  | Explicitly include this reviewed item in both lines 040/041, or exclude both sides. Active S18/S15/S4 producer conditions replace this answer for their component. Retained legacy amounts need a fresh inclusion answer. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary` | object |  | Reviewed signed pair for discretionary account items not specifically listed on Schedule 12. Do not duplicate any other included component. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.amount` | string |  | Exact signed Alberta contribution, except resource deficits and foreign-tax deductions are nonnegative magnitudes. An included nil requires evidence; absence excludes both sides. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.confirmed` | boolean |  | Confirm this Alberta amount after reviewing inclusion and supporting evidence. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.evidenceRef` | string |  | Supporting reference for this specific Alberta component. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.federal` | object |  | Separately evidenced reviewed signed federal counterpart; resource deficit additions must be nonnegative and restricted to the corresponding included Alberta deficits, excluding unrelated S1 additions. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.federal.amount` | string |  | Exact decimal text for the corresponding federal amount; no binary floats or aggregate S1 amount D. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.federal.confirmed` | boolean |  | Confirm the federal counterpart independently of the Alberta amount. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.federal.evidenceRef` | string |  | Independent supporting reference for this federal counterpart and its correspondence to the Alberta item. |
| `abAt1Inputs.calculation.otherAdjustments.otherDiscretionary.included` | boolean |  | Explicitly include this reviewed item in both lines 040/041, or exclude both sides. Active S18/S15/S4 producer conditions replace this answer for their component. Retained legacy amounts need a fresh inclusion answer. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits` | object |  | Reviewed nonnegative Alberta C/D/F/G/H resource deficit total when Schedule 15 is not active; its active producer replaces this amount. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.amount` | string |  | Exact signed Alberta contribution, except resource deficits and foreign-tax deductions are nonnegative magnitudes. An included nil requires evidence; absence excludes both sides. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.confirmed` | boolean |  | Confirm this Alberta amount after reviewing inclusion and supporting evidence. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.evidenceRef` | string |  | Supporting reference for this specific Alberta component. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.federal` | object |  | Separately evidenced federal resource deficit additions when no canonical federal S12 result exists. The canonical per-pool grossRecovery less recoveryInBookIncome takes precedence; invalid/provisional producers hold. Exclude unrelated S1 additions and foreign disposition income. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.federal.amount` | string |  | Exact decimal text for the corresponding federal amount; no binary floats or aggregate S1 amount D. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.federal.confirmed` | boolean |  | Confirm the federal counterpart independently of the Alberta amount. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.federal.evidenceRef` | string |  | Independent supporting reference for this federal counterpart and its correspondence to the Alberta item. |
| `abAt1Inputs.calculation.otherAdjustments.resourceDeficits.included` | boolean |  | Explicitly include this reviewed item in both lines 040/041, or exclude both sides. Active S18/S15/S4 producer conditions replace this answer for their component. Retained legacy amounts need a fresh inclusion answer. |
| `abAt1Inputs.calculation.otherExplanation` | string |  | Supporting explanation for Schedule 12 line 040. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax` | object |  | Complete characterization of other-province tax liabilities. Replaces the reviewed line 042 amount when present; an incomplete roster remains held. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.complete` | boolean |  | Confirm the roster includes all relevant tax liabilities, or is explicitly empty when none exist. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.confirmed` | boolean |  | Confirm the complete characterization after reviewing its evidence; clear when the roster or period changes. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.evidenceRef` | string |  | Supporting reference for the complete characterization. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities` | array |  | Unique tax liabilities, classified separately as capital tax or other business tax. Never use all GIFI 8762 as capital tax. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[]` | object |  | One separately identified tax liability and its federal deduction treatment. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[].amount` | string |  | Exact nonnegative decimal text for this liability. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[].character` | string |  | Capital tax or other business tax, established from the supporting tax assessment or workpaper. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[].confirmed` | boolean |  | Confirm after reviewing the liability, jurisdiction, tax character and federal treatment; clear when any changes. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[].deductedFederally` | boolean \| null |  | Whether this actual liability was deducted in arriving at the canonical federal net income. Only deducted capital tax enters Schedule 12 line 042. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[].evidenceRef` | string |  | Supporting tax assessment or workpaper reference for the liability and characterization. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[].id` | string |  | Stable unique liability identity. |
| `abAt1Inputs.calculation.otherProvinceCapitalTax.liabilities[].jurisdiction` | string |  | Canadian province or territory other than Alberta to which this liability relates. |
| `abAt1Inputs.calculation.payments` | object |  | Complete dated CAD credits to the Alberta income-tax account for this taxation year. Replaces reviewed jacket 082 whenever present; incomplete entries never fall back to the legacy total. |
| `abAt1Inputs.calculation.payments.asOf` | string |  | Actual reconciliation/statement date as YYYY-MM-DD. All effective credits must be on or before this date. |
| `abAt1Inputs.calculation.payments.complete` | boolean |  | Confirms the roster includes all account credits relevant to this reconciliation date. |
| `abAt1Inputs.calculation.payments.confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.payments.currency` | string |  | Reviewed Alberta currency fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.payments.entries` | array |  | At most 500 individually evidenced Alberta account credits. An explicitly reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.payments.entries[]` | object |  |  |
| `abAt1Inputs.calculation.payments.entries[].amount` | string |  | Exact nonnegative decimal text, below 1e18 with at most 12 decimal places; no per-entry rounding or float conversion. |
| `abAt1Inputs.calculation.payments.entries[].confirmed` | boolean |  | True only after reviewing the stated facts against the evidence; clear on dependent input changes. |
| `abAt1Inputs.calculation.payments.entries[].effectiveDate` | string |  | TRA effective receipt or application date as YYYY-MM-DD, not the date a payment instruction was sent. |
| `abAt1Inputs.calculation.payments.entries[].evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.payments.entries[].id` | string |  | Reviewed Alberta id fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.payments.entries[].kind` | string |  | Reviewed Alberta kind fact; bounded capture validated against TRA11722 rev 2025-07 and Chapter 3 v2026.4. Unanswered facts remain held. |
| `abAt1Inputs.calculation.payments.entries[].notReportedElsewhereConfirmed` | boolean |  | Confirms this account credit is not also reported as IEG, IDMTC, capital gains refund, FTTC or QET on another jacket line. |
| `abAt1Inputs.calculation.payments.entries[].sourceYearEnd` | string |  | Prior taxation-year end for a prior-year overpayment applied; required only for that credit kind. |
| `abAt1Inputs.calculation.payments.entries[].taxationYearEnd` | string |  | Year to which TRA credited this amount. Must match the canonical current taxation-year end. |
| `abAt1Inputs.calculation.payments.evidenceRef` | string |  | Supporting record reference, at most 500 characters; required with every reviewed fact or roster. |
| `abAt1Inputs.calculation.precedingYearEnds` | array |  | The three actual preceding taxation-year ends, newest first; do not subtract calendar years from the current end. |
| `abAt1Inputs.calculation.precedingYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.research` | object |  | Independent Alberta Schedule 16 preparation inputs. When present, its calculation owns Schedule 12 line 034; an incomplete workpaper never falls back to a reviewed component. |
| `abAt1Inputs.calculation.research.confirmed` | boolean |  | Reviewed Alberta Schedule 16 workpaper. All amounts retain their separate evidence and confirmation. |
| `abAt1Inputs.calculation.research.continuity` | string |  | Declared Alberta continuity case. Only ordinary continuity is computed; amalgamation, wind-up, entry/re-entry, currency and exempt-status transitions remain held. |
| `abAt1Inputs.calculation.research.controlBusinessId` | string |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.research.controlBusinesses` | array |  | One to 500 business segments under adopted ITA 37(6.1). Original pools and prior absorption reconcile to their reviewed totals; business deductions reconcile to line 020. Each business income stream must exclude income counted for another business. |
| `abAt1Inputs.calculation.research.controlBusinesses[]` | object |  |  |
| `abAt1Inputs.calculation.research.controlBusinesses[].businessId` | string |  | Unique shared transition business-stream identity, at most 1000 characters. |
| `abAt1Inputs.calculation.research.controlBusinesses[].confirmed` | boolean |  | Confirmation of the business segment and its complete allocation evidence. |
| `abAt1Inputs.calculation.research.controlBusinesses[].deductionClaim` | object |  | Current s.37 deduction attributable to this business; all business amounts sum to Schedule 16 line 020. |
| `abAt1Inputs.calculation.research.controlBusinesses[].deductionClaim.amount` | string |  | Nonnegative exact decimal text, at most 80 characters. |
| `abAt1Inputs.calculation.research.controlBusinesses[].deductionClaim.confirmed` | boolean |  | Preparer confirmation of the business deduction allocation. |
| `abAt1Inputs.calculation.research.controlBusinesses[].deductionClaim.evidenceRef` | string |  | Current business deduction allocation reference, at most 1000 characters. |
| `abAt1Inputs.calculation.research.controlBusinesses[].evidenceRef` | string |  | Business pool and nonduplicated income allocation evidence, at most 1000 characters. |
| `abAt1Inputs.calculation.research.controlBusinesses[].originalPreControlPool` | object |  | Independent Alberta element A for this business immediately before the last loss restriction event, under ITA 37(6.1)(a). |
| `abAt1Inputs.calculation.research.controlBusinesses[].originalPreControlPool.amount` | string |  | Nonnegative exact decimal text, at most 80 characters. |
| `abAt1Inputs.calculation.research.controlBusinesses[].originalPreControlPool.confirmed` | boolean |  | Preparer confirmation of this business pool and its evidence. |
| `abAt1Inputs.calculation.research.controlBusinesses[].originalPreControlPool.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.research.controlBusinesses[].predecessorId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.research.controlBusinesses[].priorQualifyingAbsorption` | object |  | Sum of prior-year lesser-of qualifying business income and its s.37 deduction under ITA 37(6.1)(b)(ii), capped at the original business pool. |
| `abAt1Inputs.calculation.research.controlBusinesses[].priorQualifyingAbsorption.amount` | string |  | Nonnegative exact decimal text, at most 80 characters. |
| `abAt1Inputs.calculation.research.controlBusinesses[].priorQualifyingAbsorption.confirmed` | boolean |  | Preparer confirmation of prior qualifying absorption. |
| `abAt1Inputs.calculation.research.controlBusinesses[].priorQualifyingAbsorption.evidenceRef` | string |  | Prior business income and deduction reconciliation reference, at most 1000 characters. |
| `abAt1Inputs.calculation.research.deductionClaim` | object |  | Reviewed Alberta discretionary deduction at line 020, limited to available line 018. |
| `abAt1Inputs.calculation.research.deductionClaim.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.research.deductionClaim.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.research.deductionClaim.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.research.evidenceRef` | string |  | Supporting reference for the Alberta research pool and scope, at most 1000 characters. |
| `abAt1Inputs.calculation.research.innovationEmploymentGrant` | object |  | Reviewed IEG amount, tied to jacket line 129 where available. Nonzero grant assistance ordering remains held; Schedule 29 is not computed here. |
| `abAt1Inputs.calculation.research.innovationEmploymentGrant.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.research.innovationEmploymentGrant.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.research.innovationEmploymentGrant.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.research.lossRestrictionApplies` | boolean \| null |  | Explicit current or surviving prior loss-restriction status under ITA 37(6.1); a restriction or unanswered status holds the pool. |
| `abAt1Inputs.calculation.research.openingPool` | object |  | Independent prior Alberta Schedule 16 closing pool for line 012; never copied from the federal opening pool. |
| `abAt1Inputs.calculation.research.openingPool.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.research.openingPool.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.research.openingPool.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.research.originalPreControlPool` | object |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.research.originalPreControlPool.amount` | string |  | Independent Alberta assessed pool or prior qualifying absorption; review with its evidence. |
| `abAt1Inputs.calculation.research.originalPreControlPool.confirmed` | boolean |  | Independent Alberta assessed pool or prior qualifying absorption; review with its evidence. |
| `abAt1Inputs.calculation.research.originalPreControlPool.evidenceRef` | string |  | Independent Alberta assessed pool or prior qualifying absorption; review with its evidence. |
| `abAt1Inputs.calculation.research.priorQualifyingAbsorption` | object |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.research.priorQualifyingAbsorption.amount` | string |  | Independent Alberta assessed pool or prior qualifying absorption; review with its evidence. |
| `abAt1Inputs.calculation.research.priorQualifyingAbsorption.confirmed` | boolean |  | Independent Alberta assessed pool or prior qualifying absorption; review with its evidence. |
| `abAt1Inputs.calculation.research.priorQualifyingAbsorption.evidenceRef` | string |  | Independent Alberta assessed pool or prior qualifying absorption; review with its evidence. |
| `abAt1Inputs.calculation.research.provincialAssistance` | object |  | Reviewed provincial assistance already included in canonical T661 429; reconciled, never deducted a second time. |
| `abAt1Inputs.calculation.research.provincialAssistance.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.research.provincialAssistance.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.research.provincialAssistance.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.research.singleBusinessPoolConfirmed` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.research.transferredPool` | object |  | Independent Alberta pool transfer at line 014. Nonzero transfers require the unimplemented Alberta transition calculation. |
| `abAt1Inputs.calculation.research.transferredPool.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.research.transferredPool.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.research.transferredPool.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves` | object |  | Independent Alberta Schedule 17 preparation inputs. Its totals own Schedule 12 lines 036 and 038 whenever present; no federal reserve is copied. |
| `abAt1Inputs.calculation.reserves.basisEntries` | array |  | At most 500 closed statutory reserve bases, each identifying its printed category and current/prior period, with separately reviewed terms and evidence. The backend computes the ceiling and any section 35 prior maximum; a reviewed claim never waives it. |
| `abAt1Inputs.calculation.reserves.basisEntries[]` | object |  |  |
| `abAt1Inputs.calculation.reserves.basisEntries[].armLengthCreditRisks` | boolean \| null |  | Arm length credit risks under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].armLengthWarrantyAgreement` | boolean \| null |  | Arm length warranty agreement under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].authorityRequiresActuarialClaims` | boolean \| null |  | Authority requires actuarial claims under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].basisYearStart` | string |  | Actual insurer taxation-year start, YYYY-MM-DD, at most 10 characters. Reg 1400/1404 IFRS17 rules apply to years beginning after 2022, including the retroactive S.C.2026 c.3 s.107 reinsurance adjustment. |
| `abAt1Inputs.calculation.reserves.basisEntries[].bottles` | boolean \| null |  | Bottles under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].category` | string |  | Closed selection: undeliveredGoodsAndServices, prepaidRent, returnableContainers, unpaidAmounts, insurancePolicy, bank, other. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.basisEntries[].claim` | object |  | Claim under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].claim.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].claim.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].claim.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].clauseCLoansExcludedFromOtherReserves` | boolean \| null |  | Clause c loans excluded from other reserves under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].deferredDueDate` | string |  | Deferred due date, YYYY-MM-DD, at most 10 characters; the backend applies the statutory timing rule. |
| `abAt1Inputs.calculation.reserves.basisEntries[].evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].exemptInYearOrFollowingYear` | boolean \| null |  | Exempt in year or following year under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].federalDeductionStatus` | string |  | Closed selection: deductionMade, noDeduction. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.basisEntries[].federalIncomeInclusionDescription` | string |  | Exact unique description of the canonical federal S1 other-addition row (605/295) for Reg 1400(2)/1404(2) policy income. Selects the canonical amount by identity; never a keyed federal income amount. Required for a negative Alberta prescribed reserve. |
| `abAt1Inputs.calculation.reserves.basisEntries[].federalOtherReserveIsOnlyLifePolicy` | boolean \| null |  | Federal other reserve is only life policy under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].federalOtherReserveIsOnlyNonLifePolicy` | boolean \| null |  | Explicit source classification that canonical federal S13 box 240 contains only this non-life policy reserve. A mixed total cannot establish its component; no federal amount is re-entered. |
| `abAt1Inputs.calculation.reserves.basisEntries[].financialInstitutionOrLendingBusiness` | boolean \| null |  | Financial institution or lending business under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].futureObligation` | boolean \| null |  | Future obligation under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].id` | string |  | Unique source identity within this period, at most 1000 characters. A contract or reserve source cannot be counted twice. |
| `abAt1Inputs.calculation.reserves.basisEntries[].insuranceBusinessInCanada` | boolean \| null |  | Insurance business in canada under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].insuranceContractEnd` | string |  | Insurance contract end, YYYY-MM-DD, at most 10 characters; the backend applies the statutory timing rule. |
| `abAt1Inputs.calculation.reserves.basisEntries[].insuranceContractIsLife` | boolean \| null |  | Insurance contract is life under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].insuranceContractStart` | string |  | Insurance contract start, YYYY-MM-DD, at most 10 characters; the backend applies the statutory timing rule. |
| `abAt1Inputs.calculation.reserves.basisEntries[].insuranceDefinitionsConfirmed` | boolean |  | Review the ITA 138(12) statutory actuarial amounts, IFRS assumptions, reinsurance netting and excluded-policy scope under Reg 1402/1406. This does not waive the computed ceiling. |
| `abAt1Inputs.calculation.reserves.basisEntries[].insurancePremiumIncurredDate` | string |  | Insurance premium incurred date, YYYY-MM-DD, at most 10 characters; the backend applies the statutory timing rule. |
| `abAt1Inputs.calculation.reserves.basisEntries[].insurerCarriesOnBusinessInCanada` | boolean \| null |  | Insurer carries on business in canada under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].kind` | string |  | Closed selection: goods, services, foodDrink, transportation, prepaidRent, containers, instalmentRealProperty, instalmentOtherProperty, manufacturerWarranty, insuranceAgentCommissions, bankImpairedLoans, bankCreditRisks, lifeInsurance, nonLifeInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.basisEntries[].lendingOrInsuranceBusiness` | boolean \| null |  | Lending or insurance business under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].manufacturerOrRelatedManufacturer` | boolean \| null |  | Manufacturer or related manufacturer under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].nonLifeInsuranceBusiness` | boolean \| null |  | Non life insurance business under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].nonResidentWithoutCanadianBusiness` | boolean \| null |  | Non resident without canadian business under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].other1383aDeductionsEqualFederal` | boolean \| null |  | Other1383a deductions equal federal under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].period` | string |  | Closed selection: current, prior. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.basisEntries[].prescribedBankReservesApply` | boolean \| null |  | Prescribed bank reserves apply under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].purchaserRelationship` | string |  | Closed selection: unrelated, controlledBySeller, controlsSeller, commonControl, majorityInterestPartnership. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.basisEntries[].qualifyingImpairedLoans` | boolean \| null |  | Qualifying impaired loans under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims` | array |  | Received unpaid claims under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaimsComplete` | boolean |  | Received unpaid claims complete under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[]` | object |  |  |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].id` | string |  | Unique source identity within this period, at most 1000 characters. A contract or reserve source cannot be counted twice. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].policyLiability` | object |  | Policy liability under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].policyLiability.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].policyLiability.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].policyLiability.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].receivedDate` | string |  | Received date under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].reportedReserve` | object |  | Reported reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].reportedReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].reportedReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].receivedUnpaidClaims[].reportedReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].requiredToReportToOsfi` | boolean \| null |  | Required to report to osfi under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].saleDate` | string |  | Sale date, YYYY-MM-DD, at most 10 characters; the backend applies the statutory timing rule. |
| `abAt1Inputs.calculation.reserves.basisEntries[].section20_7Exclusion` | string |  | Closed selection: none, guaranteeIndemnityWarranty, cashMethod, insurance, reclamation. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.basisEntries[].sectoralReservesExcluded` | boolean \| null |  | Sectoral reserves excluded under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms` | object |  | Terms under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.commissionIncludedInIncome` | object |  | Commission included in income under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.commissionIncludedInIncome.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.commissionIncludedInIncome.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.commissionIncludedInIncome.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.contractualServiceMargin` | object |  | Contractual service margin under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.contractualServiceMargin.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.contractualServiceMargin.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.contractualServiceMargin.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAcquisitionDiscount` | object |  | Designated acquisition discount under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAcquisitionDiscount.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAcquisitionDiscount.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAcquisitionDiscount.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAmortizedCost` | object |  | Designated amortized cost under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAmortizedCost.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAmortizedCost.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedAmortizedCost.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedBadDebtAdjustment` | object |  | Designated bad debt adjustment under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedBadDebtAdjustment.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedBadDebtAdjustment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedBadDebtAdjustment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedReportedReserve` | object |  | Designated reported reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedReportedReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedReportedReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.designatedReportedReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReasonable` | object |  | Earthquake reasonable under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReasonable.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReasonable.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReasonable.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReported` | object |  | Earthquake reported under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReported.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReported.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.earthquakeReported.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.expectedRepayments` | object |  | Expected repayments under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.expectedRepayments.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.expectedRepayments.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.expectedRepayments.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.futurePeriodRent` | object |  | Future period rent under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.futurePeriodRent.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.futurePeriodRent.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.futurePeriodRent.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapCreditRiskReserve` | object |  | Gaap credit risk reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapCreditRiskReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapCreditRiskReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapCreditRiskReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapImpairmentAllowance` | object |  | Gaap impairment allowance under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapImpairmentAllowance.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapImpairmentAllowance.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.gaapImpairmentAllowance.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundPremiums` | object |  | Group refund premiums under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundPremiums.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundPremiums.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundPremiums.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReasonable` | object |  | Group refund reasonable under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReasonable.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReasonable.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReasonable.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReported` | object |  | Group refund reported under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReported.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReported.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupRefundReported.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupTermUnearnedPremiums` | object |  | Group term unearned premiums under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupTermUnearnedPremiums.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupTermUnearnedPremiums.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.groupTermUnearnedPremiums.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.guaranteeFund` | object |  | Guarantee fund under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.guaranteeFund.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.guaranteeFund.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.guaranteeFund.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.impairedLoanReasonableReserve` | object |  | Impaired loan reasonable reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.impairedLoanReasonableReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.impairedLoanReasonableReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.impairedLoanReasonableReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.includedInIncome` | object |  | Included in income under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.includedInIncome.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.includedInIncome.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.includedInIncome.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.insurancePremiumForFuturePeriod` | object |  | Insurance premium for future period under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.insurancePremiumForFuturePeriod.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.insurancePremiumForFuturePeriod.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.insurancePremiumForFuturePeriod.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityIncurredClaims` | object |  | Liability incurred claims under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityIncurredClaims.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityIncurredClaims.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityIncurredClaims.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityRemainingCoverage` | object |  | Liability remaining coverage under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityRemainingCoverage.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityRemainingCoverage.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.liabilityRemainingCoverage.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherClaimsLiability` | object |  | Other claims liability under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherClaimsLiability.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherClaimsLiability.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherClaimsLiability.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReasonable` | object |  | Other risks reasonable under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReasonable.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReasonable.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReasonable.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReported` | object |  | Other risks reported under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReported.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReported.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.otherRisksReported.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLiability` | object |  | Policy liability under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLiability.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLiability.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLiability.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLoansAndInterest` | object |  | Policy loans and interest under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLoansAndInterest.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLoansAndInterest.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.policyLoansAndInterest.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksLiability` | object |  | Post1995 risks liability under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksLiability.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksLiability.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksLiability.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksReported` | object |  | Post1995 risks reported under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksReported.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksReported.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.post1995RisksReported.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReasonable` | object |  | Pre1996 risks reasonable under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReasonable.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReasonable.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReasonable.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReported` | object |  | Pre1996 risks reported under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReported.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReported.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.pre1996RisksReported.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorActualReserve` | object |  | Prior actual reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorActualReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorActualReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorActualReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorFederalPolicyReserve` | object |  | Prior federal policy reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorFederalPolicyReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorFederalPolicyReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.priorFederalPolicyReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reasonableReserve` | object |  | Reasonable reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reasonableReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reasonableReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reasonableReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceHeld` | object |  | Reinsurance held under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceHeld.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceHeld.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceHeld.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceOtherClaims` | object |  | Reinsurance other claims under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceOtherClaims.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceOtherClaims.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceOtherClaims.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceServiceMargin` | object |  | Reinsurance service margin under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceServiceMargin.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceServiceMargin.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reinsuranceServiceMargin.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reportedPolicyReserve` | object |  | Reported policy reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reportedPolicyReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reportedPolicyReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.reportedPolicyReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.saleProfit` | object |  | Sale profit under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.saleProfit.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.saleProfit.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.saleProfit.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.sellingPrice` | object |  | Selling price under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.sellingPrice.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.sellingPrice.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.sellingPrice.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specialUnearnedPremiums` | object |  | Special unearned premiums under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specialUnearnedPremiums.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specialUnearnedPremiums.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specialUnearnedPremiums.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAcquisitionDiscount` | object |  | Specified acquisition discount under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAcquisitionDiscount.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAcquisitionDiscount.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAcquisitionDiscount.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAmortizedCost` | object |  | Specified amortized cost under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAmortizedCost.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAmortizedCost.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedAmortizedCost.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedBadDebtAdjustment` | object |  | Specified bad debt adjustment under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedBadDebtAdjustment.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedBadDebtAdjustment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedBadDebtAdjustment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedReserveAdjustment` | object |  | Specified reserve adjustment under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedReserveAdjustment.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedReserveAdjustment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.specifiedReserveAdjustment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsLiability` | object |  | Structured claims liability under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsLiability.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsLiability.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsLiability.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsReported` | object |  | Structured claims reported under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsReported.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsReported.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.structuredClaimsReported.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.terminationRefunds` | object |  | Termination refunds under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.terminationRefunds.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.terminationRefunds.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.terminationRefunds.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedCurrentReceipts` | object |  | Unearned current receipts under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedCurrentReceipts.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedCurrentReceipts.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedCurrentReceipts.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedReinsuranceCommissions` | object |  | Unearned reinsurance commissions under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedReinsuranceCommissions.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedReinsuranceCommissions.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unearnedReinsuranceCommissions.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unpaidAfterYearEnd` | object |  | Unpaid after year end under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unpaidAfterYearEnd.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unpaidAfterYearEnd.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unpaidAfterYearEnd.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsLiability` | object |  | Unreported claims liability under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsLiability.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsLiability.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsLiability.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsReportedReserve` | object |  | Unreported claims reported reserve under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsReportedReserve.amount` | string |  | Exact decimal text, at most 80 characters. Ordinary amounts are nonnegative; sale profit and statutory insurance liabilities, reported reserves, CSM and reinsurance terms retain their legal signs. Requires the separate source reference and confirmation. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsReportedReserve.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.basisEntries[].terms.unreportedClaimsReportedReserve.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.basisEntries[].warrantyOnlyGoodsOrServices` | boolean \| null |  | Warranty only goods or services under the selected adopted ITA/Regulation reserve provision; retain its evidence and explicit review. |
| `abAt1Inputs.calculation.reserves.categories` | object |  | The eight printed Alberta reserve categories, each retaining its own opening, transfer and discretionary closing amount. |
| `abAt1Inputs.calculation.reserves.categories.bank` | object |  | Separately reviewed Alberta bank reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.bank.closingReserve` | object |  | Independent Alberta Schedule 17 line 075. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.bank.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.bank.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.bank.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.bank.openingReserve` | object |  | Independent Alberta Schedule 17 line 015. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.bank.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.bank.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.bank.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.bank.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.bank.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.bank.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.bank.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.bank.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.bank.transferredReserve` | object |  | Independent Alberta Schedule 17 line 045. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.bank.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.bank.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.bank.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts` | object |  | Separately reviewed Alberta doubtfulDebts reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.closingReserve` | object |  | Independent Alberta Schedule 17 line 061. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis` | object |  | Ordinary trade-debt eligibility and statutory cap evidence for Schedule 17 line 061 (ITA 20(1)(l)(i), adopted by ACTA 8(1)). |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.confirmed` | boolean |  | True only after reviewing the ordinary trade-debt eligibility and both limits. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.evidenceRef` | string |  | Alberta receivables and reasonableness evidence, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.ordinaryTradeDebts` | boolean \| null |  | True only for ordinary trade debts. Capture prescribed lending reserves in the bank category's statutory basis instead. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.previouslyIncludedInIncome` | boolean \| null |  | Confirm the doubtful debts were included in income in this or a prior taxation year. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.reasonableReserve` | object |  | Reviewed reasonable Alberta reserve limit; the closing claim cannot exceed this amount or the supporting receivables. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.reasonableReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.reasonableReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.reasonableReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.receivableAmount` | object |  | Reviewed receivables supporting the Alberta closing doubtful-debt reserve. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.receivableAmount.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.receivableAmount.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.doubtfulDebtBasis.receivableAmount.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.openingReserve` | object |  | Independent Alberta Schedule 17 line 001. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.ordinaryTradeDebts` | boolean \| null |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.previouslyIncludedInIncome` | boolean \| null |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.reasonableReserve` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.reasonableReserve.amount` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.reasonableReserve.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.reasonableReserve.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.receivableAmount` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.receivableAmount.amount` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.receivableAmount.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeDoubtfulDebtBasis.receivableAmount.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.transferredReserve` | object |  | Independent Alberta Schedule 17 line 031. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.doubtfulDebts.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy` | object |  | Separately reviewed Alberta insurancePolicy reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.closingReserve` | object |  | Independent Alberta Schedule 17 line 073. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.openingReserve` | object |  | Independent Alberta Schedule 17 line 013. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.transferredReserve` | object |  | Independent Alberta Schedule 17 line 043. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.insurancePolicy.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.other` | object |  | Separately reviewed Alberta other reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.other.closingReserve` | object |  | Independent Alberta Schedule 17 line 077. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.other.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.other.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.other.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.other.openingReserve` | object |  | Independent Alberta Schedule 17 line 017. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.other.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.other.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.other.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.other.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.other.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.other.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.other.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.other.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.other.transferredReserve` | object |  | Independent Alberta Schedule 17 line 047. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.other.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.other.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.other.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent` | object |  | Separately reviewed Alberta prepaidRent reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.closingReserve` | object |  | Independent Alberta Schedule 17 line 065. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.openingReserve` | object |  | Independent Alberta Schedule 17 line 005. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.transferredReserve` | object |  | Independent Alberta Schedule 17 line 035. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.prepaidRent.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers` | object |  | Separately reviewed Alberta returnableContainers reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.closingReserve` | object |  | Independent Alberta Schedule 17 line 069. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.openingReserve` | object |  | Independent Alberta Schedule 17 line 009. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.transferredReserve` | object |  | Independent Alberta Schedule 17 line 039. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.returnableContainers.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices` | object |  | Separately reviewed Alberta undeliveredGoodsAndServices reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.closingReserve` | object |  | Independent Alberta Schedule 17 line 063. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.openingReserve` | object |  | Independent Alberta Schedule 17 line 003. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.transferredReserve` | object |  | Independent Alberta Schedule 17 line 033. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.undeliveredGoodsAndServices.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts` | object |  | Separately reviewed Alberta unpaidAmounts reserve category; no automatic federal balance or claim. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.closingReserve` | object |  | Independent Alberta Schedule 17 line 071. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.closingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.closingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.closingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.openingReserve` | object |  | Independent Alberta Schedule 17 line 011. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.openingReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.openingReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.openingReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.preChangeNoEligibleReserve` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.prescribedTreatment` | object |  | Reviewed classification of this category as ordinary, prescribed-bank, prescribed-life or federal-matching non-life treatment. Required per category when prescribed rules apply, including nil claims. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.prescribedTreatment.confirmed` | boolean |  | Preparer confirmation of this fact and its supporting source; changing a dependent fact clears the review. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.prescribedTreatment.evidenceRef` | string |  | Supporting forecast, contract, valuation, actuarial report or assessment reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.prescribedTreatment.kind` | string |  | Closed selection: ordinary, bankPrescribed, lifePrescribed, nonLifeFederalMatch, mixedInsurance. Review with the statutory basis evidence. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.transferredReserve` | object |  | Independent Alberta Schedule 17 line 041. Eligibility and ceilings remain enforced or explicitly held; evidence cannot waive a hold. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.transferredReserve.amount` | string |  | Exact nonnegative decimal text for this independent Alberta input; bounded to 80 characters. An unanswered draft is not nil. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.transferredReserve.confirmed` | boolean |  | True only after reviewing this amount and evidence; clear when its facts change. |
| `abAt1Inputs.calculation.reserves.categories.unpaidAmounts.transferredReserve.evidenceRef` | string |  | Supporting Alberta document reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.confirmed` | boolean |  | True only after reviewing the independent Alberta reserve workpaper; category amounts require separate confirmations. |
| `abAt1Inputs.calculation.reserves.continuity` | string |  | Closed Alberta continuity case. Shared transition facts establish inherited and entry balances. Section35(3)(b) prior maxima use adopted sections20/138/140; section32 agent reserves retain their actual prior reversal. |
| `abAt1Inputs.calculation.reserves.evidenceRef` | string |  | Supporting reference for the separate Alberta reserves and continuity, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents` | object |  | Reviewed complete partition of canonical federal S13 line 240 into life-policy, non-life-policy and other reserves. Every component needs evidence and confirmation, including nil; their sum must equal the canonical federal total. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.lifePolicy` | object |  | Identified federal other-reserve component, independently evidenced and reconciled to the canonical total; not an Alberta election. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.lifePolicy.amount` | string |  | Nonnegative decimal-text component; the backend requires the complete partition to reconcile exactly to canonical federal S13 line 240. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.lifePolicy.confirmed` | boolean |  | Preparers reviewed the identified federal component and evidence; edits clear dependent policy elections. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.lifePolicy.evidenceRef` | string |  | Supporting federal reserve classification reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.nonLifePolicy` | object |  | Identified federal other-reserve component, independently evidenced and reconciled to the canonical total; not an Alberta election. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.nonLifePolicy.amount` | string |  | Nonnegative decimal-text component; the backend requires the complete partition to reconcile exactly to canonical federal S13 line 240. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.nonLifePolicy.confirmed` | boolean |  | Preparers reviewed the identified federal component and evidence; edits clear dependent policy elections. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.nonLifePolicy.evidenceRef` | string |  | Supporting federal reserve classification reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.other` | object |  | Identified federal other-reserve component, independently evidenced and reconciled to the canonical total; not an Alberta election. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.other.amount` | string |  | Nonnegative decimal-text component; the backend requires the complete partition to reconcile exactly to canonical federal S13 line 240. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.other.confirmed` | boolean |  | Preparers reviewed the identified federal component and evidence; edits clear dependent policy elections. |
| `abAt1Inputs.calculation.reserves.federalOtherReserveComponents.other.evidenceRef` | string |  | Supporting federal reserve classification reference, at most 1000 characters. |
| `abAt1Inputs.calculation.reserves.prescribedReserveRulesApply` | boolean \| null |  | Reviewed applicability of prescribed or federal-matching reserve rules. A positive answer requires each category's reviewed treatment, including nil claims; the engine computes the captured bank/insurer ceiling. Insurance claims apply the actual-deduction conditions in ACTA8(2.03)/34(1.1). |
| `abAt1Inputs.calculation.resources` | object |  | Schedule 15 calculation from independent Alberta resource pools and canonical federal Schedule 12 additions. When present it feeds Schedule 12 lines 022/026/028/030/032 and never falls back to a reviewed component amount. |
| `abAt1Inputs.calculation.resources.cdeRegular` | object |  | Area D regular cumulative Canadian development expenses, before the computed line 105 COGPE credit receiver. |
| `abAt1Inputs.calculation.resources.cdeRegular.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.cdeRegular.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.cdeRegular.claimOverride` | object |  | Reviewed TRA calculation override for regular CDE 015115 or COGPE 015169 only, within the computed statutory maximum. Requires its own evidence and confirmation; an incomplete override never falls back. |
| `abAt1Inputs.calculation.resources.cdeRegular.claimOverride.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.resources.cdeRegular.claimOverride.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.resources.cdeRegular.claimOverride.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.resources.cdeRegular.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeRegular.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeRegular.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.cdeRegular.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cdeRegular.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeRegular.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.enhanced` | object |  | Reviewed eligible accelerated and reaccelerated expense bases after the statutory reduction, used only for the regular CDE and COGPE ceilings. |
| `abAt1Inputs.calculation.resources.cdeRegular.enhanced.acceleratedBasePost2023` | string |  | Eligible accelerated expense base incurred after 2023, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cdeRegular.enhanced.acceleratedBasePre2024` | string |  | Eligible accelerated expense base incurred before 2024, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cdeRegular.enhanced.reacceleratedBasePost2029` | string |  | Eligible reaccelerated expense base incurred after 2029, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cdeRegular.enhanced.reacceleratedBasePre2030` | string |  | Eligible reaccelerated expense base incurred before 2030, as exact decimal text. This component is not prorated for a short year. |
| `abAt1Inputs.calculation.resources.cdeRegular.enhancedEligibilityConfirmed` | boolean |  | For regular CDE/COGPE, confirms eligible net current-year enhanced bases after statutory reductions and original-owner/property exclusions, with evidence in the reviewed packet. |
| `abAt1Inputs.calculation.resources.cdeRegular.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.ordinaryRulesConfirmed` | boolean |  | For regular CDE/COGPE, confirms no special inventory-income, reserve or original-owner disposal adjustments; otherwise supply statutory P/Q/R. |
| `abAt1Inputs.calculation.resources.cdeRegular.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.statutory` | object |  | Reviewed statutory intermediate amounts P/Q/R under ITA 66.2(2) or 66.4(2), as defined in AT1-R04; applies only to regular CDE/COGPE. |
| `abAt1Inputs.calculation.resources.cdeRegular.statutory.p` | string |  | Statutory P under ITA 66.2(2)(a)(i) or 66.4(2)(a)(i), retaining original-owner disposal adjustments, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cdeRegular.statutory.q` | string |  | Statutory Q under ITA 66.2(2)(a)(ii) or 66.4(2)(a)(ii), retaining inventory-income and reserve amounts, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cdeRegular.statutory.r` | string |  | Statutory R under ITA 66.2(2)(b)(ii), as exact decimal text; regular CDE only. |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].amounts` | object |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].claim` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].id` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].incomeBeforeResourceDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].incomeStreamId` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].originalOwnerId` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].otherDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].propertiesRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorCohorts[].section80Income` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeRegular.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor` | object |  | Area D successor cumulative Canadian development expenses, before the computed line 133 COGPE credit receiver. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.predecessorId` | string |  | Bounded predecessor identity (1000 characters); applicable to successor pools only. Reconcile to reviewed shared controlCohorts and the predecessor-specific continuity balance; retain source evidence and confirmation. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[]` | object |  |  |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].amounts` | object |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].claim` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].incomeBeforeResourceDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].incomeStreamId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].originalOwnerId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].otherDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].predecessorId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].propertiesRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorCohorts[].section80Income` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cdeSuccessor.successorIncomeLimit` | string |  | Reviewed ITA 66.7 successor income limit for this pool as exact decimal text, where the printed ceiling uses one. |
| `abAt1Inputs.calculation.resources.ceeIncomeCeilingApplies` | boolean \| null |  | Whether the PBC income ceiling applies under ITA 66.1(2), from reviewed corporation facts. |
| `abAt1Inputs.calculation.resources.ceeRegular` | object |  | Area C regular cumulative Canadian exploration expenses. Federal-equal lines are read from federal Schedule 12, not entered here. |
| `abAt1Inputs.calculation.resources.ceeRegular.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.ceeRegular.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.ceeRegular.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeRegular.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeRegular.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.ceeRegular.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.ceeRegular.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeRegular.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].amounts` | object |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].claim` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].id` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].incomeBeforeResourceDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].incomeStreamId` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].originalOwnerId` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].otherDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].propertiesRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorCohorts[].section80Income` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeRegular.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor` | object |  | Area C successor cumulative Canadian exploration expenses. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.predecessorId` | string |  | Bounded predecessor identity (1000 characters); applicable to successor pools only. Reconcile to reviewed shared controlCohorts and the predecessor-specific continuity balance; retain source evidence and confirmation. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[]` | object |  |  |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].amounts` | object |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].claim` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].incomeBeforeResourceDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].incomeStreamId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].originalOwnerId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].otherDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].predecessorId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].propertiesRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorCohorts[].section80Income` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.ceeSuccessor.successorIncomeLimit` | string |  | Reviewed ITA 66.7 successor income limit for this pool as exact decimal text, where the printed ceiling uses one. |
| `abAt1Inputs.calculation.resources.cogpeRegular` | object |  | Area E regular cumulative Canadian oil and gas property expenses. |
| `abAt1Inputs.calculation.resources.cogpeRegular.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.cogpeRegular.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.cogpeRegular.claimOverride` | object |  | Reviewed TRA calculation override for regular CDE 015115 or COGPE 015169 only, within the computed statutory maximum. Requires its own evidence and confirmation; an incomplete override never falls back. |
| `abAt1Inputs.calculation.resources.cogpeRegular.claimOverride.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.resources.cogpeRegular.claimOverride.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.resources.cogpeRegular.claimOverride.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.resources.cogpeRegular.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeRegular.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeRegular.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.cogpeRegular.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cogpeRegular.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeRegular.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.enhanced` | object |  | Reviewed eligible accelerated and reaccelerated expense bases after the statutory reduction, used only for the regular CDE and COGPE ceilings. |
| `abAt1Inputs.calculation.resources.cogpeRegular.enhanced.acceleratedBasePost2023` | string |  | Eligible accelerated expense base incurred after 2023, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cogpeRegular.enhanced.acceleratedBasePre2024` | string |  | Eligible accelerated expense base incurred before 2024, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cogpeRegular.enhanced.reacceleratedBasePost2029` | string |  | Eligible reaccelerated expense base incurred after 2029, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cogpeRegular.enhanced.reacceleratedBasePre2030` | string |  | Eligible reaccelerated expense base incurred before 2030, as exact decimal text. This component is not prorated for a short year. |
| `abAt1Inputs.calculation.resources.cogpeRegular.enhancedEligibilityConfirmed` | boolean |  | For regular CDE/COGPE, confirms eligible net current-year enhanced bases after statutory reductions and original-owner/property exclusions, with evidence in the reviewed packet. |
| `abAt1Inputs.calculation.resources.cogpeRegular.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.ordinaryRulesConfirmed` | boolean |  | For regular CDE/COGPE, confirms no special inventory-income, reserve or original-owner disposal adjustments; otherwise supply statutory P/Q/R. |
| `abAt1Inputs.calculation.resources.cogpeRegular.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.statutory` | object |  | Reviewed statutory intermediate amounts P/Q/R under ITA 66.2(2) or 66.4(2), as defined in AT1-R04; applies only to regular CDE/COGPE. |
| `abAt1Inputs.calculation.resources.cogpeRegular.statutory.p` | string |  | Statutory P under ITA 66.2(2)(a)(i) or 66.4(2)(a)(i), retaining original-owner disposal adjustments, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cogpeRegular.statutory.q` | string |  | Statutory Q under ITA 66.2(2)(a)(ii) or 66.4(2)(a)(ii), retaining inventory-income and reserve amounts, as exact decimal text. |
| `abAt1Inputs.calculation.resources.cogpeRegular.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].amounts` | object |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].claim` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].id` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].incomeBeforeResourceDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].incomeStreamId` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].originalOwnerId` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].otherDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].propertiesRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorCohorts[].section80Income` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeRegular.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor` | object |  | Area E successor cumulative Canadian oil and gas property expenses. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.predecessorId` | string |  | Bounded predecessor identity (1000 characters); applicable to successor pools only. Reconcile to reviewed shared controlCohorts and the predecessor-specific continuity balance; retain source evidence and confirmation. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[]` | object |  |  |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].amounts` | object |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].claim` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].incomeBeforeResourceDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].incomeStreamId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].originalOwnerId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].otherDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].predecessorId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].propertiesRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorCohorts[].section80Income` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.cogpeSuccessor.successorIncomeLimit` | string |  | Reviewed ITA 66.7 successor income limit for this pool as exact decimal text, where the printed ceiling uses one. |
| `abAt1Inputs.calculation.resources.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.resources.controlNoEarlierSuccessorPoolsConfirmed` | boolean |  | Confirm no earlier original-owner cohorts before establishing domestic control successor pools under ITA 66.7(10). |
| `abAt1Inputs.calculation.resources.controlOpeningBalances` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cde` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cde.amount` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cde.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cde.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cee` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cee.amount` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cee.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cee.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cogpe` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cogpe.amount` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cogpe.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.cogpe.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.fede` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.fede.amount` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.fede.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.controlOpeningBalances.fede.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.resources.currencyRestatements` | array |  | Complete per-predecessor reporting-currency roster and, for foreign predecessors of a CAD filer, separately evidenced source-year restatements under261(12)/(16)/(17). Computes a transfer from boundary opening, original dated monetary transactions and actual restated source-return deductions; never closing times a transfer-day rate. |
| `abAt1Inputs.calculation.resources.currencyRestatementsComplete` | boolean |  | Explicit completeness review for every predecessor reporting currency. Changes clear dependent pool reviews and the resource roster review. |
| `abAt1Inputs.calculation.resources.currencyRestatements[]` | object |  |  |
| `abAt1Inputs.calculation.resources.currencyRestatements[].boundarySpotRateId` | string |  | Reviewed predecessor resource currency boundarySpotRateId. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].confirmed` | boolean |  | Reviewed predecessor resource currency confirmed. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].evidenceRef` | string |  | Reviewed predecessor resource currency evidenceRef. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].lastCanadianYearEnd` | string |  | Receiving functional-currency source restatement. CAD->EFC uses the last Canadian year-end quote; different EFCs use the native reversion boundary then the intermediate CAD-year ending on the source start day. Monetary events use their own target-currency quotes; boundary-day events need actual offset timestamps. ITA261(7)/(12)/(16)/(17). |
| `abAt1Inputs.calculation.resources.currencyRestatements[].lastFunctionalYearEnd` | string |  | Reviewed predecessor resource currency lastFunctionalYearEnd. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].periodEnd` | string |  | Reviewed predecessor resource currency periodEnd. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].periodStart` | string |  | Reviewed predecessor resource currency periodStart. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].periodStartAt` | string |  | Receiving functional-currency source restatement. CAD->EFC uses the last Canadian year-end quote; different EFCs use the native reversion boundary then the intermediate CAD-year ending on the source start day. Monetary events use their own target-currency quotes; boundary-day events need actual offset timestamps. ITA261(7)/(12)/(16)/(17). |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools` | array |  | Reviewed predecessor resource currency pools. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].poolsComplete` | boolean |  | Reviewed predecessor resource currency poolsComplete. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[]` | object |  |  |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].closingNative` | object |  | Reviewed predecessor resource currency closingNative. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].closingNative.amount` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].closingNative.confirmed` | boolean |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].closingNative.evidenceRef` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].confirmed` | boolean |  | Reviewed predecessor resource currency confirmed. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionNative` | object |  | Reviewed predecessor resource currency deductionNative. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionNative.amount` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionNative.confirmed` | boolean |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionNative.evidenceRef` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedCad` | object |  | Reviewed predecessor resource currency deductionRestatedCad. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedCad.amount` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedCad.confirmed` | boolean |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedCad.evidenceRef` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedTarget` | object |  | Actual independently restated source-return deduction in the receiving functional currency. Required instead of deductionRestatedCad for a non-CAD receiver; the native deduction is not multiplied by a closing quote. Evidence and confirmation required. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedTarget.amount` | string |  | Actual independently restated source-return deduction in the receiving functional currency. Required instead of deductionRestatedCad for a non-CAD receiver; the native deduction is not multiplied by a closing quote. Evidence and confirmation required. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedTarget.confirmed` | boolean |  | Actual independently restated source-return deduction in the receiving functional currency. Required instead of deductionRestatedCad for a non-CAD receiver; the native deduction is not multiplied by a closing quote. Evidence and confirmation required. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].deductionRestatedTarget.evidenceRef` | string |  | Actual independently restated source-return deduction in the receiving functional currency. Required instead of deductionRestatedCad for a non-CAD receiver; the native deduction is not multiplied by a closing quote. Evidence and confirmation required. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].evidenceRef` | string |  | Reviewed predecessor resource currency evidenceRef. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].identity` | string |  | Reviewed predecessor resource currency identity. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements` | array |  | Reviewed predecessor resource currency movements. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movementsComplete` | boolean |  | Reviewed predecessor resource currency movementsComplete. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[]` | object |  |  |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].confirmed` | boolean |  | Reviewed predecessor resource currency confirmed. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].day` | string |  | Reviewed predecessor resource currency day. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].direction` | string |  | Reviewed predecessor resource currency direction. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].evidenceRef` | string |  | Reviewed predecessor resource currency evidenceRef. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].id` | string |  | Reviewed predecessor resource currency id. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].nativeAmount` | object |  | Reviewed predecessor resource currency nativeAmount. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].nativeAmount.amount` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].nativeAmount.confirmed` | boolean |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].nativeAmount.evidenceRef` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].occurredAt` | string |  | Receiving functional-currency source restatement. CAD->EFC uses the last Canadian year-end quote; different EFCs use the native reversion boundary then the intermediate CAD-year ending on the source start day. Monetary events use their own target-currency quotes; boundary-day events need actual offset timestamps. ITA261(7)/(12)/(16)/(17). |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].spotRateId` | string |  | Reviewed predecessor resource currency spotRateId. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].targetSpotRateId` | string |  | Receiving functional-currency source restatement. CAD->EFC uses the last Canadian year-end quote; different EFCs use the native reversion boundary then the intermediate CAD-year ending on the source start day. Monetary events use their own target-currency quotes; boundary-day events need actual offset timestamps. ITA261(7)/(12)/(16)/(17). |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].transactionAmount` | object |  | Reviewed predecessor resource currency transactionAmount. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].transactionAmount.amount` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].transactionAmount.confirmed` | boolean |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].transactionAmount.evidenceRef` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].transactionCurrency` | string |  | Reviewed predecessor resource currency transactionCurrency. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].movements[].transactionSpotRateId` | string |  | Reviewed predecessor resource currency transactionSpotRateId. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].openingNative` | object |  | Reviewed predecessor resource currency openingNative. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].openingNative.amount` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].openingNative.confirmed` | boolean |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].openingNative.evidenceRef` | string |  | Independently evidenced historical source-return operand. Amounts are bounded decimal text (80 characters), references are bounded to1000 characters and review is explicit. The actual CAD deduction on the restated source return is separate from the original foreign deduction choice. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].originalOwnerId` | string |  | Actual source original-owner identity for CDE/COGPE successor credit routing. It keeps each source owner separate before aggregation. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionNative` | object |  | Actual source-owner regular COGPE credit absorption in the native reporting currency. Required only when several owners compete for insufficient regular COGPE; a sole possible owner receives the lesser of need and capacity, and nil capacity fixes all allocations at nil. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionNative.amount` | string |  | Reviewed exact source-owner absorption as nonnegative decimal text. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionNative.confirmed` | boolean |  | Confirm the source allocation after reviewing its source facts; clear on changes. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionNative.evidenceRef` | string |  | Actual source allocation worksheet reference. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionRestated` | object |  | Actual source-owner regular COGPE credit absorption in the restated reporting currency. Required only when several owners compete for insufficient regular COGPE; a sole possible owner receives the lesser of need and capacity, and nil capacity fixes all allocations at nil. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionRestated.amount` | string |  | Reviewed exact source-owner absorption as nonnegative decimal text. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionRestated.confirmed` | boolean |  | Confirm the source allocation after reviewing its source facts; clear on changes. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].regularCogpeCreditAbsorptionRestated.evidenceRef` | string |  | Actual source allocation worksheet reference. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].pools[].sourceCreditDesignation` | boolean \| null |  | Actual source original-owner s.66.7(4)(a)(iii) designation, used to select the source credit route. Null is unanswered. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].predecessorId` | string |  | Reviewed predecessor resource currency predecessorId. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].restatedSourceReturnRef` | string |  | Reviewed predecessor resource currency restatedSourceReturnRef. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].sourceCurrency` | string |  | Reviewed predecessor resource currency sourceCurrency. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].sourceNonPbcResourceRightsDealer` | boolean \| null |  | Whether the source-year non-PBC resource-rights dealer exclusion actually applied (s.66(5)); required for a negative source resource pool. Null is unanswered. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates` | array |  | Reviewed predecessor resource currency spotRates. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].cadPerUnit` | string |  | Reviewed predecessor resource currency cadPerUnit. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Reviewed predecessor resource currency closestPrecedingQuoteConfirmed. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].confirmed` | boolean |  | Reviewed predecessor resource currency confirmed. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].currency` | string |  | Reviewed predecessor resource currency currency. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].day` | string |  | Reviewed predecessor resource currency day. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].evidenceRef` | string |  | Reviewed predecessor resource currency evidenceRef. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].id` | string |  | Reviewed predecessor resource currency id. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].quotedDay` | string |  | Reviewed predecessor resource currency quotedDay. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].spotRates[].series` | string |  | Reviewed predecessor resource currency series. Identify actual periods, currencies and complete source records. Monetary amounts remain decimal text; spot quotes are CAD per unit of their explicitly identified currency, with the actual quote day or evidenced closest preceding day. |
| `abAt1Inputs.calculation.resources.currencyRestatements[].targetBoundarySpotRateId` | string |  | Receiving functional-currency source restatement. CAD->EFC uses the last Canadian year-end quote; different EFCs use the native reversion boundary then the intermediate CAD-year ending on the source start day. Monetary events use their own target-currency quotes; boundary-day events need actual offset timestamps. ITA261(7)/(12)/(16)/(17). |
| `abAt1Inputs.calculation.resources.designation66743aiii` | boolean \| null |  | Whether a designation under ITA 66.7(4)(a)(iii) was made; it selects the successor pool credit order between Areas D and E. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular` | object |  | Area A regular earned depletion base (lines 001-009). |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.dealerDeficitAtStart.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.dealerDeficitAtStart.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.dealerDeficitAtStart.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis` | object |  | Reviewed statutory terms for positive depletion claims; the backend applies Reg1201/1202/1203 and the printed available-pool cap. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseAdditions1205` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseAdditions1205.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseAdditions1205.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseAdditions1205.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseDeductions1205` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseDeductions1205.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseDeductions1205.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.baseDeductions1205.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.recapture5933ab` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.recapture5933ab.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.recapture5933ab.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.recapture5933ab.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.resourceProfits` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.resourceProfits.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.resourceProfits.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.resourceProfits.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.successorRecaptureDeduction` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.successorRecaptureDeduction.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.transfers1202_4a` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.transfers1202_4a.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.transfers1202_4a.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.depletionBasis.transfers1202_4a.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].amounts` | object |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].claim` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].id` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].incomeBeforeResourceDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].incomeStreamId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].originalOwnerId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].otherDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].propertiesRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorCohorts[].section80Income` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionRegular.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor` | object |  | Area A successor earned depletion base (lines 011-021). |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.dealerDeficitAtStart.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.dealerDeficitAtStart.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.dealerDeficitAtStart.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis` | object |  | Reviewed statutory terms for positive depletion claims; the backend applies Reg1201/1202/1203 and the printed available-pool cap. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.attributableIncome` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.attributableIncome.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  | Acquisition eligibility and elections under Reg1202(5)/(6); not a waiver of its income ceiling. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.predecessorId` | string |  | Bounded predecessor identity (1000 characters); applicable to successor pools only. Reconcile to reviewed shared controlCohorts and the predecessor-specific continuity balance; retain source evidence and confirmation. |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].amounts` | object |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].claim` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].id` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].incomeBeforeResourceDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].incomeStreamId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].originalOwnerId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].otherDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].propertiesRef` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorCohorts[].section80Income` | string |  |  |
| `abAt1Inputs.calculation.resources.earnedDepletionSuccessor.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.resources.fedeRegular` | object |  | Area F regular foreign exploration and development expenses not in respect of a country. |
| `abAt1Inputs.calculation.resources.fedeRegular.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line. All inputs require an explicit amount, including nil. Line207 is signed net other deductions or transfers: inward allowed global FEDE partnership shares are negative. The partnership allocation adds its full allowed share; its confirmed destination excludes that partnership. |
| `abAt1Inputs.calculation.resources.fedeRegular.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.fedeRegular.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeRegular.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeRegular.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.fedeRegular.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.fedeRegular.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeRegular.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].amounts` | object |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].claim` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].id` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].incomeBeforeResourceDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].incomeStreamId` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].originalOwnerId` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].otherDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].propertiesRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorCohorts[].section80Income` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeRegular.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor` | object |  | Area F successor foreign exploration and development expenses not in respect of a country. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.predecessorId` | string |  | Bounded predecessor identity (1000 characters); applicable to successor pools only. Reconcile to reviewed shared controlCohorts and the predecessor-specific continuity balance; retain source evidence and confirmation. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[]` | object |  |  |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].amounts` | object |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].claim` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].incomeBeforeResourceDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].incomeStreamId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].originalOwnerId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].otherDeductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].predecessorId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].propertiesRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorCohorts[].section80Income` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.resources.fedeSuccessor.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.foreignResourceRegular` | array |  | Area H regular cumulative foreign resource expenses by country (taxation years beginning in 2001 or after). Rows are joined by country identity, not row order. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[]` | object |  |  |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this country row. Every declared input line is required, including an explicit zero. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].claim` | string |  | The Alberta claim allocated to this country as exact decimal text, within the printed country and area ceilings. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].country` | string |  | Country in which the expenses were incurred; the allocation to countries must stay consistent in following years. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].foreignResourceIncome` | string |  | Optional signed independent Alberta net country income for line297 before this workpaper's calculated election changes. The worksheet deducts the Alberta s.59 designation and claims under66(4),66.7(2),66.7(2.3), as TRA11736 p.6 prescribes. A different amount requires this row's confirmed review and evidenceRef. An absent value uses the matched canonical federal pool. Line231 has its separate foreignSourceIncome operand; do not put a country-net deduction into that gross source base. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].globalLimitDesignated` | string |  | Global foreign resource limit for the year designated for this country (Area H regular only), as exact decimal text. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].originalOwnerId` | string |  | Exact canonical federal Schedule 12 originalOwnerId, blank for regular pools and required for successors; never inferred by row order. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].poolId` | string |  | Exact canonical federal Schedule 12 poolId; country joins also require originalOwnerId and country. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.foreignResourceRegular[].propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor` | array |  | Area H successor cumulative foreign resource expenses by country. Rows are joined by country identity, not row order. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[]` | object |  |  |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this country row. Every declared input line is required, including an explicit zero. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].claim` | string |  | The Alberta claim allocated to this country as exact decimal text, within the printed country and area ceilings. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].country` | string |  | Country in which the expenses were incurred; the allocation to countries must stay consistent in following years. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].foreignResourceIncome` | string |  | Optional signed independently reviewed Alberta country income for317 with this row's confirmed review and evidenceRef when it differs federally. Complete independent property income portions take precedence and retain the canonical comparison; they apply only production deductions to production. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].globalLimitDesignated` | string |  |  |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].originalOwnerId` | string |  | Exact canonical federal Schedule 12 originalOwnerId, blank for regular pools and required for successors; never inferred by row order. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].poolId` | string |  | Exact canonical federal Schedule 12 poolId; country joins also require originalOwnerId and country. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].predecessorId` | string |  | Bounded (1000 characters) predecessor identity for a successor country pool. Reconcile this exact pool/owner/country to the reviewed predecessor control history and transfer balance; preserve it unconfirmed in computed proposals. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.foreignResourceSuccessor[].propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.foreignRules` | object |  | Reviewed Canadian corporate residence, immediate-departure and reasonable consistent country-allocation facts. When supplied, this packet replaces the ordinary-foreign confirmation and an incomplete packet remains held. |
| `abAt1Inputs.calculation.resources.foreignRules.ceasedResidenceImmediatelyAfterYear` | boolean \| null |  | Whether the corporation ceased Canadian residence immediately after this year end. Under 66.21(4)(a)(ii)(A), the whole CFRE pool replaces the ordinary prorated 30% limb; other income limits continue to apply. |
| `abAt1Inputs.calculation.resources.foreignRules.confirmed` | boolean |  | Review of residence, immediate departure and country allocations. Editing a fact clears this confirmation. |
| `abAt1Inputs.calculation.resources.foreignRules.consistentCountryAllocations` | boolean \| null |  | Reviewed consistency of current country allocations with those of the preceding year (66(4.2), 66.7(2.2)). |
| `abAt1Inputs.calculation.resources.foreignRules.evidenceRef` | string |  | Residence and country-allocation supporting reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.foreignRules.reasonableCountryAllocations` | boolean \| null |  | Reviewed reasonableness of allocations having regard to the level and timing of expenses and their profits (66(4.2), 66.7(2.2)). |
| `abAt1Inputs.calculation.resources.foreignRules.residentThroughoutCanada` | boolean \| null |  | Whether the corporation was resident in Canada throughout the taxation year. A negative answer makes regular 66(4)/66.21(4) claims nil; it does not extinguish their pools or apply the individual split-year exception. |
| `abAt1Inputs.calculation.resources.foreignSourceIncome` | object |  | Optional independently reviewed Alberta s.66(4)(b)(ii) foreign-source income for231, before this workpaper's calculated disposition-election changes. Canonical federal530 is retained as comparison. A present incomplete packet holds231; it never falls back. This income base is distinct from country-net297. |
| `abAt1Inputs.calculation.resources.foreignSourceIncome.amount` | string |  | Independent Alberta foreign-source income as nonnegative decimal text, including an explicit nil. |
| `abAt1Inputs.calculation.resources.foreignSourceIncome.confirmed` | boolean |  | Confirm after reviewing the Alberta income worksheet; clear on source changes. |
| `abAt1Inputs.calculation.resources.foreignSourceIncome.evidenceRef` | string |  | Supporting Alberta income worksheet reference. |
| `abAt1Inputs.calculation.resources.incomeBeforeCeeAndSection65` | string |  | Reviewed Alberta income before CEE and section 65, signed exact decimal text, required when the income ceiling applies. |
| `abAt1Inputs.calculation.resources.miningDepletion` | object |  | Area B mining exploration depletion base (lines 023-033). |
| `abAt1Inputs.calculation.resources.miningDepletion.amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this pool. Every declared input line is required, including an explicit zero; federal-equal and calculated lines are refused. |
| `abAt1Inputs.calculation.resources.miningDepletion.claim` | string |  | The Alberta claim chosen for this pool as exact decimal text, within the Schedule 15 ceiling for the pool. |
| `abAt1Inputs.calculation.resources.miningDepletion.claimOverride.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.claimOverride.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.claimOverride.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.balance.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.balance.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.balance.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.eventDate` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.role` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.subsequentChanges.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.subsequentChanges.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.controlBasis.subsequentChanges.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.dealerDeficitAtStart.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.dealerDeficitAtStart.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.dealerDeficitAtStart.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis` | object |  | Reviewed statutory terms for positive depletion claims; the backend applies Reg1201/1202/1203 and the printed available-pool cap. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.deductions1207And1212` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.deductions1207And1212.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.deductions1207And1212.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.deductions1207And1212.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.inclusion5933f` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.inclusion5933f.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.inclusion5933f.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.inclusion5933f.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.incomeBeforeDepletionAnd5933f` | object |  | Reviewed component of the adopted Reg1201/1202/1203 depletion ceiling, retained with evidence and confirmation. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  | Exact reviewed statutory monetary term, decimal text at most 80 characters; income terms may be signed. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  | Confirm the captured statutory term and its source. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  | Supporting source, at most 1000 characters. |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.enhanced.acceleratedBasePost2023` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.enhanced.acceleratedBasePre2024` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.enhanced.reacceleratedBasePost2029` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.enhanced.reacceleratedBasePre2030` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.enhancedEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.ordinaryRulesConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.poolId` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.statutory.p` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.statutory.q` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.statutory.r` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].amounts` | object |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].claim` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].id` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].incomeBeforeResourceDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].incomeStreamId` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].originalOwnerId` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].otherDeductions` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].propertiesRef` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorCohorts[].section80Income` | string |  |  |
| `abAt1Inputs.calculation.resources.miningDepletion.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.nonPbcResourceRightsDealer` | boolean \| null |  | Whether ITA66(5) excludes resource deductions and recoveries for a non-PBC rights dealer. Unanswered holds. An affirmative answer refuses positive excluded claims, preserves raw deficits for reviewed continuity and retains the separate section65 depletion limits. |
| `abAt1Inputs.calculation.resources.ordinaryForeignRulesConfirmed` | boolean |  | Confirms Canadian residence throughout, no immediate departure, consistent reasonable country allocations and no special successor adjustments for foreign claims. |
| `abAt1Inputs.calculation.resources.ordinaryPoolRulesConfirmed` | boolean |  | Confirms no special pool designations under ITA 66(14.1) or successor pool adjustments under 66.7(12.1)/(13.2). Those branches are not computed and stay held. |
| `abAt1Inputs.calculation.resources.poolsComplete` | boolean \| null |  | Confirms the complete Alberta resource pool roster has been entered; only under this confirmation is an absent pool a nil pool. |
| `abAt1Inputs.calculation.resources.sections112And113Deductions` | string |  | Reviewed nonnegative sections 112/113 deductions for the CEE income ceiling, as exact decimal text. |
| `abAt1Inputs.calculation.resources.singleSuccessorOwnerConfirmed` | boolean |  | Legacy aggregate-mode confirmation that domestic successor pools belong to one original owner. When successorOwners is present, each captured owner/cohort is computed separately and this legacy answer is not used. |
| `abAt1Inputs.calculation.resources.specialAdjustments` | object |  | Complete reviewed ledger for 66.7(12.1)/(13.2) original-owner specified amounts and 66(14.1) offset-account facts. It replaces the ordinary-pool confirmation. Base amounts contain gross transfers before computed relief; missing or inconsistent data holds the schedule. |
| `abAt1Inputs.calculation.resources.specialAdjustments.baseAmountsExcludeSpecialAdjustments` | boolean |  | Reviewed special-adjustment baseAmountsExcludeSpecialAdjustments. The roster and base-amount exclusion must be explicitly confirmed; edits clear dependent reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.complete` | boolean |  | Reviewed special-adjustment complete. The roster and base-amount exclusion must be explicitly confirmed; edits clear dependent reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.confirmed` | boolean |  | Reviewed special-adjustment confirmed. The roster and base-amount exclusion must be explicitly confirmed; edits clear dependent reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.evidenceRef` | string |  | Reviewed special-adjustment evidenceRef. The roster and base-amount exclusion must be explicitly confirmed; edits clear dependent reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation` | object |  | Reviewed 66(14.1) designation and cumulative offset account. A positive current prescribed-expense scalar alone cannot establish the dated Reg1217 basis and remains held; nil designations preserve known offset-account continuity. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.amount` | object |  | Reviewed offset-account operand. Only otherOffsetAccountChanges is signed; a reviewed positive prescribed expense cannot waive an unestablished Reg1217 basis. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.amount.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.amount.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.amount.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.confirmed` | boolean |  | Subsection66(14.1) confirmed; preserve the actual designation evidence and review. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.evidenceRef` | string |  | Subsection66(14.1) evidenceRef; preserve the actual designation evidence and review. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.filedDate` | string |  | Subsection66(14.1) filedDate; preserve the actual designation evidence and review. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.openingOffsetAccount` | object |  | Reviewed offset-account operand. Only otherOffsetAccountChanges is signed; a reviewed positive prescribed expense cannot waive an unestablished Reg1217 basis. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.openingOffsetAccount.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.openingOffsetAccount.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.openingOffsetAccount.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.otherOffsetAccountChanges` | object |  | Reviewed offset-account operand. Only otherOffsetAccountChanges is signed; a reviewed positive prescribed expense cannot waive an unestablished Reg1217 basis. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.otherOffsetAccountChanges.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.otherOffsetAccountChanges.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.otherOffsetAccountChanges.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.prescribedCanadianExplorationExpense` | object |  | Reviewed offset-account operand. Only otherOffsetAccountChanges is signed; a reviewed positive prescribed expense cannot waive an unestablished Reg1217 basis. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.prescribedCanadianExplorationExpense.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.prescribedCanadianExplorationExpense.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.offsetDesignation.prescribedCanadianExplorationExpense.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts` | array |  | Reviewed special-adjustment specifiedAmounts. The roster and base-amount exclusion must be explicitly confirmed; edits clear dependent reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[]` | object |  | One original-owner resource family/year, and country for CFRE. All dispositions share one specified amount; it is allocated in actual disposition order, not separately recreated for each transfer. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].allOrSubstantiallyAll` | boolean \| null |  | Original-owner specified-amount allOrSubstantiallyAll. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].confirmed` | boolean |  | Original-owner specified-amount confirmed. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].country` | string |  | Original-owner specified-amount country. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions` | array |  | Original-owner specified-amount dispositions. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositionsComplete` | boolean |  | Original-owner specified-amount dispositionsComplete. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[]` | object |  | One qualifying disposition in the complete original-owner year. Its gross reduction and valid retained designation enter the aggregate, then its allocated specified amount consumes the remaining aggregate in actual order. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].confirmed` | boolean |  | Reviewed disposition confirmed. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].date` | string |  | Reviewed disposition date. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].designatedRetention` | object |  | Gross original-owner pool reduction or valid timely retained designation, separately evidenced. The designation cannot exceed this reduction. Filer transfers must include their gross amounts before computed relief. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].designatedRetention.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].designatedRetention.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].designatedRetention.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].designationFiledDate` | string |  | Reviewed disposition designationFiledDate. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].evidenceRef` | string |  | Reviewed disposition evidenceRef. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].id` | string |  | Reviewed disposition id. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].poolReduction` | object |  | Gross original-owner pool reduction or valid timely retained designation, separately evidenced. The designation cannot exceed this reduction. Filer transfers must include their gross amounts before computed relief. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].poolReduction.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].poolReduction.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].poolReduction.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].recipientIsFiler` | boolean \| null |  | Reviewed disposition recipientIsFiler. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].recipientPoolId` | string |  | Reviewed disposition recipientPoolId. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].sequence` | number |  | Reviewed disposition sequence. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].dispositions[].transferKind` | string |  | Reviewed disposition transferKind. Sequence is an actual consecutive integer from1 to500. A filer recipient must identify its canonical pool and fall in this taxation period; other recipients carry no filer pool ID. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].evidenceRef` | string |  | Original-owner specified-amount evidenceRef. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].family` | string |  | Original-owner specified-amount family. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].id` | string |  | Original-owner specified-amount id. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerClaim` | object |  | Independently reviewed original-owner Alberta statutory operand. A filer claim must reconcile to the selected deduction; the recovery is the hypothetical amount without specified relief under 66.7(12.1)/(13.2). |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerClaim.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerClaim.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerClaim.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerId` | string |  | Original-owner specified-amount originalOwnerId. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerIsFiler` | boolean \| null |  | Original-owner specified-amount originalOwnerIsFiler. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerRecoveryWithoutRelief` | object |  | Independently reviewed original-owner Alberta statutory operand. A filer claim must reconcile to the selected deduction; the recovery is the hypothetical amount without specified relief under 66.7(12.1)/(13.2). |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerRecoveryWithoutRelief.amount` | string |  | Exact decimal text, at most80 characters; an explicit nil is required. The engine computes statutory relief rather than accepting a keyed relief total. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerRecoveryWithoutRelief.confirmed` | boolean |  | Preparers reviewed this amount and its supporting source. Edits clear its confirmation and dependent workpaper reviews. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerRecoveryWithoutRelief.evidenceRef` | string |  | Original-owner return, transaction or statutory-basis reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerYearEnd` | string |  | Original-owner specified-amount originalOwnerYearEnd. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].originalOwnerYearStart` | string |  | Original-owner specified-amount originalOwnerYearStart. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specialAdjustments.specifiedAmounts[].successorRulesSatisfied` | boolean \| null |  | Original-owner specified-amount successorRulesSatisfied. Identify the actual qualifying family, owner, period and complete ordered disposition roster. Filer and successor returns remain distinct. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular` | array |  | Area G regular specified foreign exploration and development expenses by country (incurred before 2001). Rows are joined by country identity, not row order. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[]` | object |  |  |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this country row. Every declared input line is required, including an explicit zero. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].claim` | string |  | The Alberta claim allocated to this country as exact decimal text, within the printed country and area ceilings. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].country` | string |  | Country in which the expenses were incurred; the allocation to countries must stay consistent in following years. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].foreignResourceIncome` | string |  | Optional independent Alberta country income for line257 before calculated election changes. A difference from the matched canonical federal pool requires this row's confirmed review and evidenceRef to its Alberta worksheet; an absent value uses canonical income. Apply the printed deduction exclusions in that worksheet. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].globalLimitDesignated` | string |  |  |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].originalOwnerId` | string |  | Exact canonical federal Schedule 12 originalOwnerId, blank for regular pools and required for successors; never inferred by row order. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].poolId` | string |  | Exact canonical federal Schedule 12 poolId; country joins also require originalOwnerId and country. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].predecessorId` | string |  |  |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.specifiedForeignRegular[].propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor` | array |  | Area G successor specified foreign exploration and development expenses by country. Rows are joined by country identity, not row order. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[]` | object |  |  |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].amounts` | object |  | Alberta amounts keyed by the printed three-digit Schedule 15 line for this country row. Every declared input line is required, including an explicit zero. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].claim` | string |  | The Alberta claim allocated to this country as exact decimal text, within the printed country and area ceilings. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].country` | string |  | Country in which the expenses were incurred; the allocation to countries must stay consistent in following years. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].foreignResourceIncome` | string |  | Optional independent Alberta original-owner country income for line277. A difference from the matched canonical federal pool requires this row's confirmed review and evidenceRef to its Alberta worksheet; an absent value uses canonical income. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].globalLimitDesignated` | string |  |  |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].originalOwnerId` | string |  | Exact canonical federal Schedule 12 originalOwnerId, blank for regular pools and required for successors; never inferred by row order. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].poolId` | string |  | Exact canonical federal Schedule 12 poolId; country joins also require originalOwnerId and country. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].predecessorId` | string |  | Bounded (1000 characters) predecessor identity for a successor country pool. Reconcile this exact pool/owner/country to the reviewed predecessor control history and transfer balance; preserve it unconfirmed in computed proposals. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.specifiedForeignSuccessor[].propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations` | array |  | At most500 reviewed owner/property income rows. Allocate the computed deduction to actual supporting properties; weighted earned depletion uses four times its claim. Both each owner income and the one shared property capacity are enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocationsComplete` | boolean |  | Confirm the complete property allocation ledger, required when positive successor claims share an income-supporting property. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[]` | object |  |  |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations` | array |  | allocations for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[]` | object |  |  |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].deduction` | object |  | deduction for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].deduction.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].deduction.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].deduction.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions` | object |  | Distinct production, disposition and reserve income portions under ITA66.7(2)-(5). Review exclusions by source where several sources coexist; an aggregate deduction does not establish its supporting income source. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.disposition` | object |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.disposition.amount` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.disposition.confirmed` | boolean |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.disposition.evidenceRef` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.production` | object |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.production.amount` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.production.confirmed` | boolean |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.production.evidenceRef` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.reserve` | object |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.reserve.amount` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.reserve.confirmed` | boolean |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].incomePortions.reserve.evidenceRef` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].allocations[].poolId` | string |  | poolId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].incomeAvailable` | object |  | incomeAvailable for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].incomeAvailable.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].incomeAvailable.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].incomeAvailable.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].originalOwnerId` | string |  | originalOwnerId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].propertyId` | string |  | propertyId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].sharedIncomeCapacity` | object |  | sharedIncomeCapacity for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].sharedIncomeCapacity.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].sharedIncomeCapacity.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].sharedIncomeCapacity.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms` | object |  | Statutory corporation resource-property income operands for independent domestic and foreign successor ceilings. Domestic CEE/CDE/COGPE and combined original-owner FEDE limits replace retained reviewed ceilings when supplied. Missing terms never use the old ceiling; CFRE production remains distinct from FEDE disposition income. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.acquiredDate` | string |  | Actual property acquisition date, YYYY-MM-DD, used for the CDE/COGPE acquisition-year exclusion. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.acquisitionException` | string |  | The actual statutory amalgamation, merger or deemed-control exception, or none; CEE has no corresponding acquisition-year exception in 66.7(3)(b). |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianDesignationUsed` | object |  | Capped Canadian-production increment attributed to this foreign property when several foreign properties compete. Sum all such portions to the one original-owner increment; preserve each foreign loss before its own outer nil floor. ITA66.7(2)(b)(ii)/(iii). |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianDesignationUsed.amount` | string |  | Capped Canadian-production increment attributed to this foreign property when several foreign properties compete. Sum all such portions to the one original-owner increment; preserve each foreign loss before its own outer nil floor. ITA66.7(2)(b)(ii)/(iii). |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianDesignationUsed.confirmed` | boolean |  | Capped Canadian-production increment attributed to this foreign property when several foreign properties compete. Sum all such portions to the one original-owner increment; preserve each foreign loss before its own outer nil floor. ITA66.7(2)(b)(ii)/(iii). |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianDesignationUsed.evidenceRef` | string |  | Capped Canadian-production increment attributed to this foreign property when several foreign properties compete. Sum all such portions to the one original-owner increment; preserve each foreign loss before its own outer nil floor. ITA66.7(2)(b)(ii)/(iii). |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianIncomeDesignatedToForeign` | object |  | Reviewed statutory property-income operand; separate evidence and confirmation. Production income stays signed. The CEE-only disposition operand is the unused income under 59(3.2)(c); 80(13), other deductions and Canadian production designated to foreign claims are excluded from domestic capacity. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianIncomeDesignatedToForeign.amount` | string |  | Exact decimal text, at most80 characters, with an explicit nil where applicable. Only productionIncome may be negative. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianIncomeDesignatedToForeign.confirmed` | boolean |  | Preparers reviewed this property-income operand; edits clear the income roster and dependent pool reviews. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.canadianIncomeDesignatedToForeign.evidenceRef` | string |  | Supporting resource-property income reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.country` | string |  | Country of the income-supporting property; CA/CAN identifies a domestic property for 66.7(3)-(5). At most3 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.debtForgiveness8013` | object |  | Reviewed statutory property-income operand; separate evidence and confirmation. Production income stays signed. The CEE-only disposition operand is the unused income under 59(3.2)(c); 80(13), other deductions and Canadian production designated to foreign claims are excluded from domestic capacity. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.debtForgiveness8013.amount` | string |  | Exact decimal text, at most80 characters, with an explicit nil where applicable. Only productionIncome may be negative. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.debtForgiveness8013.confirmed` | boolean |  | Preparers reviewed this property-income operand; edits clear the income roster and dependent pool reviews. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.debtForgiveness8013.evidenceRef` | string |  | Supporting resource-property income reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome591` | object |  | Reviewed amount included under59(1) in respect of the foreign property. Enters FEDE under66.7(2)(b)(i); does not enter CFRE production under66.7(2.3)(b)(i). Exact bounded decimal text, evidence and explicit confirmation, including nil. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome591.amount` | string |  | Exact decimal text, at most80 characters, with an explicit nil where applicable. Only productionIncome may be negative. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome591.confirmed` | boolean |  | Preparers reviewed this property-income operand; edits clear the income roster and dependent pool reviews. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome591.evidenceRef` | string |  | Supporting resource-property income reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome5932c` | object |  | Reviewed statutory property-income operand; separate evidence and confirmation. Production income stays signed. The CEE-only disposition operand is the unused income under 59(3.2)(c); 80(13), other deductions and Canadian production designated to foreign claims are excluded from domestic capacity. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome5932c.amount` | string |  | Exact decimal text, at most80 characters, with an explicit nil where applicable. Only productionIncome may be negative. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome5932c.confirmed` | boolean |  | Preparers reviewed this property-income operand; edits clear the income roster and dependent pool reviews. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.dispositionIncome5932c.evidenceRef` | string |  | Supporting resource-property income reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource` | object |  | Distinct production, disposition and reserve income portions under ITA66.7(2)-(5). Review exclusions by source where several sources coexist; an aggregate deduction does not establish its supporting income source. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.disposition` | object |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.disposition.amount` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.disposition.confirmed` | boolean |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.disposition.evidenceRef` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.production` | object |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.production.amount` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.production.confirmed` | boolean |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.production.evidenceRef` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.reserve` | object |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.reserve.amount` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.reserve.confirmed` | boolean |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.incomeAvailableBySource.reserve.evidenceRef` | string |  | Reviewed attributable income portion, exact decimal text with evidence and confirmation. Claim portions sum to the deduction (four times earned depletion); CFRE cannot use disposition income, while CEE and FEDE retain their own disposition limbs. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.nonArmsLengthAcquisition` | boolean \| null |  | Whether the successor acquired the property from the original owner at non-arm’s length. In the acquisition year, non-excepted acquisitions make the CDE/COGPE income limb nil. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.otherDeductionsSameIncome` | object |  | Reviewed statutory property-income operand; separate evidence and confirmation. Production income stays signed. The CEE-only disposition operand is the unused income under 59(3.2)(c); 80(13), other deductions and Canadian production designated to foreign claims are excluded from domestic capacity. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.otherDeductionsSameIncome.amount` | string |  | Exact decimal text, at most80 characters, with an explicit nil where applicable. Only productionIncome may be negative. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.otherDeductionsSameIncome.confirmed` | boolean |  | Preparers reviewed this property-income operand; edits clear the income roster and dependent pool reviews. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.otherDeductionsSameIncome.evidenceRef` | string |  | Supporting resource-property income reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.productionIncome` | object |  | Reviewed statutory property-income operand; separate evidence and confirmation. Production income stays signed. The CEE-only disposition operand is the unused income under 59(3.2)(c); 80(13), other deductions and Canadian production designated to foreign claims are excluded from domestic capacity. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.productionIncome.amount` | string |  | Exact decimal text, at most80 characters, with an explicit nil where applicable. Only productionIncome may be negative. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.productionIncome.confirmed` | boolean |  | Preparers reviewed this property-income operand; edits clear the income roster and dependent pool reviews. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.productionIncome.evidenceRef` | string |  | Supporting resource-property income reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.reserveAmount` | object |  | Reviewed statutory property-income operand; separate evidence and confirmation. Production income stays signed. The CEE-only disposition operand is the unused income under 59(3.2)(c); 80(13), other deductions and Canadian production designated to foreign claims are excluded from domestic capacity. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.reserveAmount.amount` | string |  | Exact decimal text, at most80 characters, with an explicit nil where applicable. Only productionIncome may be negative. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.reserveAmount.confirmed` | boolean |  | Preparers reviewed this property-income operand; edits clear the income roster and dependent pool reviews. |
| `abAt1Inputs.calculation.resources.successorIncomeAllocations[].terms.reserveAmount.evidenceRef` | string |  | Supporting resource-property income reference, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwnerId` | string |  | Original-owner identity of domestic successor pools, preserved in computed continuity proposals. |
| `abAt1Inputs.calculation.resources.successorOwners` | array |  | At most500 separately reviewed original-owner cohorts, each retaining bounded pool identities, independent Alberta printed amounts, elections and property/control evidence. Each ceiling and credit route is applied before aggregation. When present, replaces retained aggregate successor inputs. |
| `abAt1Inputs.calculation.resources.successorOwnersComplete` | boolean |  | Review the complete original-owner cohort roster; an incomplete roster cannot fall back to a saved aggregate claim. |
| `abAt1Inputs.calculation.resources.successorOwners[]` | object |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].designation66743aiii` | boolean \| null |  | designation66743aiii for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].foreignClaimCapacity` | object |  | One original-owner foreign-income capacity after overlapping F/G claims under66.7(2)/(2.2). Required with evidence when both F and G use this owner income; a second owner cannot lend its capacity. |
| `abAt1Inputs.calculation.resources.successorOwners[].foreignClaimCapacity.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].foreignClaimCapacity.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].foreignClaimCapacity.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].originalOwnerId` | string |  | originalOwnerId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools` | object |  | pools for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor` | object |  | cdeSuccessor for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.amounts` | object |  | amounts for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.claim` | string |  | claim for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.poolId` | string |  | poolId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.predecessorId` | string |  | Identified predecessor owning this surviving control-restricted pool, at most1000 characters. Its reviewed shared control history and statutory transfer balance must reconcile before this owner claim; separate predecessors cannot lend one another their balance or income. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cdeSuccessor.successorIncomeLimit` | string |  | successorIncomeLimit for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor` | object |  | ceeSuccessor for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.amounts` | object |  | amounts for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.claim` | string |  | claim for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.poolId` | string |  | poolId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.predecessorId` | string |  | Identified predecessor owning this surviving control-restricted pool, at most1000 characters. Its reviewed shared control history and statutory transfer balance must reconcile before this owner claim; separate predecessors cannot lend one another their balance or income. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.ceeSuccessor.successorIncomeLimit` | string |  | successorIncomeLimit for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor` | object |  | cogpeSuccessor for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.amounts` | object |  | amounts for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.claim` | string |  | claim for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.poolId` | string |  | poolId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.predecessorId` | string |  | Identified predecessor owning this surviving control-restricted pool, at most1000 characters. Its reviewed shared control history and statutory transfer balance must reconcile before this owner claim; separate predecessors cannot lend one another their balance or income. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.cogpeSuccessor.successorIncomeLimit` | string |  | successorIncomeLimit for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor` | object |  | earnedDepletionSuccessor for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.amounts` | object |  | amounts for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.claim` | string |  | claim for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.dealerDeficitAtStart.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.dealerDeficitAtStart.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.dealerDeficitAtStart.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis` | object |  | depletionBasis for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.attributableIncome` | object |  | attributableIncome for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.attributableIncome.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome` | object |  | otherResourceDeductionsSameIncome for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome` | object |  | otherSuccessorDepletionSameIncome for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  | successorEligibilityConfirmed for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.poolId` | string |  | poolId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.predecessorId` | string |  | Identified predecessor owning this surviving control-restricted pool, at most1000 characters. Its reviewed shared control history and statutory transfer balance must reconcile before this owner claim; separate predecessors cannot lend one another their balance or income. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.sourceIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.sourceIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.sourceIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.earnedDepletionSuccessor.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor` | object |  | fedeSuccessor for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.amounts` | object |  | amounts for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.claim` | string |  | claim for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis` | object |  | Reviewed original-owner control cohort: captured control balance plus signed subsequent changes must reconcile to the retained opening. No reviewed amount overwrites the opening. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.balance` | object |  | balance for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.balance.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.balance.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.balance.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.eventDate` | string |  | eventDate for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.role` | string |  | Closed selection: atControl, priorOwner, existingOwnerAtControl, afterControl. Retain the statutory source and review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.subsequentChanges` | object |  | subsequentChanges for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.subsequentChanges.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.subsequentChanges.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.controlBasis.subsequentChanges.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.dealerDeficitAtStart` | object |  | Preserved negative raw pool excluded from recovery in a prior66(5) dealer year. Requires a nil printed opening, separate evidence and confirmation; no invented current transfer or expense. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.dealerDeficitAtStart.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.dealerDeficitAtStart.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.dealerDeficitAtStart.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.attributableIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.attributableIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.attributableIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.baseAdditions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.baseAdditions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.baseAdditions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.baseDeductions1205.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.baseDeductions1205.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.baseDeductions1205.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.deductions1207And1212.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.deductions1207And1212.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.deductions1207And1212.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.inclusion5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.inclusion5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.inclusion5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.incomeBeforeDepletionAnd5933f.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.otherResourceDeductionsSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.otherSuccessorDepletionSameIncome.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.recapture5933ab.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.recapture5933ab.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.recapture5933ab.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.resourceProfits.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.resourceProfits.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.resourceProfits.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.successorEligibilityConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.successorRecaptureDeduction.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.successorRecaptureDeduction.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.successorRecaptureDeduction.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.transfers1202_4a.amount` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.transfers1202_4a.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.depletionBasis.transfers1202_4a.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.poolId` | string |  | poolId for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.predecessorId` | string |  | Identified predecessor owning this surviving control-restricted pool, at most1000 characters. Its reviewed shared control history and statutory transfer balance must reconcile before this owner claim; separate predecessors cannot lend one another their balance or income. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.propertyIds` | array |  | At most500 actual income-supporting property identities, each at most1000 characters. Reconcile to canonical pool identities where present. A shared property requires its income-allocation ledger, even across different original-owner control cohorts. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.propertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.sourceIncome` | object |  | Independently reviewed Alberta foreign income of this original-owner FEDE pool. Canonical580 remains comparison evidence; supplied Alberta source worksheets determine the owner income and aggregate233. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.sourceIncome.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.sourceIncome.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.sourceIncome.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorOwners[].pools.fedeSuccessor.successorIncomeLimit` | string |  |  |
| `abAt1Inputs.calculation.resources.successorOwners[].propertiesRef` | string |  | propertiesRef for this separately identified original-owner cohort. Monetary terms use exact text; identities are bounded to1000 characters and the roster to500 entries. Existing printed meanings, eligibility and ceilings remain enforced. |
| `abAt1Inputs.calculation.resources.successorOwners[].regularCogpeCreditAbsorption` | object |  | Owner-attributed part of the one regular COGPE pool absorbing credits under66.7(4)/(5). Required with evidence when that shared pool cannot absorb every owner credit; allocations must sum to its available capacity and remain within each owner credit. |
| `abAt1Inputs.calculation.resources.successorOwners[].regularCogpeCreditAbsorption.amount` | string |  | Exact decimal text, at most80 characters; signed only for subsequent control-cohort changes. Review the separate source and confirmation. |
| `abAt1Inputs.calculation.resources.successorOwners[].regularCogpeCreditAbsorption.confirmed` | boolean |  | Preparer confirmation of this fact and source; dependent changes clear the review. |
| `abAt1Inputs.calculation.resources.successorOwners[].regularCogpeCreditAbsorption.evidenceRef` | string |  | Supporting independent Alberta continuity, property attribution or designation source, at most1000 characters. |
| `abAt1Inputs.calculation.resources.successorPropertiesRef` | string |  | Supporting reference identifying the successor properties and any ITA 66.7(4)(a)(iii) designation. |
| `abAt1Inputs.calculation.royaltyCreditIncome` | object |  | AT112 Jul-12 line047; ACTA8(2.001)(e): actual ARTC included in federal income for2013, including a reviewed nil. This federal-only income exclusion is separate from any original-year royalty credit entitlement. |
| `abAt1Inputs.calculation.royaltyCreditIncome.amount` | string |  | Exact nonnegative decimal text for the actual ARTC amount included in canonical T2.300. |
| `abAt1Inputs.calculation.royaltyCreditIncome.confirmed` | boolean |  | Preparer review of this actual income attribution; changed receipt or income facts clear confirmation. |
| `abAt1Inputs.calculation.royaltyCreditIncome.evidenceRef` | string |  | Receipt and federal income reconciliation supporting the actual2013 ARTC inclusion or nil. |
| `abAt1Inputs.calculation.schedule10` | object |  | Alberta Schedule 10 (TRA11731 Rev.2026-09) applications for the Schedule 21 packet. Claims replace an original application in full when amended. Exempt-year standalone applications use mail/delivery; no electronic payload is established. |
| `abAt1Inputs.calculation.schedule10.applicationStatus` | string |  | Closed status original or amended. An amended application supplies the complete replacement claims and references the prior packet. |
| `abAt1Inputs.calculation.schedule10.applications` | array |  | At most three reviewed prior-year application rows. An explicit empty list requests no carryback. Missing rows in a reviewed roster mean no request, not nil assessed capacity. |
| `abAt1Inputs.calculation.schedule10.applications[]` | object |  |  |
| `abAt1Inputs.calculation.schedule10.applications[].allocationFactor` | string |  | Reviewed application-year Alberta factor, between zero and one; retained on the six-decimal ratio quantum. |
| `abAt1Inputs.calculation.schedule10.applications[].assessedFarmIncome` | string |  | Nonnegative assessed farming-income base for restricted-farm loss deductibility. |
| `abAt1Inputs.calculation.schedule10.applications[].assessedListedPersonalPropertyGains` | string |  | Nonnegative assessed LPP gain base on the GROSS basis. |
| `abAt1Inputs.calculation.schedule10.applications[].assessedTaxableCapitalGains` | string |  | Nonnegative assessed taxable-capital-gain base, on the post-inclusion basis. |
| `abAt1Inputs.calculation.schedule10.applications[].assessedTaxableIncome` | string |  | Nonnegative assessed taxable-income base before this complete replacement application. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage` | object |  | Reviewed exact fiscal-year Bank quote roster under AR119/2008 s.7.1(2), Alberta Interpretation Act ss.9/10 and the 2026-10-17 source adjudication. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.allBusinessDaysConfirmed` | boolean |  | True only after review that the roster includes every Bank-quoted business day and every listed non-publication weekday is supported by the source. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.confirmed` | boolean |  | Preparer confirmation of this complete taxation-year Bank quote source. Changes require renewed review. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.evidenceRef` | string |  | Nonblank reviewed source reference for the complete quoted-day and non-publication roster; at most 1000 characters. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.noQuoteDays` | array |  | At most 500 unique ISO weekdays in the taxation year on which the Bank did not publish a quote, evidenced by the same source. Together with quotes these must cover every weekday without overlap. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.noQuoteDays[]` | string |  |  |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.periodEnd` | string |  | Exact ISO end of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.periodStart` | string |  | Exact ISO start of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.quotes` | array |  | Complete roster of at most 500 Bank of Canada quoted weekdays. The engine computes the exact arithmetic mean; entered annual averages are not accepted. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.quotes[]` | object |  |  |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.quotes[].cadPerUnit` | string | strict | Positive exact decimal-text Bank quote, below 100000 and at most six decimal places, in CAD per elected-currency unit. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.quotes[].day` | string | strict | Unique ISO quoted weekday within this taxation year; no preceding-day fill. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentAverage.quotes[].series` | string | strict | bankOfCanadaNoon through 2017-04-28; bankOfCanadaDaily from 2017-05-01, including the noon/daily parallel period rule. |
| `abAt1Inputs.calculation.schedule10.applications[].assessmentRef` | string |  | Evidence of the prior assessed Alberta return and available capacities before this complete application. |
| `abAt1Inputs.calculation.schedule10.applications[].capacitiesBeforeThisApplicationConfirmed` | boolean |  | Confirms the capacities precede THIS complete application and restore any earlier version being replaced; never subtract the original request again. |
| `abAt1Inputs.calculation.schedule10.applications[].claims` | object |  | Separate elections by loss kind. Schedule 21 claims apply only preceding-year vintages; Schedule 10 claims apply only current-year losses. |
| `abAt1Inputs.calculation.schedule10.applications[].claims.farm` | string |  | Farm loss facts or election, separate from restricted-farm and non-capital pools. |
| `abAt1Inputs.calculation.schedule10.applications[].claims.grossCapital` | string |  | Capital loss election on the GROSS basis; multiply by the application-year inclusion rate for the taxable deduction. |
| `abAt1Inputs.calculation.schedule10.applications[].claims.limitedPartnership` | string |  | Independent LP loss kind, with partnership identity. A positive Schedule 10 carryback request is refused under ITA 111(1)(e). |
| `abAt1Inputs.calculation.schedule10.applications[].claims.listedPersonalProperty` | string |  | Gross LPP election; only against LPP gains. Remains separate in the Schedule 10 shared other-loss column. |
| `abAt1Inputs.calculation.schedule10.applications[].claims.nonCapital` | string |  | Non-capital loss election, independent of federal Part IV usage. |
| `abAt1Inputs.calculation.schedule10.applications[].claims.restrictedFarm` | string |  | Restricted-farm election; cannot exceed farming income capacity and never shares a legal pool with LPP or LP losses. |
| `abAt1Inputs.calculation.schedule10.applications[].claims.rife` | string |  | Restricted interest/financing expense election, limited to old RIFE and excess plus received capacity. No carryback under ITA 111(1)(a.1). |
| `abAt1Inputs.calculation.schedule10.applications[].claimsCurrency` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.schedule10.applications[].confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule10.applications[].farmIncomeCapacity` | string |  | Remaining farming-income capacity for restricted-farm carrybacks. |
| `abAt1Inputs.calculation.schedule10.applications[].inclusionRate` | string |  | Application-year capital inclusion rate. All possible target years in the supported 2023-2026 horizon use exactly one-half, printed to six decimals. |
| `abAt1Inputs.calculation.schedule10.applications[].listedPersonalPropertyCapacity` | string |  | Remaining gross LPP-gain capacity; not transferable to another loss kind. |
| `abAt1Inputs.calculation.schedule10.applications[].netCapitalCapacity` | string |  | Remaining taxable-capital-gain capacity; both gross-capital and LPP deductions consume it at the application-year rate. |
| `abAt1Inputs.calculation.schedule10.applications[].reportingCurrency` | string |  | Assessed application-year currency. Functional-currency application conversion remains held for ACTA 4.02(4) annual-rate authority. |
| `abAt1Inputs.calculation.schedule10.applications[].taxableIncomeCapacity` | string |  | Remaining reviewed taxable-income capacity before this complete application; combined claims cannot exceed it. |
| `abAt1Inputs.calculation.schedule10.applications[].yearEnd` | string |  | Actual target taxation-year end, present in the reviewed preceding-year roster and unique per application. |
| `abAt1Inputs.calculation.schedule10.applications[].yearStart` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.schedule10.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule10.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule10.exemptionRef` | string |  | Supporting reference for the independently established exempt-year determination. |
| `abAt1Inputs.calculation.schedule10.historyComplete` | boolean |  | Confirms all actual preceding periods, up to the three-year window, including a shorter corporate history or explicit empty roster. |
| `abAt1Inputs.calculation.schedule10.identification` | object |  | Applicant/contact/signing-officer preparation facts. They do not certify or authorize filing; department-only field 080 is not captured. |
| `abAt1Inputs.calculation.schedule10.identification.contactName` | string |  | Application contact person, printed 010052. |
| `abAt1Inputs.calculation.schedule10.identification.contactPhone` | string |  | Contact telephone including area code, printed 010054. |
| `abAt1Inputs.calculation.schedule10.identification.corporateAccountNumber` | string |  | Alberta Corporate Account Number printed at 010082 (9 or 10 digits); filing validation/certification remains pending. |
| `abAt1Inputs.calculation.schedule10.identification.corporationName` | string |  | Corporation legal name printed on the prescribed standalone application. |
| `abAt1Inputs.calculation.schedule10.identification.officerFirstName` | string |  | Authorized signing officer first name, printed 010072. |
| `abAt1Inputs.calculation.schedule10.identification.officerPosition` | string |  | Authorized officer position, office or rank, printed 010074. |
| `abAt1Inputs.calculation.schedule10.identification.officerSurname` | string |  | Authorized signing officer surname, printed 010070; this text is not signature evidence. |
| `abAt1Inputs.calculation.schedule10.identification.signatureDate` | string |  | Complete ISO signature date for the retained prescribed paper application; capture alone does not establish an actual signature. |
| `abAt1Inputs.calculation.schedule10.lossYearExemptionConfirmed` | boolean |  | True only after independently establishing the loss-year filing exemption. Required for standalonePaper. |
| `abAt1Inputs.calculation.schedule10.precedingYearEnds` | array |  | Up to three actual preceding taxation-year ends, newest first, including short/deemed years. The first must immediately precede this taxation period. |
| `abAt1Inputs.calculation.schedule10.precedingYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule10.priorApplicationRef` | string |  | Reference identifying the application being replaced; required for amended status. |
| `abAt1Inputs.calculation.schedule10.route` | string |  | requiredAT1 or standalonePaper. Chapter 3 v2026.4 page 4 directs exempt corporations not to transmit an AT1; page 89 permits standalone prescribed-form/RSI Schedule 10. For an exempt loss year, mail or deliver the application within six months after year end (ACTA 44(1)). |
| `abAt1Inputs.calculation.schedule21` | object |  | Independent Alberta Schedule 21 (TRA11741 Rev.2026-03). Present inputs replace Schedule 12 loss deductions and line 082, including holds. Legacy reviewed loss inputs remain supported when absent. |
| `abAt1Inputs.calculation.schedule21.abilConversionsComplete` | boolean |  | Preparer confirmation that all ABILs converting this year are included. |
| `abAt1Inputs.calculation.schedule21.acquisitionOfControlOccurred` | boolean |  | Identify current or surviving prior control restrictions; dated transition facts and loss-business allocations execute ITA 111(4)/(5). |
| `abAt1Inputs.calculation.schedule21.capitalGrossFinal` | object |  | Optional reviewed signed FINAL gross Schedule 18 printed 099 amount (AT1-R03). The capital_gross_final supplying workpaper line takes precedence. Neither 018072 nor taxable 018076 may substitute. |
| `abAt1Inputs.calculation.schedule21.capitalGrossFinal.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.capitalGrossFinal.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.capitalGrossFinal.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.claims` | object |  | Separate elections by loss kind. Schedule 21 claims apply only preceding-year vintages; Schedule 10 claims apply only current-year losses. |
| `abAt1Inputs.calculation.schedule21.claims.farm` | object |  | Farm loss facts or election, separate from restricted-farm and non-capital pools. |
| `abAt1Inputs.calculation.schedule21.claims.farm.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.claims.farm.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.claims.farm.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.claims.grossCapital` | object |  | Capital loss election on the GROSS basis; multiply by the application-year inclusion rate for the taxable deduction. |
| `abAt1Inputs.calculation.schedule21.claims.grossCapital.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.claims.grossCapital.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.claims.grossCapital.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.claims.listedPersonalProperty` | object |  | Gross LPP election; only against LPP gains. Remains separate in the Schedule 10 shared other-loss column. |
| `abAt1Inputs.calculation.schedule21.claims.listedPersonalProperty.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.claims.listedPersonalProperty.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.claims.listedPersonalProperty.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.claims.nonCapital` | object |  | Non-capital loss election, independent of federal Part IV usage. |
| `abAt1Inputs.calculation.schedule21.claims.nonCapital.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.claims.nonCapital.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.claims.nonCapital.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.claims.restrictedFarm` | object |  | Restricted-farm election; cannot exceed farming income capacity and never shares a legal pool with LPP or LP losses. |
| `abAt1Inputs.calculation.schedule21.claims.restrictedFarm.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.claims.restrictedFarm.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.claims.restrictedFarm.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.claims.rife` | object |  | Restricted interest/financing expense election, limited to old RIFE and excess plus received capacity. No carryback under ITA 111(1)(a.1). |
| `abAt1Inputs.calculation.schedule21.claims.rife.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.claims.rife.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.claims.rife.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80` | object |  | Dated, reviewed section80(1)–(4) allocation for current and earlier losses, with actual later settlements, relevant loss/ABIL facts, control eligibility and exact prior-consumption proof. When present it replaces the old no-current-adjustment answer and never falls back if incomplete. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions` | array |  | At most500 remaining allowable ABIL components included in the identified unused non-capital loss after existing deductions. The complete roster, including an explicit empty list, establishes whether80(4)(a) applies. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].lossId` | string |  | lossId for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].remainingAllowableLoss` | object |  | remainingAllowableLoss for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].remainingAllowableLoss.amount` | string |  | Exact nonnegative decimal text at most80 characters, with independent source and confirmation. Do not round section80(4) fractional-cent consumption inside the allocation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].remainingAllowableLoss.confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].remainingAllowableLoss.evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.abilPortions[].target` | string |  | Closed selection: current, prior. Retain the statutory fact evidence and review. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.asOfDate` | string |  | Actual YYYY-MM-DD measurement date for later section80 reductions of this loss year, at or after the return year end. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.currentPeriodEffectsReconciled` | boolean |  | Review that current-period settlement income and capital effects are included in their owning workpapers; this loss allocation adds no later settlement-year income to the source return. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.openingAdjustmentsExcludeSourceConfirmed` | boolean |  | Confirms carried openings already include the source applications and additional reviewed adjustments do not duplicate them. Required for a carried section80 source. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses` | array |  | At most500 intervening relevant losses from actual later taxation years, before the listed settlements. They consume statutory priority but never become losses of this source return. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].id` | string |  | id for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].kind` | string |  | Closed selection: nonCapital, farm, restrictedFarm, grossCapital. Retain the statutory fact evidence and review. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].originYearEnd` | string |  | originYearEnd for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingAllowableAbil` | object |  | remainingAllowableAbil for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingAllowableAbil.amount` | string |  | Exact nonnegative decimal text at most80 characters, with independent source and confirmation. Do not round section80(4) fractional-cent consumption inside the allocation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingAllowableAbil.confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingAllowableAbil.evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingLoss` | object |  | remainingLoss for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingLoss.amount` | string |  | Exact nonnegative decimal text at most80 characters, with independent source and confirmation. Do not round section80(4) fractional-cent consumption inside the allocation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingLoss.confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.otherLosses[].remainingLoss.evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.postPeriodYearEnds` | array |  | At most500 complete actual intervening year ends, YYYY-MM-DD, in order. These determine age/expiry and which later losses are eligible; do not assume calendar years. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.postPeriodYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings` | array |  | At most500 evidenced business-attributed balances after a control-restricted loss is reduced under80. Each remains within both the111(5) stream and the unrestricted80(1) balance. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[].confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[].evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[].lossId` | string |  | lossId for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[].remainingBusinessLoss` | object |  | remainingBusinessLoss for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[].remainingBusinessLoss.amount` | string |  | Exact nonnegative decimal text at most80 characters, with independent source and confirmation. Do not round section80(4) fractional-cent consumption inside the allocation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[].remainingBusinessLoss.confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.restrictedClosings[].remainingBusinessLoss.evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.rosterComplete` | boolean |  | rosterComplete for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.sameYearLossOrder` | array |  | At most500 source-attribution identities, using prior:loss-id, current:loss-kind or later:loss-id, for multiple balances sharing a kind and origin year. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.sameYearLossOrder[]` | string |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements` | array |  | settlements for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].forgivenAmount` | object |  | Statutory forgiven amount from the obligation settlement workpaper under80(1), before80(3)/(4). This is not an arbitrary loss-adjustment election. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].forgivenAmount.amount` | string |  | Exact nonnegative decimal text at most80 characters, with independent source and confirmation. Do not round section80(4) fractional-cent consumption inside the allocation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].forgivenAmount.confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].forgivenAmount.evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].id` | string |  | id for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].obligationIssuedDate` | string |  | obligationIssuedDate for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations` | object |  | Optional ITA80(5)/(6),(8)-(11) attribute ledger after mandatory loss reductions. Stages consume the actual remaining forgiven amount once; settlement-year income and capital effects remain separately reconciled. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.complete` | boolean |  | Section80 optional designation complete. Capture edits clear completeness and reviews; prescribed designation and source evidence are required. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.confirmed` | boolean |  | Section80 optional designation confirmed. Capture edits clear completeness and reviews; prescribed designation and source evidence are required. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.designationRef` | string |  | Section80 optional designation designationRef. Capture edits clear completeness and reviews; prescribed designation and source evidence are required. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.evidenceRef` | string |  | Section80 optional designation evidenceRef. Capture edits clear completeness and reviews; prescribed designation and source evidence are required. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients` | array |  | Complete eligible attribute census, including nil designations, at most500 records. Later ACB stages require earlier eligible stages maximized. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[]` | object |  | Reviewed recipients source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisBefore` | string |  | Section80 attribute basisBefore source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements` | array |  | Actual basisMovements for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[]` | object |  | Reviewed basisMovements source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].amount` | string |  | Exact original monetary amount as decimal text. Other additions008 and reductions018 may be signed; all other source amounts are nonnegative. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].basisAfter` | string |  | Actual basisAfter for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].basisBefore` | string |  | Actual basisBefore for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].date` | string |  | Actual date for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].effectiveAt` | string |  | Actual effectiveAt for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].field` | string |  | Actual field for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].operation` | string |  | Actual operation for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].sourceId` | string |  | Actual sourceId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].basisMovements[].sourceKind` | string |  | Actual sourceKind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].capitalKind` | string |  | Section80 attribute capitalKind source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaClass` | string |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory` | object |  | Reviewed ccaHistory source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.complete` | boolean |  | Actual complete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements` | array |  | Actual movements for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[]` | object |  | Reviewed movements source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].amount` | string |  | Exact original monetary amount as decimal text. Other additions008 and reductions018 may be signed; all other source amounts are nonnegative. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].capitalCostChange` | string |  | Actual capitalCostChange for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].date` | string |  | Actual date for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].effectiveAt` | string |  | Actual effectiveAt for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].generalCostChange` | string |  | Actual generalCostChange for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].kind` | string |  | Actual kind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].propertyId` | string |  | Actual propertyId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].sourceId` | string |  | Actual sourceId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].classId` | string |  | Section80 attribute classId source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].classUccAfterPropertyMovements` | string |  | Actual classUccAfterPropertyMovements for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].classUccBefore` | string |  | Section80 attribute classUccBefore source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].classUccOtherReductionsAtSettlement` | string |  | Actual classUccOtherReductionsAtSettlement for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].confirmed` | boolean |  | Section80 attribute confirmed source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].depreciationBasisBefore` | string |  | Section80 attribute depreciationBasisBefore source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].designated` | string |  | Section80 attribute designated source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].evidenceRef` | string |  | Section80 attribute evidenceRef source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].excludedProperty` | boolean \| null |  | Section80 attribute excludedProperty source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].fedeDeductibleLimit` | string |  | Section80 attribute fedeDeductibleLimit source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].id` | string |  | Section80 attribute id source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].kind` | string |  | Section80 attribute kind source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory` | object |  | Reviewed nonClassHistory source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.acquisitionDate` | string |  | Actual acquisitionDate for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory` | array |  | Actual allowedHistory for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistoryComplete` | boolean |  | Actual allowedHistoryComplete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[]` | object |  | Reviewed allowedHistory source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].amount` | string |  | Exact original monetary amount as decimal text. Other additions008 and reductions018 may be signed; all other source amounts are nonnegative. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].yearEnd` | string |  | Actual yearEnd for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.capitalCostBefore` | string |  | Exact reviewed CCA capital cost before control;13(7)(f)/111(4)(e)(iii) computes the purpose-limited subsequent CCA cost. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.character` | string |  | Actual character for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.neverPrescribedClassConfirmed` | boolean |  | Actual neverPrescribedClassConfirmed for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.propertyHistoryComplete` | boolean |  | Actual propertyHistoryComplete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].nonClassHistory.propertyId` | string |  | Actual propertyId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].ownedImmediatelyAfter` | boolean \| null |  | Section80 attribute ownedImmediatelyAfter source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].part17Allowed` | string |  | Section80 attribute part17Allowed source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].personalUseProperty` | boolean \| null |  | Section80 attribute personalUseProperty source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].propertyId` | string |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].related` | boolean \| null |  | Section80 attribute related source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourceCharacter` | string |  | Actual resourceCharacter for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourceCountry` | string |  | Actual resourceCountry for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourceEventInstants` | object |  | Actual resourceEventInstants for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourceKind` | string |  | Actual resourceKind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourceOriginalOwnerId` | string |  | Actual resourceOriginalOwnerId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourcePoolId` | string |  | Actual resourcePoolId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourcePropertyIds` | array |  | Actual resourcePropertyIds for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].resourcePropertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].specifiedShareholder` | boolean \| null |  | Section80 attribute specifiedShareholder source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.recipients[].successorPoolLimit` | string |  | Section80 attribute successorPoolLimit source fact. Exact monetary text; classification, capacity, shared class balances and review are validated by the statutory-stage producer. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].optionalDesignations.residentInCanadaThroughout` | boolean \| null |  | Section80 optional designation residentInCanadaThroughout. Capture edits clear completeness and reviews; prescribed designation and source evidence are required. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications` | array |  | At most2048 evidenced earlier kind/year/stage application groups already reflected in carried openings. Consumed forgiven amounts retain their statutory stage and origin order, never a blanket deduction ahead of current ordinary losses. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].forgivenConsumed` | object |  | Exact forgiven amount consumed by this earlier loss application, including division by the applicable loss-year fraction under80(2)(e). Decimal text prevents half-cent proof loss. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].forgivenConsumed.amount` | string |  | Exact nonnegative decimal text at most80 characters, with independent source and confirmation. Do not round section80(4) fractional-cent consumption inside the allocation. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].forgivenConsumed.confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].forgivenConsumed.evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].kind` | string |  | Closed selection: nonCapital, farm, restrictedFarm, grossCapital. Retain the statutory fact evidence and review. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].lossId` | string |  | lossId for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].originYearEnd` | string |  | originYearEnd for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].priorApplications[].stage` | string |  | Closed selection: ordinary, farm, restrictedFarm, abil, capital. Retain the statutory fact evidence and review. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].restrictions` | array |  | restrictions for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].restrictionsComplete` | boolean |  | restrictionsComplete for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].restrictions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].restrictions[].confirmed` | boolean |  | Preparer review of this fact and source. Dependent edits clear the confirmation; computed-only proposals are unconfirmed. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].restrictions[].date` | string |  | date for the reviewed section80 loss allocation. Source identities/evidence are bounded to1000 characters, dates to10, monetary text to80, and each roster to500 entries. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].restrictions[].debtTreatment` | string |  | Closed selection: beforeNotContemplated, refinancingBefore, ineligible. Retain the statutory fact evidence and review. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].restrictions[].evidenceRef` | string |  | Independent Alberta debt, assessment, source-loss or control-history reference, at most1000 characters. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].sameDayOrderBasis` | string |  | Closed selection: notNeeded, prescribedDesignation, ministerDesignation. Retain the statutory fact evidence and review. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].settlementAt` | string |  | Actual ISO 8601 instant of this settlement on its settlement date. Debts settled on one day are ordered by these instants; a missing or equal instant needs the prescribed or Minister order of settlement (ITA 80(2)(i)). On the day of an intraday acquisition of control it places the settlement before or after control (ITA 249(4), 256(9)). |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.settlements[].settlementDate` | string |  | Actual YYYY-MM-DD later commercial-debt settlement date. A loss year must have ended before the settlement to be reduced under80(3)/(4). List settlements in date/designated order. |
| `abAt1Inputs.calculation.schedule21.currentLossSection80.sourcePeriodEnd` | string |  | Computed carryforward source return year end, YYYY-MM-DD. The next return reconciles carried intervening losses to its own computed results and preserves earlier debt-budget applications. |
| `abAt1Inputs.calculation.schedule21.currentYearAdjustmentsAbsentConfirmed` | boolean |  | Legacy confirmation of no current-loss section80 adjustment. A present dated currentLossSection80 packet owns its allocation even if this retained answer is true, and incomplete facts never fall back to it. ACTA18(3)(a.3) excludes ITA111(10) fuel-rebate reductions. |
| `abAt1Inputs.calculation.schedule21.eifel` | object |  | Independent Alberta corporation-only EIFEL replay under ACTA8/18 and ITA18.2. CFA amounts and a gross/net prescribed-carrier conflict stay explicitly held. |
| `abAt1Inputs.calculation.schedule21.eifel.absorbedCapacity` | string |  | Independent Alberta EIFEL absorbedCapacity source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.adjustedTaxableIncomeBefore257` | string |  | Independent Alberta EIFEL adjustedTaxableIncomeBefore257 source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates` | array |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). |
| `abAt1Inputs.calculation.schedule21.eifel.affiliatesComplete` | boolean |  | Confirm the complete controlled-foreign-affiliate source roster. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].confirmed` | boolean |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: confirmed. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].evidenceRef` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: evidenceRef. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].expenseOffsets` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: expenseOffsets. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource` | object |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Actual source facts, supporting evidence and source review; an incomplete active producer holds its receivers. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.affiliateTaxationPeriodHistory` | array |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field affiliateTaxationPeriodHistory. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.affiliateTaxationPeriodHistory[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.affiliateTaxationPeriodHistory[].taxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field taxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.affiliateTaxationPeriodHistory[].taxationYearStart` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field taxationYearStart. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.basisIncludesPreEifelFactsConfirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field basisIncludesPreEifelFactsConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.basisPropertyId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field basisPropertyId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components` | object |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Actual source facts, supporting evidence and source review; an incomplete active producer holds its receivers. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.allowableCapitalLosses` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field allowableCapitalLosses. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.compensatedCapitalLoss` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field compensatedCapitalLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.compensatedPropertyLoss` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field compensatedPropertyLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.confirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.dispositionIncome` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field dispositionIncome. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.evidenceRef` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.nonActiveBusinessIncome` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field nonActiveBusinessIncome. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.nonActiveBusinessLoss` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field nonActiveBusinessLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.nonQualifyingBusinessIncome` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field nonQualifyingBusinessIncome. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.nonQualifyingBusinessLoss` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field nonQualifyingBusinessLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.offshoreFundIncome` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field offshoreFundIncome. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.partnershipDividendExclusion` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field partnershipDividendExclusion. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.prescribedCapitalLossDesignation` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field prescribedCapitalLossDesignation. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.prescribedPropertyLossDesignation` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field prescribedPropertyLossDesignation. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.priorYearDebtForgivenessCarryforward` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field priorYearDebtForgivenessCarryforward. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.propertyIncome` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field propertyIncome. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.propertyLoss` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field propertyLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.section80_13Income` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field section80_13Income. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.components.taxableCapitalGains` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field taxableCapitalGains. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.confirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.controlledAffiliateConfirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field controlledAffiliateConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.evidenceRef` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions` | array |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field expenseAttributions. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributionsComplete` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field expenseAttributionsComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions[].amount` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field amount. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions[].compensationReduction` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field compensationReduction. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions[].confirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions[].evidenceRef` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions[].id` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field id. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.expenseAttributions[].source` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field source. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossDesignations` | array |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field fapiLossDesignations. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossDesignations[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossDesignations[].claimTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field claimTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossDesignations[].designatedAmount` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field designatedAmount. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossDesignations[].designationBy` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field designationBy. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossDesignations[].lossId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field lossId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossDesignations[].relevantPersonAtLossYearEndConfirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field relevantPersonAtLossYearEndConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossHistoryComplete` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field fapiLossHistoryComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools` | array |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field fapiLossPools. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools[].controlledForeignAffiliateOfRelevantPersonConfirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field controlledForeignAffiliateOfRelevantPersonConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools[].foreignAccrualLoss` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field foreignAccrualLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools[].lossEvidenceReference` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field lossEvidenceReference. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools[].lossId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field lossId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools[].lossTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field lossTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.fapiLossPools[].lossType` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field lossType. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.participatingPercentage` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field participatingPercentage. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.participationBasis` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field participationBasis. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.residentConfirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field residentConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim` | object |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Actual source facts, supporting evidence and source review; an incomplete active producer holds its receivers. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.affiliateId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field affiliateId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.affiliateName` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field affiliateName. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.affiliateTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field affiliateTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.confirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.evidenceRef` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.foreignAccrualTaxDeductibleCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field foreignAccrualTaxDeductibleCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.foreignAccrualTaxDeductionCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field foreignAccrualTaxDeductionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.historyUngrained` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field historyUngrained. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.inclusionCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field inclusionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.incomeAmountId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field incomeAmountId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.priorFiveYearS91_4DeductionsForShareCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field priorFiveYearS91_4DeductionsForShareCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.priorYearInclusionCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field priorYearInclusionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.priorYearInclusionTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field priorYearInclusionTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.relevantTaxFactor` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field relevantTaxFactor. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.s91_4DeductionHistory` | array |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field s91_4DeductionHistory. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.s91_4DeductionHistory[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.s91_4DeductionHistory[].corporationTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field corporationTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.s91_4DeductionHistory[].deductibleAmountCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field deductibleAmountCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.s91_4DeductionHistory[].incomeAmountId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field incomeAmountId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaim.undeductedForeignAccrualTaxApplicableCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field undeductedForeignAccrualTaxApplicableCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore` | object |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Actual source facts, supporting evidence and source review; an incomplete active producer holds its receivers. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.affiliateId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field affiliateId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.affiliateName` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field affiliateName. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.affiliateTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field affiliateTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.confirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.evidenceRef` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.foreignAccrualTaxDeductibleCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field foreignAccrualTaxDeductibleCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.foreignAccrualTaxDeductionCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field foreignAccrualTaxDeductionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.historyUngrained` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field historyUngrained. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.inclusionCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field inclusionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.incomeAmountId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field incomeAmountId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.priorFiveYearS91_4DeductionsForShareCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field priorFiveYearS91_4DeductionsForShareCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.priorYearInclusionCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field priorYearInclusionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.priorYearInclusionTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field priorYearInclusionTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.relevantTaxFactor` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field relevantTaxFactor. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.s91_4DeductionHistory` | array |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field s91_4DeductionHistory. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.s91_4DeductionHistory[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.s91_4DeductionHistory[].corporationTaxationYearEnd` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field corporationTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.s91_4DeductionHistory[].deductibleAmountCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field deductibleAmountCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.s91_4DeductionHistory[].incomeAmountId` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field incomeAmountId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.taxClaimBefore.undeductedForeignAccrualTaxApplicableCAD` | string |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field undeductedForeignAccrualTaxApplicableCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].fapiSource.yearEndConfirmed` | boolean |  | ACTA8; ITA91/92/95 and Reg5903/5903.1; S130 parts2M/O: replay native FAPI, loss relief and91(4) claims; extra EIFEL inclusion adds no92(1)(a)basis, while actual tax-claim differences reach the identified share. Source field yearEndConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].foreignAccrualTaxDeduction` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: foreignAccrualTaxDeduction. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].grossExpenses` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: grossExpenses. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].id` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: id. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].partnershipExpenseShare` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: partnershipExpenseShare. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].revenues` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: revenues. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].specifiedParticipatingRatio` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: specifiedParticipatingRatio. |
| `abAt1Inputs.calculation.schedule21.eifel.affiliates[].yearEnd` | string |  | Complete CFA source workpapers; weighted relevant IFE/IFR, adjusted denial denominator and affiliate RIFE are computed under18.2 and95(2)(f.11). Source field: yearEnd. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory` | array |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistoryComplete` | boolean |  | Confirm the complete reviewed source roster for this EIFEL stream. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].absorbed` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: absorbed. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].adjustedTaxableIncomeBefore257` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: adjustedTaxableIncomeBefore257. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].confirmed` | boolean |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: confirmed. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].evidenceRef` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: evidenceRef. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].expenses` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: expenses. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.accountingStandard` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.amended` | boolean \| null |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.auditedStatementsRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.consolidatedGroupConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.currency` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.electionRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.fairValueElectionMadeInFirstYear` | boolean \| null |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.fairValueElectionRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.filingDate` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.capitalizedExpenseDividends` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.capitalizedInterest` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.depreciation` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.disposalGainBelowCost` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.disposalLoss` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.equityCapitalizedInterest` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.equityInterestExpense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.equityInterestIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.equityNetFairValue` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.equityTaxAndDepreciation` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.equityTaxRecoveryFairValueAndDisposalGain` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.exemptBorrowingIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.expenseDividends` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.financingFeeIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.financingFees` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.impairment` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.incomeDividends` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.incomeTaxExpense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.incomeTaxRecoverable` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.interestExpense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.interestIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.netFairValue` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.netIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.netLoss` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.financials.similarCharges` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.membersComplete` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].adjustedTaxableIncomeBefore257` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].allocation` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].assessmentRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].assessmentSentOn` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].eligibleThroughoutConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].filingDueDate` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].id` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].isFiler` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].signatoryRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].yearEnd` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.members[].yearStart` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.ministerPermissionRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.nonMembersComplete` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.nonMembers[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.nonMembers[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.nonMembers[].expense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.nonMembers[].id` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.nonMembers[].income` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.nonMembers[].specifiedNonMemberConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.periodEnd` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.periodStart` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.previousAmendmentFiled` | boolean \| null |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorAntiAvoidanceAbsentConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorElectionRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.capitalizedExpenseDividends` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.capitalizedInterest` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.depreciation` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.disposalGainBelowCost` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.disposalLoss` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.equityCapitalizedInterest` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.equityInterestExpense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.equityInterestIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.equityNetFairValue` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.equityTaxAndDepreciation` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.equityTaxRecoveryFairValueAndDisposalGain` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.exemptBorrowingIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.expenseDividends` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.financingFeeIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.financingFees` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.impairment` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.incomeDividends` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.incomeTaxExpense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.incomeTaxRecoverable` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.interestExpense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.interestIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.netFairValue` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.netIncome` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.netLoss` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorFinancials.similarCharges` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].adjustedTaxableIncomeBefore257` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].allocation` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].assessmentRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].assessmentSentOn` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].eligibleThroughoutConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].filingDueDate` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].id` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].isFiler` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].signatoryRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].yearEnd` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorMembers[].yearStart` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorNonMembers[].confirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorNonMembers[].evidenceRef` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorNonMembers[].expense` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorNonMembers[].id` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorNonMembers[].income` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.priorNonMembers[].specifiedNonMemberConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.singleMemberResidentConfirmed` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatio.supersededByAmendment` | boolean \| null |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatioElection` | boolean |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: groupRatioElection. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].groupRatioLimit` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].regimeApplied` | boolean |  | Actual reviewed statutory regime application for this source year. An early-applied group-election year is not reclassified as a T2224 pre-regime year merely because its start precedes October1,2023. Computed source-year proposals retain this fact with review cleared. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].revenues` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: revenues. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].rifeDeductible` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: rifeDeductible. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].transferred` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: transferred. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].yearEnd` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: yearEnd. |
| `abAt1Inputs.calculation.schedule21.eifel.capacityHistory[].yearStart` | string |  | Independent source-year EIFEL bases and vintage-attributed prior uses; CUEC and current absorption are computed, with the three-year window and111(5.01) cutoff. Source field: yearStart. |
| `abAt1Inputs.calculation.schedule21.eifel.commencement` | object |  | SC2024 c15 s7(2)(a)/(b): distinguish the preceding-three-years application-purpose test from the shortened-2023-year rate-purpose test. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.commencement.applicationTransactionRef` | string |  | SC2024 c15 s7(2)(a)/(b): distinguish the preceding-three-years application-purpose test from the shortened-2023-year rate-purpose test. Source field applicationTransactionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.commencement.confirmed` | boolean |  | SC2024 c15 s7(2)(a)/(b): distinguish the preceding-three-years application-purpose test from the shortened-2023-year rate-purpose test. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.commencement.evidenceRef` | string |  | SC2024 c15 s7(2)(a)/(b): distinguish the preceding-three-years application-purpose test from the shortened-2023-year rate-purpose test. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.commencement.precedingYearShortenedForApplicationPurpose` | boolean \| null |  | SC2024 c15 s7(2)(a)/(b): distinguish the preceding-three-years application-purpose test from the shortened-2023-year rate-purpose test. Source field precedingYearShortenedForApplicationPurpose; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.commencement.rateTransactionRef` | string |  | SC2024 c15 s7(2)(a)/(b): distinguish the preceding-three-years application-purpose test from the shortened-2023-year rate-purpose test. Source field rateTransactionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.commencement.year2023ShortenedForRatePurpose` | boolean \| null |  | SC2024 c15 s7(2)(a)/(b): distinguish the preceding-three-years application-purpose test from the shortened-2023-year rate-purpose test. Source field year2023ShortenedForRatePurpose; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.confirmed` | boolean |  | Independent Alberta EIFEL confirmed source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.controlledForeignAffiliatesAbsentConfirmed` | boolean |  | Independent Alberta EIFEL controlledForeignAffiliatesAbsentConfirmed source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.effects` | object |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Actual source facts, supporting evidence and source review; an incomplete active producer holds its receivers. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.confirmed` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources` | array |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field directSources. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSourcesComplete` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field directSourcesComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].amount` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field amount. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].confirmed` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].deductionLine` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field deductionLine. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].evidenceRef` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].fiscalPeriodEnd` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].id` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field id. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].incomeKind` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field incomeKind. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].kind` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field kind. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].partnershipId` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.directSources[].propertyId` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field propertyId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.evidenceRef` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiCcpcOrSubstantive` | boolean \| null |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field fapiCcpcOrSubstantive. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims` | array |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field fapiOtherClaims. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaimsComplete` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field fapiOtherClaimsComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].affiliateId` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field affiliateId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].affiliateName` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field affiliateName. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].affiliateTaxationYearEnd` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field affiliateTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].confirmed` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].evidenceRef` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].foreignAccrualTaxDeductibleCAD` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field foreignAccrualTaxDeductibleCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].foreignAccrualTaxDeductionCAD` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field foreignAccrualTaxDeductionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].historyUngrained` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field historyUngrained. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].inclusionCAD` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field inclusionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].incomeAmountId` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field incomeAmountId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].priorFiveYearS91_4DeductionsForShareCAD` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field priorFiveYearS91_4DeductionsForShareCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].priorYearInclusionCAD` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field priorYearInclusionCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].priorYearInclusionTaxationYearEnd` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field priorYearInclusionTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].relevantTaxFactor` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field relevantTaxFactor. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].s91_4DeductionHistory` | array |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field s91_4DeductionHistory. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].s91_4DeductionHistory[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].s91_4DeductionHistory[].corporationTaxationYearEnd` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field corporationTaxationYearEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].s91_4DeductionHistory[].deductibleAmountCAD` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field deductibleAmountCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].s91_4DeductionHistory[].incomeAmountId` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field incomeAmountId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.fapiOtherClaims[].undeductedForeignAccrualTaxApplicableCAD` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field undeductedForeignAccrualTaxApplicableCAD. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions` | array |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field federalAttributions. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributionsComplete` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field federalAttributionsComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions[].amount` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field amount. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions[].confirmed` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions[].evidenceRef` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions[].id` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field id. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions[].incomeKind` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field incomeKind. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.federalAttributions[].line` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field line. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.otherDiscretionaryExcludesEifelConfirmed` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field otherDiscretionaryExcludesEifelConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources` | array |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field partnershipSources. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSourcesComplete` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field partnershipSourcesComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].amount` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field amount. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].confirmed` | boolean |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].deductionLine` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].evidenceRef` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].fiscalPeriodEnd` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field fiscalPeriodEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].id` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field id. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].incomeKind` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field incomeKind. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].kind` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field kind. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].partnershipId` | string |  | ACTA8/9/18; ITA18.2(2)/(3),12(1)(l.2)/(2.1),111(3)(a)(i.1): source income/capital receiving reconciliation. Ordinary denials enter040/041 once; capital denials affect actual018D or the net012066 claim, preserving gross pools. Source field partnershipId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.effects.partnershipSources[].propertyId` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.evidenceRef` | string |  | Independent Alberta EIFEL evidenceRef source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.expenseOffsets` | string |  | Independent Alberta EIFEL expenseOffsets source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio` | object |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.accountingStandard` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field accountingStandard; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.amended` | boolean \| null |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field amended; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.auditedStatementsRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field auditedStatementsRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.confirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.consolidatedGroupConfirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field consolidatedGroupConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.currency` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field currency; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.electionRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field electionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.evidenceRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.fairValueElectionMadeInFirstYear` | boolean \| null |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field fairValueElectionMadeInFirstYear; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.fairValueElectionRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field fairValueElectionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.filingDate` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field filingDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials` | object |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.capitalizedExpenseDividends` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field capitalizedExpenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.capitalizedInterest` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field capitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.confirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.depreciation` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field depreciation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.disposalGainBelowCost` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field disposalGainBelowCost; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.disposalLoss` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field disposalLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.equityCapitalizedInterest` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field equityCapitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.equityInterestExpense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field equityInterestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.equityInterestIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field equityInterestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.equityNetFairValue` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26) parts3/4: compute specified interest, GANBI, GNIE, the group ratio, three group ceilings and operative elected filer allocation. Source field equityNetFairValue. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.equityTaxAndDepreciation` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.equityTaxRecoveryFairValueAndDisposalGain` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.evidenceRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.exemptBorrowingIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field exemptBorrowingIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.expenseDividends` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field expenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.financingFeeIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field financingFeeIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.financingFees` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field financingFees; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.impairment` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field impairment; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.incomeDividends` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field incomeDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.incomeTaxExpense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field incomeTaxExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.incomeTaxRecoverable` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field incomeTaxRecoverable; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.interestExpense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field interestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.interestIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field interestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.netFairValue` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field netFairValue; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.netIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field netIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.netLoss` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field netLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.financials.similarCharges` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field similarCharges; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members` | array |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field members; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.membersComplete` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field membersComplete; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].adjustedTaxableIncomeBefore257` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field adjustedTaxableIncomeBefore257; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].allocation` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field allocation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].assessmentRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field assessmentRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].assessmentSentOn` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field assessmentSentOn; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].confirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].eligibleThroughoutConfirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field eligibleThroughoutConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].evidenceRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].filingDueDate` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field filingDueDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].id` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].isFiler` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field isFiler; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].signatoryRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field signatoryRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].yearEnd` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.members[].yearStart` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field yearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.ministerPermissionRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field ministerPermissionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers` | array |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field nonMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembersComplete` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field nonMembersComplete; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers[].confirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers[].evidenceRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers[].expense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field expense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers[].id` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers[].income` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field income; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.nonMembers[].specifiedNonMemberConfirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field specifiedNonMemberConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.periodEnd` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field periodEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.periodStart` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field periodStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.previousAmendmentFiled` | boolean \| null |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorAntiAvoidanceAbsentConfirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field priorAntiAvoidanceAbsentConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorElectionRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field priorElectionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials` | object |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.capitalizedExpenseDividends` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field capitalizedExpenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.capitalizedInterest` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field capitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.confirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.depreciation` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field depreciation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.disposalGainBelowCost` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field disposalGainBelowCost; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.disposalLoss` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field disposalLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.equityCapitalizedInterest` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field equityCapitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.equityInterestExpense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field equityInterestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.equityInterestIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field equityInterestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.equityNetFairValue` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26) parts3/4: compute specified interest, GANBI, GNIE, the group ratio, three group ceilings and operative elected filer allocation. Source field equityNetFairValue. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.equityTaxAndDepreciation` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.equityTaxRecoveryFairValueAndDisposalGain` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.evidenceRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.exemptBorrowingIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field exemptBorrowingIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.expenseDividends` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field expenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.financingFeeIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field financingFeeIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.financingFees` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field financingFees; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.impairment` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field impairment; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.incomeDividends` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field incomeDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.incomeTaxExpense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field incomeTaxExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.incomeTaxRecoverable` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field incomeTaxRecoverable; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.interestExpense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field interestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.interestIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field interestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.netFairValue` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field netFairValue; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.netIncome` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field netIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.netLoss` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field netLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorFinancials.similarCharges` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field similarCharges; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers` | array |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field priorMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].adjustedTaxableIncomeBefore257` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field adjustedTaxableIncomeBefore257; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].allocation` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field allocation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].assessmentRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field assessmentRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].assessmentSentOn` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field assessmentSentOn; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].confirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].eligibleThroughoutConfirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field eligibleThroughoutConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].evidenceRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].filingDueDate` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field filingDueDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].id` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].isFiler` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field isFiler; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].signatoryRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field signatoryRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].yearEnd` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorMembers[].yearStart` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field yearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers` | array |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field priorNonMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers[].confirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers[].evidenceRef` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers[].expense` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field expense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers[].id` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers[].income` | string |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field income; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.priorNonMembers[].specifiedNonMemberConfirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field specifiedNonMemberConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.singleMemberResidentConfirmed` | boolean |  | ACTA8; ITA18.21(1)-(8); T2225 E(26), parts3/4: compute the group ratio, statutory group ceiling and actual filer allocation. Source field singleMemberResidentConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatio.supersededByAmendment` | boolean \| null |  | ACTA8; ITA18.21(1)-(8); T2225 E(26) parts3/4: compute specified interest, GANBI, GNIE, the group ratio, three group ceilings and operative elected filer allocation. Source field supersededByAmendment. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatioElection` | boolean \| null |  | Independent Alberta EIFEL groupRatioElection source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.groupRatioLimit` | string |  | Independent Alberta EIFEL groupRatioLimit source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.interestAndFinancingRevenues` | string |  | Independent Alberta EIFEL interestAndFinancingRevenues source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.nonClaimEffectsReconciled` | boolean |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.otherDeductionExpenses` | string |  | Independent Alberta EIFEL otherDeductionExpenses source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.otherPartnershipExpenses` | string |  | Independent Alberta EIFEL otherPartnershipExpenses source fact. Monetary inputs are exact bounded text; ATI before257 can be signed. Supporting income/capital effects must reconcile. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection` | object |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is preRegimeElection. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.confirmed` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is confirmed. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.earliestFilingDueDate` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is earliestFilingDueDate. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.electionFiled` | boolean \| null |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is electionFiled. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.evidenceRef` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is evidenceRef. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.filingDate` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is filingDate. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.jointElectionRef` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is jointElectionRef. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members` | array |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is members. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.membersComplete` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is membersComplete. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].allocations` | array |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is allocations. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].allocations[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].allocations[].amount` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is amount. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].allocations[].confirmed` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is confirmed. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].allocations[].evidenceRef` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is evidenceRef. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].allocations[].yearEnd` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is yearEnd. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].confirmed` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is confirmed. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].eligibleGroupEntityConfirmed` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is eligibleGroupEntityConfirmed. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].evidenceRef` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is evidenceRef. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].financialOrExemptInAnyPreRegimeYear` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is financialOrExemptInAnyPreRegimeYear. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].firstRegimeEarlyApplicationConfirmed` | boolean |  | SC2024 c15 s7(2)(c)/(d): actual first regime period, preceding source years, eligibility, loss restriction and filed allocation; early first regimes need their actual purpose/period source. Source field firstRegimeEarlyApplicationConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].firstRegimeEarlyApplicationRef` | string |  | SC2024 c15 s7(2)(c)/(d): actual first regime period, preceding source years, eligibility, loss restriction and filed allocation; early first regimes need their actual purpose/period source. Source field firstRegimeEarlyApplicationRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].firstRegimeEnd` | string |  | SC2024 c15 s7(2)(c)/(d): actual first regime period, preceding source years, eligibility, loss restriction and filed allocation; early first regimes need their actual purpose/period source. Source field firstRegimeEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].firstRegimeStart` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is firstRegimeStart. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].historyComplete` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is historyComplete. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].id` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is id. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].isFiler` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is isFiler. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].lossRestrictionAtYearStartOccurred` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is lossRestrictionAtYearStartOccurred. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].lossRestrictionYearStart` | null \| string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is lossRestrictionYearStart. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years` | array |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is years. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].absorbed` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].adjustedTaxableIncomeBefore257` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is adjustedTaxableIncomeBefore257. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].confirmed` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is confirmed. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].evidenceRef` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is evidenceRef. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].expenses` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is expenses. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio` | object |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.accountingStandard` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field accountingStandard; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.amended` | boolean \| null |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field amended; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.auditedStatementsRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field auditedStatementsRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.confirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.consolidatedGroupConfirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field consolidatedGroupConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.currency` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field currency; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.electionRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field electionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.evidenceRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.fairValueElectionMadeInFirstYear` | boolean \| null |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field fairValueElectionMadeInFirstYear; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.fairValueElectionRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field fairValueElectionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.filingDate` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field filingDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials` | object |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.capitalizedExpenseDividends` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field capitalizedExpenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.capitalizedInterest` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field capitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.confirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.depreciation` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field depreciation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.disposalGainBelowCost` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field disposalGainBelowCost; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.disposalLoss` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field disposalLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.equityCapitalizedInterest` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field equityCapitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.equityInterestExpense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field equityInterestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.equityInterestIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field equityInterestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.equityNetFairValue` | string |  | SC2024 c15 s7(2)(c)/(d): actual first regime period, preceding source years, eligibility, loss restriction and filed allocation; early first regimes need their actual purpose/period source. Source field equityNetFairValue. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.equityTaxAndDepreciation` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.equityTaxRecoveryFairValueAndDisposalGain` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.evidenceRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.exemptBorrowingIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field exemptBorrowingIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.expenseDividends` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field expenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.financingFeeIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field financingFeeIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.financingFees` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field financingFees; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.impairment` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field impairment; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.incomeDividends` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field incomeDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.incomeTaxExpense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field incomeTaxExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.incomeTaxRecoverable` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field incomeTaxRecoverable; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.interestExpense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field interestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.interestIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field interestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.netFairValue` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field netFairValue; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.netIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field netIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.netLoss` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field netLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.financials.similarCharges` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field similarCharges; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members` | array |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field members; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.membersComplete` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field membersComplete; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].adjustedTaxableIncomeBefore257` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field adjustedTaxableIncomeBefore257; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].allocation` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field allocation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].assessmentRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field assessmentRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].assessmentSentOn` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field assessmentSentOn; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].confirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].eligibleThroughoutConfirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field eligibleThroughoutConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].evidenceRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].filingDueDate` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field filingDueDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].id` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].isFiler` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field isFiler; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].signatoryRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field signatoryRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].yearEnd` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.members[].yearStart` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field yearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.ministerPermissionRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field ministerPermissionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers` | array |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field nonMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembersComplete` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field nonMembersComplete; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers[].confirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers[].evidenceRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers[].expense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field expense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers[].id` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers[].income` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field income; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.nonMembers[].specifiedNonMemberConfirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field specifiedNonMemberConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.periodEnd` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field periodEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.periodStart` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field periodStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.previousAmendmentFiled` | boolean \| null |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorAntiAvoidanceAbsentConfirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field priorAntiAvoidanceAbsentConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorElectionRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field priorElectionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials` | object |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.capitalizedExpenseDividends` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field capitalizedExpenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.capitalizedInterest` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field capitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.confirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.depreciation` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field depreciation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.disposalGainBelowCost` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field disposalGainBelowCost; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.disposalLoss` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field disposalLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.equityCapitalizedInterest` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field equityCapitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.equityInterestExpense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field equityInterestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.equityInterestIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field equityInterestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.equityNetFairValue` | string |  | SC2024 c15 s7(2)(c)/(d): actual first regime period, preceding source years, eligibility, loss restriction and filed allocation; early first regimes need their actual purpose/period source. Source field equityNetFairValue. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.equityTaxAndDepreciation` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.equityTaxRecoveryFairValueAndDisposalGain` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.evidenceRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.exemptBorrowingIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field exemptBorrowingIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.expenseDividends` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field expenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.financingFeeIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field financingFeeIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.financingFees` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field financingFees; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.impairment` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field impairment; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.incomeDividends` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field incomeDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.incomeTaxExpense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field incomeTaxExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.incomeTaxRecoverable` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field incomeTaxRecoverable; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.interestExpense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field interestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.interestIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field interestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.netFairValue` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field netFairValue; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.netIncome` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field netIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.netLoss` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field netLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorFinancials.similarCharges` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field similarCharges; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers` | array |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field priorMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].adjustedTaxableIncomeBefore257` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field adjustedTaxableIncomeBefore257; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].allocation` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field allocation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].assessmentRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field assessmentRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].assessmentSentOn` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field assessmentSentOn; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].confirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].eligibleThroughoutConfirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field eligibleThroughoutConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].evidenceRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].filingDueDate` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field filingDueDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].id` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].isFiler` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field isFiler; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].signatoryRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field signatoryRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].yearEnd` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorMembers[].yearStart` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field yearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers` | array |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field priorNonMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers[].confirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers[].evidenceRef` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers[].expense` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field expense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers[].id` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers[].income` | string |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field income; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.priorNonMembers[].specifiedNonMemberConfirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field specifiedNonMemberConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.singleMemberResidentConfirmed` | boolean |  | SC2024 c15 s7(2)(d)(vii)(B); ITA18.21; T2225 E(26): actual pre-regime source-year group election with the first-regime-year filing deadline. Source field singleMemberResidentConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatio.supersededByAmendment` | boolean \| null |  | SC2024 c15 s7(2)(c)/(d): actual first regime period, preceding source years, eligibility, loss restriction and filed allocation; early first regimes need their actual purpose/period source. Source field supersededByAmendment. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatioElection` | boolean |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is groupRatioElection. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].groupRatioLimit` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is groupRatioLimit. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].regimeApplied` | boolean |  | SC2024 c15 s7(2)(c)/(d): actual first regime period, preceding source years, eligibility, loss restriction and filed allocation; early first regimes need their actual purpose/period source. Source field regimeApplied. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].revenues` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is revenues. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].rifeDeductible` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].transferred` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].yearEnd` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is yearEnd. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.members[].years[].yearStart` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is yearStart. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.ministerExtensionRef` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is ministerExtensionRef. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.ratioOfPermissibleExpenses` | string |  | Independent Alberta EIFEL source facts under ACTA8/18, ITA18.2 and111; pre-regime joint-election capacity under SC2024 c15 s7(2)(c)/(d). This source field is ratioOfPermissibleExpenses. Actual source periods, complete rosters and preparer evidence/review are required; no federal amount substitutes for an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment` | object |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.assessedMemberId` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessedMemberId; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.assessedYearEnd` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessedYearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.assessmentDate` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessmentDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.assessmentRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessmentRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorFilingDate` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorFilingDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorJointElectionRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorJointElectionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers` | array |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].allocations` | array |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field allocations; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].allocations[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].allocations[].amount` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field amount; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].allocations[].confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].allocations[].evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].allocations[].yearEnd` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].eligibleGroupEntityConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field eligibleGroupEntityConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].financialOrExemptInAnyPreRegimeYear` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field financialOrExemptInAnyPreRegimeYear; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].firstRegimeEarlyApplicationConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the assessed owner/year; enforce90days and prior allocation limits. Source field firstRegimeEarlyApplicationConfirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].firstRegimeEarlyApplicationRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the assessed owner/year; enforce90days and prior allocation limits. Source field firstRegimeEarlyApplicationRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].firstRegimeEnd` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the assessed owner/year; enforce90days and prior allocation limits. Source field firstRegimeEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].firstRegimeStart` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field firstRegimeStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].historyComplete` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field historyComplete; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].id` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].isFiler` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field isFiler; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].lossRestrictionAtYearStartOccurred` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field lossRestrictionAtYearStartOccurred; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].lossRestrictionYearStart` | null \| string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field lossRestrictionYearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years` | array |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field years; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].absorbed` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].adjustedTaxableIncomeBefore257` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field adjustedTaxableIncomeBefore257; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].expenses` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field expenses; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio` | object |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.accountingStandard` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field accountingStandard; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.amended` | boolean \| null |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field amended; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.auditedStatementsRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field auditedStatementsRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.consolidatedGroupConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field consolidatedGroupConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.currency` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field currency; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.electionRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field electionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.fairValueElectionMadeInFirstYear` | boolean \| null |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field fairValueElectionMadeInFirstYear; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.fairValueElectionRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field fairValueElectionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.filingDate` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field filingDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials` | object |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.capitalizedExpenseDividends` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field capitalizedExpenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.capitalizedInterest` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field capitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.depreciation` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field depreciation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.disposalGainBelowCost` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field disposalGainBelowCost; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.disposalLoss` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field disposalLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.equityCapitalizedInterest` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field equityCapitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.equityInterestExpense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field equityInterestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.equityInterestIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field equityInterestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.equityNetFairValue` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the assessed owner/year; enforce90days and prior allocation limits. Source field equityNetFairValue. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.equityTaxAndDepreciation` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.equityTaxRecoveryFairValueAndDisposalGain` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.exemptBorrowingIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field exemptBorrowingIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.expenseDividends` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field expenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.financingFeeIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field financingFeeIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.financingFees` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field financingFees; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.impairment` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field impairment; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.incomeDividends` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field incomeDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.incomeTaxExpense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field incomeTaxExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.incomeTaxRecoverable` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field incomeTaxRecoverable; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.interestExpense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field interestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.interestIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field interestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.netFairValue` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field netFairValue; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.netIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field netIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.netLoss` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field netLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.financials.similarCharges` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field similarCharges; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members` | array |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field members; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.membersComplete` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field membersComplete; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].adjustedTaxableIncomeBefore257` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field adjustedTaxableIncomeBefore257; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].allocation` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field allocation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].assessmentRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessmentRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].assessmentSentOn` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessmentSentOn; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].eligibleThroughoutConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field eligibleThroughoutConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].filingDueDate` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field filingDueDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].id` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].isFiler` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field isFiler; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].signatoryRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field signatoryRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].yearEnd` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.members[].yearStart` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field yearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.ministerPermissionRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field ministerPermissionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers` | array |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field nonMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembersComplete` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field nonMembersComplete; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers[].confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers[].evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers[].expense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field expense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers[].id` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers[].income` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field income; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.nonMembers[].specifiedNonMemberConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field specifiedNonMemberConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.periodEnd` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field periodEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.periodStart` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field periodStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.previousAmendmentFiled` | boolean \| null |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorAntiAvoidanceAbsentConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorAntiAvoidanceAbsentConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorElectionRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorElectionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials` | object |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Actual source facts, evidence and preparer confirmation; no reviewed scalar replaces an incomplete active producer. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.capitalizedExpenseDividends` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field capitalizedExpenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.capitalizedInterest` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field capitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.depreciation` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field depreciation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.disposalGainBelowCost` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field disposalGainBelowCost; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.disposalLoss` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field disposalLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.equityCapitalizedInterest` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field equityCapitalizedInterest; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.equityInterestExpense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field equityInterestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.equityInterestIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field equityInterestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.equityNetFairValue` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the assessed owner/year; enforce90days and prior allocation limits. Source field equityNetFairValue. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.equityTaxAndDepreciation` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.equityTaxRecoveryFairValueAndDisposalGain` | string |  | ITA18.21(1); T2225 E(26) lines210/217: ordinary equity-accounted tax, depreciation/impairment/disposal components EXCLUDING fair-value amounts. Capture the actual equity net fair-value amount separately; the backend includes it only with the first-year18.21(4)election. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.exemptBorrowingIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field exemptBorrowingIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.expenseDividends` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field expenseDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.financingFeeIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field financingFeeIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.financingFees` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field financingFees; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.impairment` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field impairment; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.incomeDividends` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field incomeDividends; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.incomeTaxExpense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field incomeTaxExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.incomeTaxRecoverable` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field incomeTaxRecoverable; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.interestExpense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field interestExpense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.interestIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field interestIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.netFairValue` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field netFairValue; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.netIncome` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field netIncome; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.netLoss` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field netLoss; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorFinancials.similarCharges` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field similarCharges; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers` | array |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].adjustedTaxableIncomeBefore257` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field adjustedTaxableIncomeBefore257; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].allocation` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field allocation; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].assessmentRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessmentRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].assessmentSentOn` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field assessmentSentOn; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].eligibleThroughoutConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field eligibleThroughoutConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].filingDueDate` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field filingDueDate; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].id` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].isFiler` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field isFiler; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].signatoryRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field signatoryRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].yearEnd` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorMembers[].yearStart` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field yearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers` | array |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorNonMembers; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers[].confirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field confirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers[].evidenceRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field evidenceRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers[].expense` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field expense; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers[].id` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field id; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers[].income` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field income; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.priorNonMembers[].specifiedNonMemberConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field specifiedNonMemberConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.singleMemberResidentConfirmed` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field singleMemberResidentConfirmed; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatio.supersededByAmendment` | boolean \| null |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the assessed owner/year; enforce90days and prior allocation limits. Source field supersededByAmendment. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatioElection` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field groupRatioElection; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].groupRatioLimit` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field groupRatioLimit; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].regimeApplied` | boolean |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the assessed owner/year; enforce90days and prior allocation limits. Source field regimeApplied. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].revenues` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field revenues; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].rifeDeductible` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].transferred` | string |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].yearEnd` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field yearEnd; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMembers[].years[].yearStart` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field yearStart; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.preRegimeElection.reassessmentAmendment.priorMinisterExtensionRef` | string |  | SC2024 c15 s7(2)(e)-(g): replay the prior filed election and compare the actual assessed owner/year; enforce the90-day amendment window and prior allocation conditions. Source field priorMinisterExtensionRef; used in this election/reconciliation, with the parent source review and complete roster requirements. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity` | array |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacityComplete` | boolean |  | Confirm the complete reviewed source roster for this EIFEL stream. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].availableCapacity` | string |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: availableCapacity. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].confirmed` | boolean |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: confirmed. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].electedTransfer` | string |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: electedTransfer. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].eligibleGroupEntityConfirmed` | boolean |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: eligibleGroupEntityConfirmed. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].evidenceRef` | string |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: evidenceRef. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].id` | string |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: id. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].jointElectionRef` | string |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: jointElectionRef. |
| `abAt1Inputs.calculation.schedule21.eifel.receivedCapacity[].transferorYearEnd` | string |  | Actual18.2(4) joint-election transfers, linked to eligible donor source capacity in the same calendar year; existing021330 reports the independent Alberta sum. Source field: transferorYearEnd. |
| `abAt1Inputs.calculation.schedule21.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions` | array |  | Complete roster, at most 500 rows, of original allowable ABILs in tenth-preceding-year Alberta non-capital loss vintages. Adopted ITA 111(8) C/E(c) determines conversion after current applications and removes it from next-year non-capital continuity. This calculation owns line 059 when present. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[].confirmed` | boolean |  | Preparer confirmation of the ABIL origin and continuity evidence. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[].evidenceRef` | string |  | Loss-identity and unused Alberta continuity reconciliation, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[].lossId` | string |  | Unique assessed Alberta non-capital loss identity, at most 1000 characters; its origin must be the tenth preceding actual taxation year. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[].originalAllowableBusinessInvestmentLoss` | object |  | Original allowable ABIL in that origin year, in net allowable units with separate source evidence and confirmation. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[].originalAllowableBusinessInvestmentLoss.amount` | string |  | Nonnegative exact decimal text for the original allowable ABIL, not an assumed flat gross-up. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[].originalAllowableBusinessInvestmentLoss.confirmed` | boolean |  | Preparer confirmation of the original allowable ABIL amount. |
| `abAt1Inputs.calculation.schedule21.expiredAbilConversions[].originalAllowableBusinessInvestmentLoss.evidenceRef` | string |  | Origin-year assessed ABIL evidence, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.expiredAbilGross` | object |  | Reviewed gross expired ABIL. Nil is supported; a positive amount stays held for origin-rate and unused-NCL reconciliation, not the stale flat 4/3 rule. |
| `abAt1Inputs.calculation.schedule21.expiredAbilGross.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.expiredAbilGross.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.expiredAbilGross.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.farm` | object |  | Farm loss facts or election, separate from restricted-farm and non-capital pools. |
| `abAt1Inputs.calculation.schedule21.farm.chiefSource` | string |  | Closed chief-source fact: none, farming, farmingWithSubordinate, manufacturingException (ITA 31(2)), or other. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeAfter37` | object |  | Signed net farming result after ITA 37, before the ITA 31 restriction. Cannot exceed the before-37 result. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeAfter37.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeAfter37.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeAfter37.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeBefore37` | object |  | Signed net income/loss from all farming businesses before the ITA 37 deduction and before the ITA 31 restriction. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeBefore37.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeBefore37.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.farm.farmingIncomeBefore37.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.farm.fishingIncome` | object |  | Signed net income/loss from all fishing businesses; offsets farming losses in the ITA 111(8) farm-loss limit. |
| `abAt1Inputs.calculation.schedule21.farm.fishingIncome.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.farm.fishingIncome.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.farm.fishingIncome.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.farm.restrictedFarmAddbackIncluded` | boolean |  | Confirms the computed restricted-farm amount is already added back in Schedule 12 line 054; required when positive. |
| `abAt1Inputs.calculation.schedule21.listedPersonalPropertyClaimIncludedInGrossResult` | boolean |  | Confirms the LPP claim is reflected in the reviewed final gross capital result. A produced Schedule 18 line 060 must match the claim instead. |
| `abAt1Inputs.calculation.schedule21.listedPersonalPropertyGrossResult` | object |  | Reviewed signed gross current LPP gain/loss before applying old LPP losses. Negative amounts create the separate current LPP pool. |
| `abAt1Inputs.calculation.schedule21.listedPersonalPropertyGrossResult.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.listedPersonalPropertyGrossResult.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.listedPersonalPropertyGrossResult.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.ordinaryContinuityConfirmed` | boolean |  | Legacy ordinary continuity confirmation. Selected transitions require independent dated balances and qualifying-party evidence. |
| `abAt1Inputs.calculation.schedule21.partnerships` | array |  | At most 500 partnership fiscal-period rows. Repeat the stable partnership ID for multiple periods; current losses are calculated separately and the annual prior-loss ceiling uses the last period. |
| `abAt1Inputs.calculation.schedule21.partnershipsComplete` | boolean |  | Confirms all current partnerships and partnerships with opening LP losses are included, including an explicit empty list. |
| `abAt1Inputs.calculation.schedule21.partnerships[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.partnerships[].adjustedCostBase` | string |  | Signed partnership-interest ACB after any ITA 96(2.3) acquisition limit, at partnership fiscal-period end. |
| `abAt1Inputs.calculation.schedule21.partnerships[].amountsOwing` | string |  | Amounts owing to the partnership or relevant non-arm-length persons under ITA 96(2.2)(c). |
| `abAt1Inputs.calculation.schedule21.partnerships[].applied` | object |  | Reviewed election to deduct preceding-year losses of this same partnership; capped by old pool and at-risk capacity, oldest first. |
| `abAt1Inputs.calculation.schedule21.partnerships[].applied.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.partnerships[].applied.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.partnerships[].applied.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.partnerships[].atRiskRulesReviewed` | boolean |  | Confirms adopted ITA 96(2.2)/(2.3) facts and the secondary-acquisition limit on ACB. |
| `abAt1Inputs.calculation.schedule21.partnerships[].claimInterestPortion` | string |  | Per-period section18.2 interest attribution claimInterestPortion. Current interest excludes at-risk and thin-capitalization denials; last-period old-loss attribution applies once to the annual gross claim. |
| `abAt1Inputs.calculation.schedule21.partnerships[].confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.partnerships[].currentInterestShare` | string |  | Per-period section18.2 interest attribution currentInterestShare. Current interest excludes at-risk and thin-capitalization denials; last-period old-loss attribution applies once to the annual gross claim. |
| `abAt1Inputs.calculation.schedule21.partnerships[].eifelApplies` | boolean |  | LP deduction EIFEL applicability. True or unanswered remains held until the LP/EIFEL interaction is computed. |
| `abAt1Inputs.calculation.schedule21.partnerships[].evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.partnerships[].fiscalPeriodEnd` | string |  | This partnership fiscal-period end within the corporation taxation period, complete ISO date. Each partnership/date pair must be unique. |
| `abAt1Inputs.calculation.schedule21.partnerships[].interestDeniedAtRisk` | string |  | Per-period section18.2 interest attribution interestDeniedAtRisk. Current interest excludes at-risk and thin-capitalization denials; last-period old-loss attribution applies once to the annual gross claim. |
| `abAt1Inputs.calculation.schedule21.partnerships[].partnershipId` | string |  | Stable partnership identity. Required for every limited-partnership pool; never join or share capacity by array position. |
| `abAt1Inputs.calculation.schedule21.partnerships[].protectedAmounts` | string |  | Nonnegative protected amounts/benefits within ITA 96(2.2)(d), after its statutory exclusions. |
| `abAt1Inputs.calculation.schedule21.partnerships[].resourceExpenses` | string |  | Aggregate share of enumerated partnership resource expenses for at-risk/current-loss and old-loss capacity limits. |
| `abAt1Inputs.calculation.schedule21.partnerships[].section53Additions` | string |  | Amount under ITA 53(1)(e)(viii) used in the at-risk calculation. |
| `abAt1Inputs.calculation.schedule21.partnerships[].shareBusinessPropertyLoss` | string |  | Nonnegative current share of partnership business losses other than farming, and property losses. |
| `abAt1Inputs.calculation.schedule21.partnerships[].shareFarmLoss` | string |  | Nonnegative current share of partnership farming losses, reducing at-risk capacity. |
| `abAt1Inputs.calculation.schedule21.partnerships[].shareIncome` | string |  | Nonnegative partnership income share used in the ITA 96(2.2) at-risk amount. |
| `abAt1Inputs.calculation.schedule21.partnerships[].singleFiscalPeriodConfirmed` | boolean |  | True for one period; false on every row when multiple periods of this partnership end in the corporation taxation year. Confirm the complete period roster. |
| `abAt1Inputs.calculation.schedule21.partnerships[].taxCredits` | string |  | Annual partnership investment and clean-economy tax-credit total enumerated in ITA 96(2.1)/111(1)(e). Repeat the same annual total on every fiscal-period row; it is never summed again. |
| `abAt1Inputs.calculation.schedule21.partnerships[].thinCapitalizationAddback` | string |  | Per-period section18.2 interest attribution thinCapitalizationAddback. Current interest excludes at-risk and thin-capitalization denials; last-period old-loss attribution applies once to the annual gross claim. |
| `abAt1Inputs.calculation.schedule21.rifeApplies` | boolean |  | Reviewed EIFEL applicability. True reads canonical federal 004710, 130129 and 130130; unanswered or conflicting/provisional operands hold. False establishes reviewed non-applicability nil. |
| `abAt1Inputs.calculation.schedule21.section1105Addition` | object |  | Reviewed nonnegative ITA 110.5/115(1)(a)(vii) addition feeding Schedule 12 line 082. Excess over federal needs a small-business-effect review and stays held. |
| `abAt1Inputs.calculation.schedule21.section1105Addition.amount` | string |  | Exact decimal text; finite, magnitude below 1e18, at most 12 decimal places. Negative values only for declared signed income/gross-result facts. Confirm explicit nil; no binary floats. |
| `abAt1Inputs.calculation.schedule21.section1105Addition.confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.section1105Addition.evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.vintages` | array |  | Complete independent Alberta opening-loss roster by kind, origin and partnership. At most 500 rows. Capital and LPP amounts use the gross basis. |
| `abAt1Inputs.calculation.schedule21.vintagesComplete` | boolean |  | True only after confirming the entire independent Alberta opening-loss roster, including an explicit empty list. |
| `abAt1Inputs.calculation.schedule21.vintages[]` | object |  |  |
| `abAt1Inputs.calculation.schedule21.vintages[].businessId` | string |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.schedule21.vintages[].confirmed` | boolean |  | True only after reviewing this fact against its cited supporting evidence. Clear after any dependent fact or taxation-period change. |
| `abAt1Inputs.calculation.schedule21.vintages[].deferWindUpTransfer` | boolean |  | Track this positive subsidiary loss as unavailable in the parent year containing wind-up under ITA 88(1.1)/(1.2). Reconcile the shared predecessor balance and mapped parent origin; a computed next-year transfer proposal clears confirmations. |
| `abAt1Inputs.calculation.schedule21.vintages[].evidenceRef` | string |  | Supporting assessed return, statutory workpaper or reviewed fact reference; nonblank when confirmed, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.vintages[].expiryYearEnd` | null \| string |  | Optional last eligible actual year end. Must agree with computed taxation-year counts; a future year end cannot establish expiry. |
| `abAt1Inputs.calculation.schedule21.vintages[].id` | string |  | Unique stable Alberta loss-vintage identity; bounded text of at most 1000 characters. |
| `abAt1Inputs.calculation.schedule21.vintages[].kind` | string |  | Closed loss kind: nonCapital, grossCapital, farm, restrictedFarm, listedPersonalProperty, limitedPartnership or rife. |
| `abAt1Inputs.calculation.schedule21.vintages[].lossRestrictionEventDate` | string |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.schedule21.vintages[].openingBalance` | string |  | Independent assessed Alberta opening balance before expiry and current movements. Exact nonnegative decimal text. |
| `abAt1Inputs.calculation.schedule21.vintages[].originEndExclusiveAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.schedule21.vintages[].originYearEnd` | string |  | Actual complete ISO taxation-year end in which the opening loss originated, before the current taxation period. |
| `abAt1Inputs.calculation.schedule21.vintages[].otherAdjustment` | string |  | Other nonnegative reduction allocated to this opening vintage. ACTA18(3)(a.3) excludes ITA111(10) fuel-rebate reductions. |
| `abAt1Inputs.calculation.schedule21.vintages[].partnershipId` | string |  | Stable partnership identity. Required for every limited-partnership pool; never join or share capacity by array position. |
| `abAt1Inputs.calculation.schedule21.vintages[].predecessorId` | string |  | Identity of the predecessor whose qualifying amalgamation or wholly-owned wind-up balance is transferred. |
| `abAt1Inputs.calculation.schedule21.vintages[].section80Adjustment` | string |  | Reviewed existing nonnegative section80 reduction for this opening vintage, before any later settlements listed in currentLossSection80. The engine adds those new allocations to the result without overwriting the saved input. |
| `abAt1Inputs.calculation.schedule21.vintages[].subsequentYearEnds` | array |  | Every actual taxation-year end after the origin through the immediately preceding period, oldest first. At most 100; short and deemed years count separately. |
| `abAt1Inputs.calculation.schedule21.vintages[].subsequentYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule21.vintages[].transferEligibilityConfirmed` | boolean |  | Confirms the transfer meets adopted statutory amalgamation/wind-up requirements. Required for a positive transfer. |
| `abAt1Inputs.calculation.schedule21.vintages[].transferred` | string |  | Positive qualifying predecessor transfer, preserving kind and original year of origin. |
| `abAt1Inputs.calculation.schedule29` | object |  | Independent Alberta Schedule 29/AT4970 inputs. Presence owns jacket 129, even when incomplete. Compute IEG once from pre-grant T661 source inputs, replay the canonical federal return with the assistance, then finalize Alberta amounts with the original grant added back once. Uncharacterized deduction-pool repayments remain held. Preparation only. |
| `abAt1Inputs.calculation.schedule29.agreementConfirmed` | boolean |  | Reviewed Schedule 29 agreementConfirmed capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.agreementRef` | string |  | Reviewed Schedule 29 agreementRef capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.associatedForCapital` | boolean \| null |  | Reviewed Schedule 29 associatedForCapital capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.associatedForIeg` | boolean \| null |  | Reviewed Schedule 29 associatedForIeg capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.at1FilingDue` | string |  | Reviewed actual AT1 due date including TRA office closures, ISO date; claim deadline is 15 calendar months after this date, never an assumed 21 months after year end. |
| `abAt1Inputs.calculation.schedule29.calendarYearsComplete` | boolean |  | Confirms all actual taxation years of every group member in the current and two preceding calendar years are captured, including nils and short/deemed years (ACTA 26.971(2)). |
| `abAt1Inputs.calculation.schedule29.claimReceivedOn` | string |  | Actual or planned TRA Schedule 29 receipt date, ISO date. A date after the claim deadline holds entitlement. |
| `abAt1Inputs.calculation.schedule29.confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.currentOnlyConfirmed` | boolean |  | Confirm federal-qualified current SR&ED actually performed in Alberta after 2020-12-31; exclude capital expenditures and partnership claims. Preceding-year amounts follow the applicable historic era. |
| `abAt1Inputs.calculation.schedule29.deadlineConfirmed` | boolean |  | Reviewed Schedule 29 deadlineConfirmed capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.deadlineEvidenceRef` | string |  | Reviewed Schedule 29 deadlineEvidenceRef capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.fieldOfScience` | string |  | Reviewed Schedule 29 fieldOfScience capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.groupComplete` | boolean |  | Reviewed Schedule 29 groupComplete capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.hasAlbertaPE` | boolean \| null |  | Reviewed Schedule 29 hasAlbertaPE capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.longestYearCorporationId` | string |  | Stable identity of the qualified claiming member with the longest taxation year. Other member periods and allocations remain independent. |
| `abAt1Inputs.calculation.schedule29.longestYearEnd` | string |  | Actual ISO year end identifying which period of the selected longest-year corporation controls the shared expenditure limit when it has several taxation years. |
| `abAt1Inputs.calculation.schedule29.members` | array |  | Reviewed Schedule 29 members capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears` | array |  | Every other taxation year of this same corporation ending in the current calendar year. Each has separate eligibility, actual two preceding years and agreed allocations. At most 100. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].allocatedAllowed` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].allocatedLimit` | string |  | CAD expenditure-limit agreement allocation. The source CAD group ceiling is enforced before the filer allocation converts under ACTA4.02(6)(b). |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].claimsIeg` | boolean \| null |  | Whether it claims IEG for this actual period. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].confirmed` | boolean |  | Preparer confirmation of this period and its facts. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].currentEligible` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].evidenceRef` | string |  | Supporting actual-period and allocation-agreement evidence. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].hasAlbertaPE` | boolean \| null |  | Whether the corporation had an Alberta permanent establishment in this actual period. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].periodEnd` | string |  | Actual ISO taxation-year end in the filer calendar year; periods of one corporation cannot overlap. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].periodStart` | string |  | Actual ISO taxation-year beginning. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior1` | object |  | Immediately preceding actual taxation year for this period's non-associated allowed-amount ceiling. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior1.amount` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior1.basis` | string |  | taxationYear for an actual period, or noTaxationYear with nil amount and no period end where that preceding year does not exist. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior1.confirmed` | boolean |  | Preparer confirmation of this actual period and amount. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior1.evidenceRef` | string |  | Supporting historical computation or assessment reference. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior1.periodEnd` | string |  | Actual ISO taxation-year end; a calendar-year label cannot replace a fiscal period. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior2` | object |  | Second preceding actual taxation year for this period's non-associated allowed-amount ceiling. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior2.amount` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior2.basis` | string |  | taxationYear for an actual period, or noTaxationYear with nil amount and no period end where that preceding year does not exist. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior2.confirmed` | boolean |  | Preparer confirmation of this actual period and amount. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior2.evidenceRef` | string |  | Supporting historical computation or assessment reference. |
| `abAt1Inputs.calculation.schedule29.members[].additionalYears[].prior2.periodEnd` | string |  | Actual ISO taxation-year end; a calendar-year label cannot replace a fiscal period. |
| `abAt1Inputs.calculation.schedule29.members[].allocatedAllowed` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].allocatedLimit` | string |  | CAD expenditure-limit agreement allocation. The source CAD group ceiling is enforced before the filer allocation converts under ACTA4.02(6)(b). |
| `abAt1Inputs.calculation.schedule29.members[].businessNumber` | string |  | Reviewed Schedule 29 businessNumber capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].calendarHistory` | array |  | Every actual taxation year ending in the two preceding calendar years, including nil expenditures. Used for statutory calendar-year sums separately from each current period's actual-year ceiling. At most 100. |
| `abAt1Inputs.calculation.schedule29.members[].calendarHistory[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.members[].calendarHistory[].amount` | string |  | Evidence-backed eligible expenditures for that actual period; exact decimal text. |
| `abAt1Inputs.calculation.schedule29.members[].calendarHistory[].basis` | string |  | taxationYear for an actual period, or noTaxationYear with nil amount and no period end where that preceding year does not exist. |
| `abAt1Inputs.calculation.schedule29.members[].calendarHistory[].confirmed` | boolean |  | Preparer confirmation of this actual period and amount. |
| `abAt1Inputs.calculation.schedule29.members[].calendarHistory[].evidenceRef` | string |  | Supporting historical computation or assessment reference. |
| `abAt1Inputs.calculation.schedule29.members[].calendarHistory[].periodEnd` | string |  | Actual ISO taxation-year end; a calendar-year label cannot replace a fiscal period. |
| `abAt1Inputs.calculation.schedule29.members[].can` | string |  | Reviewed Schedule 29 can capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].claimsIeg` | boolean \| null |  | Reviewed Schedule 29 claimsIeg capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.members[].corporationId` | string |  | Reviewed Schedule 29 corporationId capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].currentEligible` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.members[].hasAlbertaPE` | boolean \| null |  | Reviewed Schedule 29 hasAlbertaPE capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].isFiler` | boolean |  | Reviewed Schedule 29 isFiler capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].periodEnd` | string |  | Actual taxation year end, ISO date. Capital uses the immediately preceding year alone or each associate last year in preceding calendar year. Historical eligible amounts are reviewed under the applicable era. |
| `abAt1Inputs.calculation.schedule29.members[].periodStart` | string |  | Reviewed Schedule 29 periodStart capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].prior1` | object |  | Reviewed Schedule 29 prior1 capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].prior1.amount` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].prior1.basis` | string |  | Choose an actual taxation year or explicitly nonexistent prior year. Nonexistent years require nil and no year-end date; missing evidence never becomes nil. |
| `abAt1Inputs.calculation.schedule29.members[].prior1.confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.members[].prior1.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.members[].prior1.periodEnd` | string |  | Actual taxation year end, ISO date. Capital uses the immediately preceding year alone or each associate last year in preceding calendar year. Historical eligible amounts are reviewed under the applicable era. |
| `abAt1Inputs.calculation.schedule29.members[].prior2` | object |  | Reviewed Schedule 29 prior2 capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].prior2.amount` | string |  | Reviewed group amount in the filer reporting basis; paired periods and evidence reconcile that basis. CAD agreement limits are converted before comparison to these expenditures/allowed amounts. |
| `abAt1Inputs.calculation.schedule29.members[].prior2.basis` | string |  | Choose an actual taxation year or explicitly nonexistent prior year. Nonexistent years require nil and no year-end date; missing evidence never becomes nil. |
| `abAt1Inputs.calculation.schedule29.members[].prior2.confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.members[].prior2.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.members[].prior2.periodEnd` | string |  | Actual taxation year end, ISO date. Capital uses the immediately preceding year alone or each associate last year in preceding calendar year. Historical eligible amounts are reviewed under the applicable era. |
| `abAt1Inputs.calculation.schedule29.members[].taxableCapital` | object |  | Reviewed Schedule 29 taxableCapital capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.members[].taxableCapital.amount` | string |  | Exact nonnegative decimal text for the reviewed historical amount, bounded to 80 characters. Eligible-expenditure history uses the Schedule 29 formula for that period; capital is S33 690. |
| `abAt1Inputs.calculation.schedule29.members[].taxableCapital.basis` | string |  | Choose an actual taxation year or explicitly nonexistent prior year. Nonexistent years require nil and no year-end date; missing evidence never becomes nil. |
| `abAt1Inputs.calculation.schedule29.members[].taxableCapital.confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.members[].taxableCapital.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.members[].taxableCapital.periodEnd` | string |  | Actual taxation year end, ISO date. Capital uses the immediately preceding year alone or each associate last year in preceding calendar year. Historical eligible amounts are reviewed under the applicable era. |
| `abAt1Inputs.calculation.schedule29.method` | string |  | Reviewed Schedule 29 method capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.ordinaryContinuityConfirmed` | boolean |  | Review of ordinary IEG continuity and anti-avoidance facts. Recorded corporate transitions require their typed transitionReviews; this flag cannot waive a captured event. |
| `abAt1Inputs.calculation.schedule29.otherRepayments` | string |  | Reviewed amount in this return reporting currency, on the applicable actual-period basis. Historical sources must be reconciled on that same reporting basis under adopted ITA261; no current annual mean is substituted for a source-history restatement. |
| `abAt1Inputs.calculation.schedule29.performsAlbertaSred` | boolean \| null |  | Reviewed Schedule 29 performsAlbertaSred capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.preGrantFederalConfirmed` | boolean |  | Confirm retained T661 source inputs exclude the current IEG assistance and reconcile any existing recapture repayment inclusions through poolRepayment.includedInLine445/560; retain all unrelated assistance and repayments. The batch derives post-grant federal results from those source inputs. Never confirm source inputs already reduced by the current grant. |
| `abAt1Inputs.calculation.schedule29.prior1` | object |  | Reviewed Schedule 29 prior1 capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.prior1.amount` | string |  | Reviewed amount in this return reporting currency, on the applicable actual-period basis. Historical sources must be reconciled on that same reporting basis under adopted ITA261; no current annual mean is substituted for a source-history restatement. |
| `abAt1Inputs.calculation.schedule29.prior1.basis` | string |  | Choose an actual taxation year or explicitly nonexistent prior year. Nonexistent years require nil and no year-end date; missing evidence never becomes nil. |
| `abAt1Inputs.calculation.schedule29.prior1.confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.prior1.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.prior1.periodEnd` | string |  | Actual taxation year end, ISO date. Capital uses the immediately preceding year alone or each associate last year in preceding calendar year. Historical eligible amounts are reviewed under the applicable era. |
| `abAt1Inputs.calculation.schedule29.prior2` | object |  | Reviewed Schedule 29 prior2 capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.prior2.amount` | string |  | Reviewed amount in this return reporting currency, on the applicable actual-period basis. Historical sources must be reconciled on that same reporting basis under adopted ITA261; no current annual mean is substituted for a source-history restatement. |
| `abAt1Inputs.calculation.schedule29.prior2.basis` | string |  | Choose an actual taxation year or explicitly nonexistent prior year. Nonexistent years require nil and no year-end date; missing evidence never becomes nil. |
| `abAt1Inputs.calculation.schedule29.prior2.confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.prior2.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.prior2.periodEnd` | string |  | Actual taxation year end, ISO date. Capital uses the immediately preceding year alone or each associate last year in preceding calendar year. Historical eligible amounts are reviewed under the applicable era. |
| `abAt1Inputs.calculation.schedule29.projects` | array |  | Reviewed Schedule 29 projects capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.projectsComplete` | boolean |  | Reviewed Schedule 29 projectsComplete capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.projects[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.projects[].albertaFederal` | string |  | Exact project amount in the reporting currency of the canonical T661 and this return; used directly in AT4970 and the one-time IEG federal assistance replay. |
| `abAt1Inputs.calculation.schedule29.projects[].albertaProxyCap` | string |  | Exact project amount in the reporting currency of the canonical T661 and this return; used directly in AT4970 and the one-time IEG federal assistance replay. |
| `abAt1Inputs.calculation.schedule29.projects[].confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.projects[].evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.projects[].federalProxy` | string |  | Exact project amount in the reporting currency of the canonical T661 and this return; used directly in AT4970 and the one-time IEG federal assistance replay. |
| `abAt1Inputs.calculation.schedule29.projects[].id` | string |  | Reviewed Schedule 29 id capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.projects[].otherJurisdictions` | array |  | Reviewed Schedule 29 otherJurisdictions capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.projects[].otherJurisdictions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.projects[].otherJurisdictions[].amount` | string |  | Exact non-Alberta project amount in the same reporting currency as canonical T661 and the Alberta project amount. |
| `abAt1Inputs.calculation.schedule29.projects[].otherJurisdictions[].jurisdiction` | string |  | Reviewed Schedule 29 jurisdiction capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.projects[].salaryBase` | string |  | Exact project amount in the reporting currency of the canonical T661 and this return; used directly in AT4970 and the one-time IEG federal assistance replay. |
| `abAt1Inputs.calculation.schedule29.projects[].scienceCode` | string |  | Reviewed Schedule 29 scienceCode capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.projects[].title` | string |  | Reviewed Schedule 29 title capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures` | array |  | Reviewed Schedule 29 recaptures capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recapturesComplete` | boolean |  | Reviewed Schedule 29 recapturesComplete capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.recaptures[].acquisitionYearEnd` | string |  | Reviewed Schedule 29 acquisitionYearEnd capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions` | array |  | Other actual taxation years in which this property cost was included. The original acquisition-year facts remain on the property row. Sum every inclusion-year property grant cap before applying the acquisition-year proceeds/FMV cap (ACTA 26.991(4)). At most 100. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[].confirmed` | boolean |  | Preparer confirmation of this inclusion year. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[].evidenceRef` | string |  | Supporting inclusion-year IEG and property-cost evidence. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[].includedCost` | string |  | Property cost included in eligible expenditures in this inclusion year; exact decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[].originalEligible` | string |  | Eligible expenditures for this inclusion year; exact decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[].originalGrant` | string |  | IEG received for this inclusion year; exact decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[].originalLimit` | string |  | Expenditure limit for this inclusion year; exact decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].additionalInclusions[].yearEnd` | string |  | Actual ISO additional inclusion-year end, later than acquisition year and no later than this taxation-year end. |
| `abAt1Inputs.calculation.schedule29.recaptures[].confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.recaptures[].disposerEligible` | string |  | Disposing qualified corporation's acquisition-year eligible expenditures as decimal text for ACTA 26.99(1); a matching own-property event supplies it instead. |
| `abAt1Inputs.calculation.schedule29.recaptures[].disposerGrant` | string |  | Disposing qualified corporation's acquisition-year IEG as decimal text for ACTA 26.99(1); a matching own-property event supplies it instead. Reviewed with the recapture row. |
| `abAt1Inputs.calculation.schedule29.recaptures[].disposerLimit` | string |  | Disposing qualified corporation's acquisition-year expenditure limit as decimal text for ACTA 26.99(1); a matching own-property event supplies it instead. |
| `abAt1Inputs.calculation.schedule29.recaptures[].event` | string |  | Reviewed Schedule 29 event capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].eventDate` | string |  | Reviewed Schedule 29 eventDate capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.recaptures[].fairMarketValue` | string |  | Reviewed Schedule 29 fairMarketValue capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].includedCost` | string |  | Reviewed Schedule 29 includedCost capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].inclusionYearsComplete` | boolean |  | Confirms the complete additional inclusion-year census; required with multiple inclusion years and singleInclusionYearConfirmed false. |
| `abAt1Inputs.calculation.schedule29.recaptures[].notPreviouslyRecaptured` | boolean |  | Reviewed Schedule 29 notPreviouslyRecaptured capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].originalEligible` | string |  | Reviewed Schedule 29 originalEligible capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].originalGrant` | string |  | Original IEG in property acquisition year. Use transferee grant for Situation 2, separately from corporation Situation 1 recapture. |
| `abAt1Inputs.calculation.schedule29.recaptures[].originalLimit` | string |  | Reviewed Schedule 29 originalLimit capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].ownRecapture` | string |  | Reviewed nil Situation 1 recapture when no own-property event is present. A matched own event supplies its canonical amount automatically; a positive amount requires that event so its tax is included. Situation 1 itself has no subtraction operand. Never net this against current assistance. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment` | object |  | Reviewed property-specific IEG assistance and repayment history for ITA 37(1)(c)/(d). Required for nonzero recapture before federal replay; absent or inconsistent history holds line 445 and dependent outputs. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.assistanceId` | string |  | Stable identity of the original IEG. Reuse across properties funded by the same grant; their historical pool facts must agree and cumulative restorations cannot exceed that reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.assistanceNotReceivedConfirmed` | boolean |  | For deemed127_10_8, confirm assistance was never received and ceased to be reasonably expected on repaymentDate. Cannot be true for an actual repayment. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.character` | string |  | actualRepayment or deemed127_10_8. federalItcRecapture records an unresolved mischaracterization and keeps the hold: s.37(1)(c.2) feeds the following year's 453, not current 445. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.confirmed` | boolean |  | True only after reviewing the complete assistance, taxpayer-pool and repayment trace; cleared when property or trace facts change. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.evidenceRef` | string |  | Retained original IEG, deduction-pool reduction, repayment and allocation evidence, at most 1000 characters; required with confirmed. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.grantAmount` | string |  | Original IEG amount as decimal text, matching the property recapture calculation's originalGrant. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.grantYearEnd` | string |  | Original IEG taxation year end, ISO date, matching the property's acquisition year end. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.includedInLine445` | string |  | Portion of this pool repayment already in the source T661 445, decimal text including explicit nil. Subtracted from the additive update so the repayment is counted once. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.includedInLine560` | string |  | Portion of this recapture already in source T661 560, decimal text including explicit nil. Separate from 445 inclusion and subtracted from the ITC-side update. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.poolReductionAmount` | string |  | Total original assistance reduction of this taxpayer's deduction pool, decimal text including explicit nil. Repeat the same grant-level amount across its property traces; do not substitute the transferee's reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.poolReductionYearEnd` | string |  | Prior taxation year in which this original IEG reduced this taxpayer's deduction pool under s.37(1)(d), ISO date. Required for a positive reduction; absent for a confirmed nil reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.poolRepaymentAmount` | string |  | Evidenced portion of this repayment attributable to assistance that reduced this taxpayer's deduction pool. Not an override of line 445. Capped by the repayment and un-restored original reduction; mixed assistance requires traced allocation, never an inferred proportion. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.priorPoolRestored` | string |  | Cumulative prior s.37(1)(c) restorations against this grant's pool reduction, excluding current traced repayments. Decimal text, explicit nil required. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.qualifiedExpenditureReduction` | string |  | For deemed127_10_8, the original reduction of qualified expenditures required by s.127(10.8)(a); must cover the deemed repayment. Decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.recipient` | string |  | Original assistance recipient: taxpayer or expenditureTransferee, matching the recapture situation. A transferee's deduction-pool reduction is not this taxpayer's reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.repaymentAmount` | string |  | Reviewed repayment allocation matching this property's computed line 132 recapture at preparation cents. Decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.repaymentDate` | string |  | Actual repayment date, or date unreceived assistance ceased to be reasonably expected under s.127(10.8), within this taxation year and no earlier than the property event. ISO date. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.repaymentId` | string |  | Unique property repayment allocation identity. A payment covering several properties needs distinct evidenced allocations; duplicate identities are refused. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.transferAgreementRef` | string |  | Retained expenditure-transfer agreement reference, required for a transferee grant and absent for own assistance. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayment.transfereeId` | string |  | Expenditure transferee identity, required for transferred expenditures and absent for own assistance. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments` | array |  | Evidence-backed actual repayment allocation among original IEG years, reconciling to the property recapture. Mutually exclusive with the single poolRepayment trace; no proportional allocation is inferred. At most 100. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].assistanceId` | string |  | Stable identity of the original IEG. Reuse across properties funded by the same grant; their historical pool facts must agree and cumulative restorations cannot exceed that reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].assistanceNotReceivedConfirmed` | boolean |  | For deemed127_10_8, confirm assistance was never received and ceased to be reasonably expected on repaymentDate. Cannot be true for an actual repayment. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].character` | string |  | actualRepayment or deemed127_10_8. federalItcRecapture records an unresolved mischaracterization and keeps the hold: s.37(1)(c.2) feeds the following year's 453, not current 445. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].confirmed` | boolean |  | True only after reviewing the complete assistance, taxpayer-pool and repayment trace; cleared when property or trace facts change. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].evidenceRef` | string |  | Retained original IEG, deduction-pool reduction, repayment and allocation evidence, at most 1000 characters; required with confirmed. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].grantAmount` | string |  | Original IEG amount as decimal text, matching the property recapture calculation's originalGrant. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].grantYearEnd` | string |  | Original IEG taxation year end, ISO date, matching the property's acquisition year end. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].includedInLine445` | string |  | Portion of this pool repayment already in the source T661 445, decimal text including explicit nil. Subtracted from the additive update so the repayment is counted once. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].includedInLine560` | string |  | Portion of this recapture already in source T661 560, decimal text including explicit nil. Separate from 445 inclusion and subtracted from the ITC-side update. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].poolReductionAmount` | string |  | Total original assistance reduction of this taxpayer's deduction pool, decimal text including explicit nil. Repeat the same grant-level amount across its property traces; do not substitute the transferee's reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].poolReductionYearEnd` | string |  | Prior taxation year in which this original IEG reduced this taxpayer's deduction pool under s.37(1)(d), ISO date. Required for a positive reduction; absent for a confirmed nil reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].poolRepaymentAmount` | string |  | Evidenced portion of this repayment attributable to assistance that reduced this taxpayer's deduction pool. Not an override of line 445. Capped by the repayment and un-restored original reduction; mixed assistance requires traced allocation, never an inferred proportion. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].priorPoolRestored` | string |  | Cumulative prior s.37(1)(c) restorations against this grant's pool reduction, excluding current traced repayments. Decimal text, explicit nil required. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].qualifiedExpenditureReduction` | string |  | For deemed127_10_8, the original reduction of qualified expenditures required by s.127(10.8)(a); must cover the deemed repayment. Decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].recipient` | string |  | Original assistance recipient: taxpayer or expenditureTransferee, matching the recapture situation. A transferee's deduction-pool reduction is not this taxpayer's reduction. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].repaymentAmount` | string |  | Reviewed repayment allocation matching this property's computed line 132 recapture at preparation cents. Decimal text. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].repaymentDate` | string |  | Actual repayment date, or date unreceived assistance ceased to be reasonably expected under s.127(10.8), within this taxation year and no earlier than the property event. ISO date. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].repaymentId` | string |  | Unique property repayment allocation identity. A payment covering several properties needs distinct evidenced allocations; duplicate identities are refused. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].transferAgreementRef` | string |  | Retained expenditure-transfer agreement reference, required for a transferee grant and absent for own assistance. |
| `abAt1Inputs.calculation.schedule29.recaptures[].poolRepayments[].transfereeId` | string |  | Expenditure transferee identity, required for transferred expenditures and absent for own assistance. |
| `abAt1Inputs.calculation.schedule29.recaptures[].proceeds` | string |  | Reviewed Schedule 29 proceeds capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].propertyId` | string |  | Reviewed Schedule 29 propertyId capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].singleInclusionYearConfirmed` | boolean |  | True confirms the property cost was included in one taxation year. False requires the complete additionalInclusions roster and inclusionYearsComplete confirmation under ACTA 26.991(4). |
| `abAt1Inputs.calculation.schedule29.recaptures[].situation` | string |  | Reviewed Schedule 29 situation capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.recaptures[].transfereeId` | string |  | Identifies separate transferred interests in the same property; must match the expenditure transferee in repayment evidence. Empty for own-property recapture. |
| `abAt1Inputs.calculation.schedule29.recaptures[].withinTwentyPrecedingYearsConfirmed` | boolean |  | Reviewed Schedule 29 withinTwentyPrecedingYearsConfirmed capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.researchInTaxableInsuranceBusiness` | boolean \| null |  | For a benevolent/fraternal society, confirms that all claimed Alberta SR&ED belongs to the isolated taxable life-insurance business under ACTA 35(1.1)/(1.2). Exempt activities cannot supply taxable qualification. Requires confirmed society, insurance and taxable-day facts; changing this answer clears qualification and federal-source reviews. |
| `abAt1Inputs.calculation.schedule29.singleTaxYearPerCalendarYearConfirmed` | boolean |  | True confirms one actual taxation year per member in each relevant calendar year. False selects the complete multiple-year census and separate actual-period ceilings; its unresolved printed agreement carrier remains held. |
| `abAt1Inputs.calculation.schedule29.taxableCapital` | object |  | Reviewed Schedule 29 taxableCapital capture; closed typed vocabulary and bounded inputs. Missing drafts stay held; no tax arithmetic in the browser. |
| `abAt1Inputs.calculation.schedule29.taxableCapital.amount` | string |  | Reviewed amount in this return reporting currency, on the applicable actual-period basis. Historical sources must be reconciled on that same reporting basis under adopted ITA261; no current annual mean is substituted for a source-history restatement. |
| `abAt1Inputs.calculation.schedule29.taxableCapital.basis` | string |  | Choose an actual taxation year or explicitly nonexistent prior year. Nonexistent years require nil and no year-end date; missing evidence never becomes nil. |
| `abAt1Inputs.calculation.schedule29.taxableCapital.confirmed` | boolean |  | True only after review against cited evidence; cleared when source facts or periods change. |
| `abAt1Inputs.calculation.schedule29.taxableCapital.evidenceRef` | string |  | Supporting document reference, at most 1000 characters. Mandatory with confirmation before using this fact. |
| `abAt1Inputs.calculation.schedule29.taxableCapital.periodEnd` | string |  | Actual taxation year end, ISO date. Capital uses the immediately preceding year alone or each associate last year in preceding calendar year. Historical eligible amounts are reviewed under the applicable era. |
| `abAt1Inputs.calculation.schedule29.taxableCorporation` | boolean \| null |  | Whether the corporation is taxable for IEG qualification. The prescribed exception is established from confirmed taxStatus facts, including accepted section143 elections and prescribed Crown transitions; section149 requires full-year taxable days. An exemption alone cannot qualify under ACTA 26.95(1)(g). |
| `abAt1Inputs.calculation.schedule29.transitionReviews` | array |  | Evidence-backed review for every recorded IEG transition, plus a year-end multipleTaxationYears review for a multi-year IEG group. Actual history and operative ministerial treatment must be resolved; an ordinary continuity checkbox cannot waive a captured transition. At most 10. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].confirmed` | boolean |  | Preparer confirmation of the complete IEG transition review. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].date` | string |  | Actual ISO date matching the captured corporate event; for multipleTaxationYears, this return's actual year end. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].decisionAuthority` | string |  | Closed operative provision: 26.96(6), 26.96(7), 26.96(8) or 26.96(10). |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].decisionDate` | string |  | Actual ISO ministerial decision date, no earlier than the event. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].determinedGrant` | string |  | Operative ministerially determined IEG before recapture under ACTA 26.96(6)-(10); exact decimal text. It controls federal assistance without erasing the ordinary formula audit. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].evidenceRef` | string |  | Supporting transition, actual-history and operative ministerial-treatment evidence. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].historyBasis` | string |  | Closed choice: actualCorporationYears for continuing corporations, or newCorporationNoPredecessorYears for an amalgamation's new corporation. The latter does not establish nil taxable capital. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].kind` | string |  | Closed transition kind: controlChange, amalgamation, windUp, entryOrReentry, leavingAlberta, becomeExempt, ceaseExempt or multipleTaxationYears. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].ministerialTreatment` | string |  | Closed choice: ordinaryFormula after reviewing operative TRA decisions, determinedGrant for an evidenced operative determination, or unresolved (held). |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital` | array |  | Each amalgamation predecessor's capital and actual period on the applicable basis, carried under ACTA 14 / ITA 87(2)(j.6) for 127(10.2). All predecessors are required; at most 500. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital[]` | object |  |  |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital[].amount` | string |  | Predecessor taxable capital employed in Canada for that actual period; exact decimal text. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital[].capitalBasis` | string |  | Closed choice: immediatelyPrecedingTaxationYear for a standalone filer, or lastTaxationYearInPrecedingCalendarYear for the capital-group basis. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital[].confirmed` | boolean |  | Preparer confirmation of this predecessor capital fact. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital[].corporationId` | string |  | Identified predecessor from the qualifying amalgamation roster. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital[].evidenceRef` | string |  | Supporting predecessor Schedule 33 and capital-period evidence. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].predecessorCapital[].periodEnd` | string |  | Actual ISO predecessor capital-period end on the selected statutory basis. |
| `abAt1Inputs.calculation.schedule29.transitionReviews[].propertyExitEventsComplete` | boolean |  | Confirms all property exits from Alberta were captured for s.26.991(1), including an explicit nil roster. |
| `abAt1Inputs.calculation.schedule3` | object |  | Schedule 3 (AT3) calculation from issuer certificate evidence, reviewed opening balances by origin year and chosen applications. An active incomplete calculation does not fall back to a manual jacket total. |
| `abAt1Inputs.calculation.schedule3.agriCertificates` | array |  | Agri-processing investment tax credit certificates issued to the corporation during this taxation year; amounts are calculated by the issuing ministry. |
| `abAt1Inputs.calculation.schedule3.agriCertificates[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.agriCertificates[].amount` | string |  | Exact CAD amount on the issuer certificate. Investor/capital certificates convert at the issue-day Bank spot under ITA261(5)(c); API certificates stay in their CAD source ledger under ACTA4.02(6)(b.1). |
| `abAt1Inputs.calculation.schedule3.agriCertificates[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule3.agriCertificates[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule3.agriCertificates[].id` | string |  | Certificate identity shown on the issued certificate; unique within its credit. |
| `abAt1Inputs.calculation.schedule3.agriCertificates[].issueDate` | string |  | Certificate issue date within this taxation year, as an ISO date. |
| `abAt1Inputs.calculation.schedule3.agriCertificates[].ministry` | string |  | Ministry that issued the certificate, as shown on the certificate. |
| `abAt1Inputs.calculation.schedule3.agriOrigins` | array |  | Agri-processing credit balances by year of origin, occurrence ages 0 to 10, retaining each original credit for its 20/30/50 percent limits. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].age` | number |  | Occurrence number of the origin year: 0 for this taxation year, increasing by one per preceding year. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].applied` | string |  | Reviewed CAD API origin applied; the ledger remains CAD and only the aggregate current deduction converts at the exact taxation-year mean. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates` | array |  | Issuer certificates supporting a current-year predecessor transfer, retained separately from certificates issued to the filer. At most 500; each requires evidence and confirmation. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates[].amount` | string |  | Exact CAD issuer-certificate amount; investor/capital receipts convert at their issue-day quote, while API receipts remain CAD. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates[].confirmed` | boolean |  | Preparer confirmation of this predecessor certificate. Changes clear this confirmation. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates[].evidenceRef` | string |  | Supporting issuer certificate reference. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates[].id` | string |  | Unique issuer certificate identity; do not repeat a certificate on another owner or origin. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates[].issueDate` | string |  | Actual ISO issue date in the parent current year, no later than the predecessor final year end. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].currentYearCertificates[].ministry` | string |  | Ministry that issued the predecessor certificate. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance` | array |  | AITC/CITC unused certificate ledger for this origin: identity, actual issue date, unused balance and same-date sequence where material. Required when a chosen total must be assigned between several origins. At most 500; every record needs evidence and confirmation. Remaining certificates roll as unconfirmed proposals. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance[].amount` | string |  | Unused certificate balance before this claim, in exact decimal text to cents; balances reconcile to the origin opening and transfers. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance[].confirmed` | boolean |  | Preparer confirmation of this unused certificate and its issue facts. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance[].evidenceRef` | string |  | Supporting issuer or assessed unused-certificate record. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance[].id` | string |  | Unique issuer certificate identity; do not place one certificate in two origins. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance[].issueDate` | string |  | Actual ISO certificate issue date used for the statutory deemed issuance order. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuance[].sequence` | string |  | Actual issuer order for certificates with the same issue date, from 1 to 999999 as decimal text. Needed only when a partial claim distinguishes them; never inferred from array order. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuerLimitBasis` | string |  | APITC only. Closed choice: printedFractions confirms no additional issuer ceiling, or specifiedMaximum supplies the issuer ceiling currently available for this claim year (ACTA 25.04(2)(b)). Required for a positive application. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuerLimitYearEnd` | string |  | APITC only. Actual ISO claim-year end to which the specified available issuer ceiling applies. Annual maxima are not rolled into another year. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].issuerMaximum` | string |  | CAD issuer maximum applicable to this actual API claim year; the chosen CAD application must satisfy it before the deduction crosses to reporting currency. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].openingBalance` | string |  | Reviewed CAD API origin openingBalance; the ledger remains CAD and only the aggregate current deduction converts at the exact taxation-year mean. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].originYearEnd` | string |  | Taxation year end of the origin year, as an ISO date. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].originalCredit` | string |  | Original CAD API credit received for this origin; the annual mean does not revalue the source certificate account. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].predecessorApplied` | string |  | Credit already used by the predecessor from the current-year certificates; exact decimal text. Reconciles original certificates to the inherited unused balance and preserves the APITC first-year limit. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].predecessorId` | string |  | Predecessor corporation identity for a transferred balance; required when a transfer is entered. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].subsequentYearEnds` | array |  | Actual subsequent taxation-year ends through the preceding year, including deemed control/reorganization years; transition credit age must equal this count plus one. |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].subsequentYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule3.agriOrigins[].transferred` | string |  | Reviewed CAD API origin transferred; the ledger remains CAD and only the aggregate current deduction converts at the exact taxation-year mean. |
| `abAt1Inputs.calculation.schedule3.capitalCertificates` | array |  | Capital investment tax credit certificates issued to the corporation during this taxation year; amounts are calculated by the issuing ministry. |
| `abAt1Inputs.calculation.schedule3.capitalCertificates[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.capitalCertificates[].amount` | string |  | Exact CAD amount on the issuer certificate. Investor/capital certificates convert at the issue-day Bank spot under ITA261(5)(c); API certificates stay in their CAD source ledger under ACTA4.02(6)(b.1). |
| `abAt1Inputs.calculation.schedule3.capitalCertificates[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule3.capitalCertificates[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule3.capitalCertificates[].id` | string |  | Certificate identity shown on the issued certificate; unique within its credit. |
| `abAt1Inputs.calculation.schedule3.capitalCertificates[].issueDate` | string |  | Certificate issue date within this taxation year, as an ISO date. |
| `abAt1Inputs.calculation.schedule3.capitalCertificates[].ministry` | string |  | Ministry that issued the certificate, as shown on the certificate. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins` | array |  | Capital investment credit balances by year of origin, occurrence ages 0 to 10, with the chosen application from each origin year. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].age` | number |  | Occurrence number of the origin year: 0 for this taxation year, increasing by one per preceding year. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].applied` | string |  | Reviewed applied in the receiving return reporting currency. First election/reversion-year openings reconcile to evidenced boundary conversions; incoming transfers are reviewed on the receiving basis. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates` | array |  | Issuer certificates supporting a current-year predecessor transfer, retained separately from certificates issued to the filer. At most 500; each requires evidence and confirmation. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates[].amount` | string |  | Exact CAD issuer-certificate amount; investor/capital receipts convert at their issue-day quote, while API receipts remain CAD. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates[].confirmed` | boolean |  | Preparer confirmation of this predecessor certificate. Changes clear this confirmation. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates[].evidenceRef` | string |  | Supporting issuer certificate reference. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates[].id` | string |  | Unique issuer certificate identity; do not repeat a certificate on another owner or origin. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates[].issueDate` | string |  | Actual ISO issue date in the parent current year, no later than the predecessor final year end. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].currentYearCertificates[].ministry` | string |  | Ministry that issued the predecessor certificate. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance` | array |  | AITC/CITC unused certificate ledger for this origin: identity, actual issue date, unused balance and same-date sequence where material. Required when a chosen total must be assigned between several origins. At most 500; every record needs evidence and confirmation. Remaining certificates roll as unconfirmed proposals. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance[].amount` | string |  | Unused certificate balance: current-year receipts are CAD and convert at issue day; prior-year balances are already in the current reporting basis, matching the reviewed origin opening. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance[].confirmed` | boolean |  | Preparer confirmation of this unused certificate and its issue facts. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance[].evidenceRef` | string |  | Supporting issuer or assessed unused-certificate record. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance[].id` | string |  | Unique issuer certificate identity; do not place one certificate in two origins. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance[].issueDate` | string |  | Actual ISO certificate issue date used for the statutory deemed issuance order. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuance[].sequence` | string |  | Actual issuer order for certificates with the same issue date, from 1 to 999999 as decimal text. Needed only when a partial claim distinguishes them; never inferred from array order. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuerLimitBasis` | string |  | APITC only. Closed choice: printedFractions confirms no additional issuer ceiling, or specifiedMaximum supplies the issuer ceiling currently available for this claim year (ACTA 25.04(2)(b)). Required for a positive application. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuerLimitYearEnd` | string |  | APITC only. Actual ISO claim-year end to which the specified available issuer ceiling applies. Annual maxima are not rolled into another year. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].issuerMaximum` | string |  | APITC only. Evidence-backed issuer-certificate maximum currently available for this actual claim year, after prior use; exact decimal text. It cannot enlarge the printed fraction or remaining pool. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].openingBalance` | string |  | Reviewed openingBalance in the receiving return reporting currency. First election/reversion-year openings reconcile to evidenced boundary conversions; incoming transfers are reviewed on the receiving basis. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].originYearEnd` | string |  | Taxation year end of the origin year, as an ISO date. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].originalCredit` | string |  | Agri-processing only: original credit received in the origin year, retained for the percentage limits. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].predecessorApplied` | string |  | Credit already used by the predecessor from the current-year certificates; exact decimal text. Reconciles original certificates to the inherited unused balance and preserves the APITC first-year limit. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].predecessorId` | string |  | Predecessor corporation identity for a transferred balance; required when a transfer is entered. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].subsequentYearEnds` | array |  | Actual subsequent taxation-year ends through the preceding year, including deemed control/reorganization years; transition credit age must equal this count plus one. |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].subsequentYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule3.capitalOrigins[].transferred` | string |  | Reviewed transferred in the receiving return reporting currency. First election/reversion-year openings reconcile to evidenced boundary conversions; incoming transfers are reviewed on the receiving basis. |
| `abAt1Inputs.calculation.schedule3.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule3.controlCertificatesValidConfirmed` | boolean |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.schedule3.controlValidityEvidenceRef` | string |  | Alberta transition evidence and statutory restrictions; an unanswered review remains held. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy` | object |  | ACTA ss.25.05-25.07 payment-based levy-credit entitlement, seven-year gross-payment/deduction ledger and chosen application. The deduction joins the certificate total at AT1 line 076; Schedule 3 600/604 retain their certificate-only formulas. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.applied` | string |  | Chosen deduction under s.25.06(1), bounded by the statutory pool and tax after ss.22/23; exact decimal text. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.confirmed` | boolean |  | Preparer confirmation of the levy-credit workpaper; dependent changes clear confirmation. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.evidenceRef` | string |  | Supporting levy-credit workpaper reference. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history` | array |  | Annual eligible amounts and annual deductions for all seven immediately preceding actual taxation years, including inherited years and deemed short years. Net pool vintages cannot replace this ledger. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.historyComplete` | boolean |  | Confirms the payment, partnership and actual preceding taxation-year census is complete, including nil amounts. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].confirmed` | boolean |  | Preparer confirmation of this levy record; changes clear confirmation. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].deducted` | string |  | Deduction actually claimed under s.25.06(1) in that taxation year; exact decimal text. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].eligible` | string |  | Gross annual amounts under s.25.05(a)/(b), before deductions; exact decimal text. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].evidenceRef` | string |  | Supporting source reference for this levy record. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].predecessorId` | string |  | Qualifying amalgamation/wind-up predecessor identity where this is an inherited annual ledger entry. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].subsequentYearEnds` | array |  | Every later completed actual taxation-year end through the immediately preceding year; deemed years count. At most 100 dates. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].subsequentYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.history[].yearEnd` | string |  | Actual ISO corporate or qualifying predecessor taxation-year end. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships` | array |  | Reasonable direct or deemed partnership shares for fiscal periods ending in this corporate taxation year; limited-partner shares are capped by the at-risk amount. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].atRiskAmount` | string |  | Actual s.96(2.2) at-risk amount at partnership fiscal-period end; required for limited partners; exact decimal text. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].confirmed` | boolean |  | Preparer confirmation of this levy record; changes clear confirmation. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].evidenceRef` | string |  | Supporting source reference for this levy record. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].fiscalPeriodEnd` | string |  | Actual ISO partnership fiscal-period end within this corporate taxation year. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].levyPaid` | string |  | Levy paid by the partnership on its own s.92.3 liability in that fiscal period; exact decimal text. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].limitedPartner` | boolean |  | Whether the corporation is a limited partner at that partnership fiscal-period end under s.25.07(1). |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].membership` | string |  | Closed choice: direct or indirect (deemed membership under s.25.07(3)). |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].partnershipId` | string |  | Ultimate levy-paying partnership identity; include a deemed membership only once. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.partnerships[].reasonableShare` | string |  | Evidence-backed reasonable corporate share under s.25.05(b), before the limited-partner cap; exact decimal text. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments` | array |  | Complete payment roster; excludes trustee payments and payments for which the corporation was not liable under s.92.3. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[].amount` | string |  | Amount paid; exact decimal text. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[].capacity` | string |  | Closed choice: corporation or trustee. Trustee payments generate no corporate credit (s.25.06(4)). |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[].confirmed` | boolean |  | Preparer confirmation of this levy record; changes clear confirmation. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[].evidenceRef` | string |  | Supporting source reference for this levy record. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[].id` | string |  | Unique payment identity. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[].liableUnder923` | boolean |  | Whether this corporation was liable for this paid levy under s.92.3. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevy.payments[].paidOn` | string |  | Actual levy payment date in ISO format, within this taxation year and on or after 2026-01-01. |
| `abAt1Inputs.calculation.schedule3.dataCentreLevyClaimed` | boolean \| null |  | Whether a data-centre levy deduction is claimed under ACTA s.25.06. Its evidenced chosen application is included in AT1 line 076, within tax remaining after lines 070 and 072 and certificate deductions. |
| `abAt1Inputs.calculation.schedule3.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule3.investorCertificates` | array |  | Investor tax credit certificates issued to the corporation during this taxation year; amounts are calculated by the issuing ministry. |
| `abAt1Inputs.calculation.schedule3.investorCertificates[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.investorCertificates[].amount` | string |  | Exact CAD amount on the issuer certificate. Investor/capital certificates convert at the issue-day Bank spot under ITA261(5)(c); API certificates stay in their CAD source ledger under ACTA4.02(6)(b.1). |
| `abAt1Inputs.calculation.schedule3.investorCertificates[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule3.investorCertificates[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule3.investorCertificates[].id` | string |  | Certificate identity shown on the issued certificate; unique within its credit. |
| `abAt1Inputs.calculation.schedule3.investorCertificates[].issueDate` | string |  | Certificate issue date within this taxation year, as an ISO date. |
| `abAt1Inputs.calculation.schedule3.investorCertificates[].ministry` | string |  | Ministry that issued the certificate, as shown on the certificate. |
| `abAt1Inputs.calculation.schedule3.investorOrigins` | array |  | Investor credit balances by year of origin, occurrence ages 0 to 4, with the chosen application from each origin year. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].age` | number |  | Occurrence number of the origin year: 0 for this taxation year, increasing by one per preceding year. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].applied` | string |  | Reviewed applied in the receiving return reporting currency. First election/reversion-year openings reconcile to evidenced boundary conversions; incoming transfers are reviewed on the receiving basis. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates` | array |  | Issuer certificates supporting a current-year predecessor transfer, retained separately from certificates issued to the filer. At most 500; each requires evidence and confirmation. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates[].amount` | string |  | Exact CAD issuer-certificate amount; investor/capital receipts convert at their issue-day quote, while API receipts remain CAD. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates[].confirmed` | boolean |  | Preparer confirmation of this predecessor certificate. Changes clear this confirmation. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates[].evidenceRef` | string |  | Supporting issuer certificate reference. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates[].id` | string |  | Unique issuer certificate identity; do not repeat a certificate on another owner or origin. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates[].issueDate` | string |  | Actual ISO issue date in the parent current year, no later than the predecessor final year end. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].currentYearCertificates[].ministry` | string |  | Ministry that issued the predecessor certificate. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance` | array |  | AITC/CITC unused certificate ledger for this origin: identity, actual issue date, unused balance and same-date sequence where material. Required when a chosen total must be assigned between several origins. At most 500; every record needs evidence and confirmation. Remaining certificates roll as unconfirmed proposals. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance[]` | object |  |  |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance[].amount` | string |  | Unused certificate balance: current-year receipts are CAD and convert at issue day; prior-year balances are already in the current reporting basis, matching the reviewed origin opening. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance[].confirmed` | boolean |  | Preparer confirmation of this unused certificate and its issue facts. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance[].evidenceRef` | string |  | Supporting issuer or assessed unused-certificate record. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance[].id` | string |  | Unique issuer certificate identity; do not place one certificate in two origins. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance[].issueDate` | string |  | Actual ISO certificate issue date used for the statutory deemed issuance order. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuance[].sequence` | string |  | Actual issuer order for certificates with the same issue date, from 1 to 999999 as decimal text. Needed only when a partial claim distinguishes them; never inferred from array order. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuerLimitBasis` | string |  | APITC only. Closed choice: printedFractions confirms no additional issuer ceiling, or specifiedMaximum supplies the issuer ceiling currently available for this claim year (ACTA 25.04(2)(b)). Required for a positive application. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuerLimitYearEnd` | string |  | APITC only. Actual ISO claim-year end to which the specified available issuer ceiling applies. Annual maxima are not rolled into another year. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].issuerMaximum` | string |  | APITC only. Evidence-backed issuer-certificate maximum currently available for this actual claim year, after prior use; exact decimal text. It cannot enlarge the printed fraction or remaining pool. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].openingBalance` | string |  | Reviewed openingBalance in the receiving return reporting currency. First election/reversion-year openings reconcile to evidenced boundary conversions; incoming transfers are reviewed on the receiving basis. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].originYearEnd` | string |  | Taxation year end of the origin year, as an ISO date. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].originalCredit` | string |  | Agri-processing only: original credit received in the origin year, retained for the percentage limits. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].predecessorApplied` | string |  | Credit already used by the predecessor from the current-year certificates; exact decimal text. Reconciles original certificates to the inherited unused balance and preserves the APITC first-year limit. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].predecessorId` | string |  | Predecessor corporation identity for a transferred balance; required when a transfer is entered. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].subsequentYearEnds` | array |  | Actual subsequent taxation-year ends through the preceding year, including deemed control/reorganization years; transition credit age must equal this count plus one. |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].subsequentYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.schedule3.investorOrigins[].transferred` | string |  | Reviewed transferred in the receiving return reporting currency. First election/reversion-year openings reconcile to evidenced boundary conversions; incoming transfers are reviewed on the receiving basis. |
| `abAt1Inputs.calculation.schedule3.openingsComplete` | boolean \| null |  | Whether the certificate and opening-balance roster by origin year is complete for all three credits. |
| `abAt1Inputs.calculation.schedule4` | object |  | Schedule 4 (AT201) calculation from reviewed per-country Alberta deduction facts and canonical federal Schedule 21 operands. An active incomplete calculation does not fall back to a manual jacket credit. |
| `abAt1Inputs.calculation.schedule4.bank` | object |  | Authorized foreign bank source and denominator facts under ACTA 23(4). The denominator is computed from Alberta Canadian taxable income, banking income and the Alberta s.115 addition; no manual ratio is accepted. |
| `abAt1Inputs.calculation.schedule4.bank.additionElection` | object |  | Independent Alberta ITA115(1)(a)(vii) election. ACTA17.1, rather than the resident110.5 federal cap, applies. The backend proves an increased Alberta foreign credit with the same Schedule4 producer and unchanged federal credit inputs. |
| `abAt1Inputs.calculation.schedule4.bank.additionElection.claim` | string |  | Section115 bank election claim. Exact bounded nonnegative claim text and reviewed residence/status evidence. A non-qualifying active election stays held. |
| `abAt1Inputs.calculation.schedule4.bank.additionElection.confirmed` | boolean |  | Section115 bank election confirmed. Exact bounded nonnegative claim text and reviewed residence/status evidence. A non-qualifying active election stays held. |
| `abAt1Inputs.calculation.schedule4.bank.additionElection.evidenceRef` | string |  | Section115 bank election evidenceRef. Exact bounded nonnegative claim text and reviewed residence/status evidence. A non-qualifying active election stays held. |
| `abAt1Inputs.calculation.schedule4.bank.additionElection.nonResidentThroughoutYear` | boolean \| null |  | Section115 bank election nonResidentThroughoutYear. Exact bounded nonnegative claim text and reviewed residence/status evidence. A non-qualifying active election stays held. |
| `abAt1Inputs.calculation.schedule4.bank.authorizedForeignBank` | boolean |  | Confirms authorized foreign bank status for the taxation year. True and supporting evidence are required for the bank calculation. |
| `abAt1Inputs.calculation.schedule4.bank.canadianBankingBusinessOnly` | boolean \| null |  | Whether all Alberta Schedule 12 net income is from the Canadian banking business. False requires a separately evidenced signed nonBankingIncome component. |
| `abAt1Inputs.calculation.schedule4.bank.confirmed` | boolean |  | Confirms the bank status and Canadian banking income scope. Source changes clear the confirmation. |
| `abAt1Inputs.calculation.schedule4.bank.evidenceRef` | string |  | Nonblank bank authorization and Canadian banking income source reference, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule4.bank.nonBankingIncome` | object |  | Signed Canadian non-banking income included in Alberta Schedule 12 net income, with evidence and confirmation. Subtracted once to isolate Canadian banking income; unavailable when the banking-only answer is true. |
| `abAt1Inputs.calculation.schedule4.bank.nonBankingIncome.amount` | string |  | Finite signed exact decimal text for the independent Alberta non-banking income component; no binary floating-point arithmetic. |
| `abAt1Inputs.calculation.schedule4.bank.nonBankingIncome.confirmed` | boolean |  | Review of the separate non-banking income component; cleared when the amount or reference changes. |
| `abAt1Inputs.calculation.schedule4.bank.nonBankingIncome.evidenceRef` | string |  | Nonblank source ledger or Alberta income workpaper reference, at most 1000 characters. |
| `abAt1Inputs.calculation.schedule4.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule4.countries` | array |  | One row per foreign country with investment income, identified by its federal Schedule 21 country name; rows join federal operands by country identity, never by position. |
| `abAt1Inputs.calculation.schedule4.countries[]` | object |  |  |
| `abAt1Inputs.calculation.schedule4.countries[].albertaDeduction` | string |  | Reviewed Alberta amount deducted from income per ACTA 8(2.2) for this country, as exact decimal text; required when the Alberta deduction differs. |
| `abAt1Inputs.calculation.schedule4.countries[].albertaDeductionDiffers` | boolean \| null |  | Whether the Alberta ACTA 8(2.2) deduction differs from the federal subsection 20(12) deduction for this country. |
| `abAt1Inputs.calculation.schedule4.countries[].canadianBankingBusinessOnly` | boolean \| null |  | Confirms that this country income and related non-business income taxes belong to the Canadian banking business and taxable income earned in Canada, under ACTA 23(4)(c)/(e). |
| `abAt1Inputs.calculation.schedule4.countries[].confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.schedule4.countries[].country` | string |  | Foreign country name exactly as produced on federal Schedule 21 for this taxation period. |
| `abAt1Inputs.calculation.schedule4.countries[].countryIsCanada` | boolean \| null |  | For the bank path, whether this is Canada. A Canadian source cannot be used for the ACTA 23(4) foreign investment credit. |
| `abAt1Inputs.calculation.schedule4.countries[].evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule4.countries[].residentInCountryDuringYear` | boolean \| null |  | For the bank path, whether the bank was resident in this country at any time in the year. Such a source is ineligible under ACTA 23(4)(b)-(c). |
| `abAt1Inputs.calculation.schedule4.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.schedule8` | object |  | AT5 Jul-12 pp.1-2; former ACTA24(2.1)-(4): original-period political contributions. Receipts before June15,2015, separate ordinary/senatorial ceilings and one remaining-tax cap. No carryforward or filing authorization. |
| `abAt1Inputs.calculation.schedule8.confirmed` | boolean |  | Preparer review of the original-period worksheet; changed receipts and periods clear this review. |
| `abAt1Inputs.calculation.schedule8.contributions` | array |  | Complete roster of at most500 separately identified official political receipts, including corporate shares of partnership contributions. |
| `abAt1Inputs.calculation.schedule8.contributions[]` | object |  |  |
| `abAt1Inputs.calculation.schedule8.contributions[].amount` | string |  | Nonnegative exact decimal-text contribution amount before a separately captured partnership share. |
| `abAt1Inputs.calculation.schedule8.contributions[].category` | string |  | Closed election category: election or senatorial. Former ACTA24(2.1) provides a separate ceiling for each category. |
| `abAt1Inputs.calculation.schedule8.contributions[].confirmed` | boolean |  | Preparer review of this receipt; source edits clear the review. |
| `abAt1Inputs.calculation.schedule8.contributions[].date` | string |  | Actual ISO receipt date. The corporate contribution prohibition begins June15,2015; partnership attribution does not change this underlying date. |
| `abAt1Inputs.calculation.schedule8.contributions[].evidenceRef` | string |  | Retained official receipt and, for a partnership, the source statement supporting the corporate share. |
| `abAt1Inputs.calculation.schedule8.contributions[].id` | string |  | Stable unique receipt identity, at most1000 characters. |
| `abAt1Inputs.calculation.schedule8.contributions[].legalContributionConfirmed` | boolean |  | Confirm the actual receipt complied with the election legislation’s contribution limits and timing, including association at the contribution date. |
| `abAt1Inputs.calculation.schedule8.contributions[].memberAtPartnershipEndConfirmed` | boolean |  | Reviewed membership at the partnership fiscal end, required by former ACTA24(4). |
| `abAt1Inputs.calculation.schedule8.contributions[].partnershipEnd` | string |  | ISO partnership fiscal end, which must fall in this corporate taxation period under former ACTA24(4). |
| `abAt1Inputs.calculation.schedule8.contributions[].partnershipId` | string |  | Actual partnership identity for a partnership receipt. |
| `abAt1Inputs.calculation.schedule8.contributions[].partnershipStart` | string |  | ISO start of the actual partnership fiscal period containing the receipt. |
| `abAt1Inputs.calculation.schedule8.contributions[].receiptNumber` | string |  | Official receipt number; recipient/number pairs cannot repeat. |
| `abAt1Inputs.calculation.schedule8.contributions[].recipient` | string |  | Actual registered Alberta recipient named on the official receipt. |
| `abAt1Inputs.calculation.schedule8.contributions[].registeredRecipientConfirmed` | boolean |  | Confirm the recipient’s actual registration for this receipt and election category. |
| `abAt1Inputs.calculation.schedule8.contributions[].shareDenominator` | string |  | Positive exact share denominator, no less than its numerator. |
| `abAt1Inputs.calculation.schedule8.contributions[].shareNumerator` | string |  | Nonnegative exact numerator of this corporation’s contribution share. |
| `abAt1Inputs.calculation.schedule8.contributions[].source` | string |  | Closed source: direct or partnership. Direct receipts must fall in this corporate taxation period. |
| `abAt1Inputs.calculation.schedule8.evidenceRef` | string |  | Supporting original-year political contribution register or reviewed nil worksheet. |
| `abAt1Inputs.calculation.schedule8.receiptsComplete` | boolean |  | Confirm the full receipt roster, including an explicitly reviewed empty roster for nil. |
| `abAt1Inputs.calculation.schedule9` | object |  | AT190 Oct-12 and the2013 SR&ED guide: pre-credit project attribution, property recapture, deduction-pool repayment tracing and one canonical federal replay before historical jacket081. The current jacket carrier remains held when absent from its face. |
| `abAt1Inputs.calculation.schedule9.associated` | boolean \| null |  | Association for the historical SR&ED expenditure limit; explicit boolean. |
| `abAt1Inputs.calculation.schedule9.confirmed` | boolean |  | Preparer review of the independent historical facts. |
| `abAt1Inputs.calculation.schedule9.deductionPoolAssistance` | object |  | Reviewed portion of gross credit110 attributable to allowable deduction-pool expenditures for T661429; it is not assumed to equal the whole credit. |
| `abAt1Inputs.calculation.schedule9.deductionPoolAssistance.amount` | string |  | Exact decimal text for the evidenced deduction-pool assistance, from zero to gross credit110. |
| `abAt1Inputs.calculation.schedule9.deductionPoolAssistance.confirmed` | boolean |  | Preparer review of the deduction-pool assistance amount and its reference. |
| `abAt1Inputs.calculation.schedule9.deductionPoolAssistance.evidenceRef` | string |  | Supporting allocation of credit assistance to allowable deduction-pool expenditure. |
| `abAt1Inputs.calculation.schedule9.evidenceRef` | string |  | Supporting historical Alberta credit and agreement reference. |
| `abAt1Inputs.calculation.schedule9.fieldOfScience` | string |  | Printed 009040 category: 1 natural/formal, 2 engineering/technology, 3 medical/health, 4 agricultural. |
| `abAt1Inputs.calculation.schedule9.idmtcClaimed` | boolean \| null |  | Whether IDMTC is also claimed for this taxation year; reconcile the mutual exclusion under ACTA 26.93(7). |
| `abAt1Inputs.calculation.schedule9.members` | array |  | At most 500 associated-corporation agreement rows, including exactly one filer and all calendar-year allocations. |
| `abAt1Inputs.calculation.schedule9.members[]` | object |  |  |
| `abAt1Inputs.calculation.schedule9.members[].allocation` | string |  | Allocated expenditure limit, exact nonnegative decimal text. |
| `abAt1Inputs.calculation.schedule9.members[].corporationId` | string |  | Stable associated-corporation identity. |
| `abAt1Inputs.calculation.schedule9.members[].isFiler` | boolean |  | Explicitly identify this return; exactly one row must be true. |
| `abAt1Inputs.calculation.schedule9.members[].yearEnd` | string |  | Actual year end in the filer calendar year, YYYY-MM-DD. |
| `abAt1Inputs.calculation.schedule9.members[].yearStart` | string |  | Actual taxation-year beginning date, YYYY-MM-DD. |
| `abAt1Inputs.calculation.schedule9.ministerialAdjustmentApplies` | boolean \| null |  | Whether ministerial association, control or shortened-year adjustments apply under ACTA 26.8(12)-(16). Positive or unanswered remains held. |
| `abAt1Inputs.calculation.schedule9.preCreditFederalConfirmed` | boolean |  | Review that project amounts are the pre-credit federal amounts required by the 2013 SR&ED guide Step1; missing review holds the credit. |
| `abAt1Inputs.calculation.schedule9.projects` | array |  | At most 500 separately reviewed Alberta projects. Current-year expenditures must fall in the return before 2020-01-01; repayment-only rows may retain earlier eligible project dates and must give a repayment date in this return. |
| `abAt1Inputs.calculation.schedule9.projectsComplete` | boolean |  | Confirm the complete dated historical Alberta project roster. |
| `abAt1Inputs.calculation.schedule9.projects[]` | object |  |  |
| `abAt1Inputs.calculation.schedule9.projects[].albertaFederal` | string |  | Independent Alberta albertaFederal amount as exact nonnegative decimal text; explicit nil required. |
| `abAt1Inputs.calculation.schedule9.projects[].albertaProxy` | string |  | Independent Alberta albertaProxy amount as exact nonnegative decimal text; explicit nil required. |
| `abAt1Inputs.calculation.schedule9.projects[].albertaProxyCap` | string |  | Reviewed actual Reg2900 overall proxy maximum for these Alberta salary facts. Required with albertaProxySalaryBase; missing caps are not assumed unlimited. |
| `abAt1Inputs.calculation.schedule9.projects[].albertaProxySalaryBase` | string |  | Optional independently reviewed Alberta salary base used in the prescribed proxy calculation. When present with albertaProxyCap, the engine owns Alberta proxy using ACTA26.6(3)/(3.1), including fiscal-day65%/60%/55% transitions in2013-2014; the retained scalar cannot override it. |
| `abAt1Inputs.calculation.schedule9.projects[].confirmed` | boolean |  | Preparer review of this project. |
| `abAt1Inputs.calculation.schedule9.projects[].evidenceRef` | string |  | Supporting dated project record. |
| `abAt1Inputs.calculation.schedule9.projects[].federalProxy` | string |  | Independent Alberta federalProxy amount as exact nonnegative decimal text; explicit nil required. |
| `abAt1Inputs.calculation.schedule9.projects[].id` | string |  | Stable project identity. |
| `abAt1Inputs.calculation.schedule9.projects[].incurredFrom` | string |  | First eligible project expenditure date, YYYY-MM-DD, no earlier than 2009-01-01. Current-year expenditure amounts must be within this return; repayment-only history may be earlier. |
| `abAt1Inputs.calculation.schedule9.projects[].incurredTo` | string |  | Last eligible project expenditure date, YYYY-MM-DD, before 2020-01-01. Separately record the actual later repayment date. |
| `abAt1Inputs.calculation.schedule9.projects[].repaymentDate` | string |  | Actual date assistance was repaid, YYYY-MM-DD, within this taxation year. A repayment can relate to an eligible 2009-2019 project; retain its historical expenditure dates separately. |
| `abAt1Inputs.calculation.schedule9.projects[].repayments` | string |  | Independent Alberta repayments amount as exact nonnegative decimal text; explicit nil required. |
| `abAt1Inputs.calculation.schedule9.qualifiedAssistance` | object |  | Reviewed current/capital attribution of the legacy credit for original T661 E(13)/E(15) lines513/514 and the restored-capital face after December15,2024. The factual attribution controls which qualified expenditures the credit actually reduces. |
| `abAt1Inputs.calculation.schedule9.qualifiedAssistance.amount` | string |  | For split assistance, the reviewed capital portion; the engine computes the remaining current portion. |
| `abAt1Inputs.calculation.schedule9.qualifiedAssistance.confirmed` | boolean |  | Preparer confirmation of the current/capital expenditure attribution. |
| `abAt1Inputs.calculation.schedule9.qualifiedAssistance.evidenceRef` | string |  | Evidence identifying the expenditure to which the credit assistance relates. |
| `abAt1Inputs.calculation.schedule9.qualifiedAssistance.kind` | string |  | Current, capital, or split qualified-expenditure assistance; an actual expenditure attribution. |
| `abAt1Inputs.calculation.schedule9.qualifiedCorporationConfirmed` | boolean |  | Review Alberta PE, qualifying Alberta SR&ED and non-exempt qualified-corporation status under ACTA 26.6(1)(h). |
| `abAt1Inputs.calculation.schedule9.recaptureApplies` | boolean \| null |  | Whether a property disposition, conversion or deemed disposition requires old-credit recapture. A positive answer requires the complete original-credit/property roster and federal repayment tracing. |
| `abAt1Inputs.calculation.schedule9.recaptures` | array |  | Historical property/recipient/event roster under ACTA26.9 and SRED1R3 paragraphs24-29; earlier conversions and unresolved multiple inclusion years hold. |
| `abAt1Inputs.calculation.schedule9.recapturesComplete` | boolean |  | Review the complete old-credit property recapture roster, including an explicit nil roster. |
| `abAt1Inputs.calculation.schedule9.recaptures[]` | object |  |  |
| `abAt1Inputs.calculation.schedule9.recaptures[].acquiredOn` | string |  | Original eligible property acquisition date after2008 and before2020, ISO YYYY-MM-DD. |
| `abAt1Inputs.calculation.schedule9.recaptures[].acquisitionYearEnd` | string |  | Actual taxation-year end of the original credit inclusion, ISO YYYY-MM-DD. |
| `abAt1Inputs.calculation.schedule9.recaptures[].confirmed` | boolean |  | Preparer review of this property’s original credit and current recapture facts. |
| `abAt1Inputs.calculation.schedule9.recaptures[].event` | string |  | Arm’s-length sale, non-arm’s-length sale, commercial use, or deemed disposition when property leaves Alberta. |
| `abAt1Inputs.calculation.schedule9.recaptures[].eventDate` | string |  | Actual current-year property event date, ISO YYYY-MM-DD. |
| `abAt1Inputs.calculation.schedule9.recaptures[].evidenceRef` | string |  | Original assessed expenditure/credit and current property-event evidence. |
| `abAt1Inputs.calculation.schedule9.recaptures[].fairMarketValue` | string |  | Event-date fair market value for conversion, non-arm’s-length disposal or departure from Alberta, exact decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].includedCost` | string |  | Property cost included in the original recipient’s eligible expenditure, exact decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].includedInLine560` | string |  | Original-user property recapture already included in the pre-credit T661560, exact decimal text; prevents a duplicate addition. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears` | array |  | At most 50 separately reviewed original inclusion years, including the acquisition year. The cost caps sum; the proceeds limb retains the acquisition-year ratio. Clear the single-year confirmation when using this roster. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYearsComplete` | boolean |  | Confirms all original inclusion years for this property and credit recipient under ACTA 26.91(5). Changes to the property or year rows clear review. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears[]` | object |  |  |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears[].confirmed` | boolean |  | Preparer confirmation of this original inclusion-year row. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears[].eligibleExpenditures` | string |  | Exact nonnegative decimal-text total eligible expenditures of this credit recipient in this inclusion year. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears[].evidenceRef` | string |  | Supporting original assessed credit and property-cost inclusion reference. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears[].expenditureLimit` | string |  | Exact nonnegative decimal-text maximum expenditure limit of this credit recipient in this inclusion year. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears[].includedCost` | string |  | Exact nonnegative decimal-text property cost included in eligible expenditures in this year. |
| `abAt1Inputs.calculation.schedule9.recaptures[].inclusionYears[].yearEnd` | string |  | Actual ISO end of the original inclusion taxation year, unique within the property/credit-recipient roster. |
| `abAt1Inputs.calculation.schedule9.recaptures[].notPreviouslyConvertedConfirmed` | boolean |  | Confirm the property was not previously converted to commercial use. |
| `abAt1Inputs.calculation.schedule9.recaptures[].originalEligible` | string |  | Total eligible expenditure of the original credit recipient in the inclusion year, exact decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].originalLimit` | string |  | Assessed expenditure limit of the original recipient for that year, exact decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].otherRecipientId` | string |  | Identity of the expenditure transferee or original user whose credit is being recaptured. |
| `abAt1Inputs.calculation.schedule9.recaptures[].otherRecipientNoPoolReductionConfirmed` | boolean |  | For an original-user acquisition, confirm that the other corporation’s credit did not reduce this taxpayer’s deduction pool. |
| `abAt1Inputs.calculation.schedule9.recaptures[].ownRecapturePropertyId` | string |  | Link a same-event own-property recapture when qualified expenditures were transferred; an unresolved positive subtraction stays held. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment` | object |  | Trace the assistance repayment and this taxpayer’s earlier pool reduction separately from the property recapture. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.assistanceId` | string |  | Stable identity of the original Alberta SR&ED credit. Reuse across properties funded by the same grant; their historical pool facts must agree and cumulative restorations cannot exceed that reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.assistanceNotReceivedConfirmed` | boolean |  | For deemed127_10_8, confirm assistance was never received and ceased to be reasonably expected on repaymentDate. Cannot be true for an actual repayment. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.character` | string |  | actualRepayment or deemed127_10_8. federalItcRecapture records an unresolved mischaracterization and keeps the hold: s.37(1)(c.2) feeds the following year's 453, not current 445. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.confirmed` | boolean |  | True only after reviewing the complete assistance, taxpayer-pool and repayment trace; cleared when property or trace facts change. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.evidenceRef` | string |  | Retained original Alberta SR&ED credit, deduction-pool reduction, repayment and allocation evidence, at most 1000 characters; required with confirmed. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.grantAmount` | string |  | Original Alberta SR&ED credit amount as decimal text, matching the property recapture calculation's originalGrant. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.grantYearEnd` | string |  | Original Alberta SR&ED credit taxation year end, ISO date, matching the property's acquisition year end. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.includedInLine445` | string |  | Portion of this pool repayment already in the source T661 445, decimal text including explicit nil. Subtracted from the additive update so the repayment is counted once. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.includedInLine560` | string |  | Portion of this recapture already in source T661 560, decimal text including explicit nil. Separate from 445 inclusion and subtracted from the ITC-side update. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.poolReductionAmount` | string |  | Total original assistance reduction of this taxpayer's deduction pool, decimal text including explicit nil. Repeat the same grant-level amount across its property traces; do not substitute the transferee's reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.poolReductionYearEnd` | string |  | Prior taxation year in which this original Alberta SR&ED credit reduced this taxpayer's deduction pool under s.37(1)(d), ISO date. Required for a positive reduction; absent for a confirmed nil reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.poolRepaymentAmount` | string |  | Evidenced portion of this repayment attributable to assistance that reduced this taxpayer's deduction pool. Not an override of line 445. Capped by the repayment and un-restored original reduction; mixed assistance requires traced allocation, never an inferred proportion. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.priorPoolRestored` | string |  | Cumulative prior s.37(1)(c) restorations against this grant's pool reduction, excluding current traced repayments. Decimal text, explicit nil required. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.qualifiedExpenditureReduction` | string |  | For deemed127_10_8, the original reduction of qualified expenditures required by s.127(10.8)(a); must cover the deemed repayment. Decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.recipient` | string |  | Original assistance recipient: taxpayer or expenditureTransferee, matching the recapture situation. A transferee's deduction-pool reduction is not this taxpayer's reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.repaymentAmount` | string |  | Reviewed repayment allocation matching this property's computed line 132 recapture at preparation cents. Decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.repaymentDate` | string |  | Actual repayment date, or date unreceived assistance ceased to be reasonably expected under s.127(10.8), within this taxation year and no earlier than the property event. ISO date. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.repaymentId` | string |  | Unique property repayment allocation identity. A payment covering several properties needs distinct evidenced allocations; duplicate identities are refused. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.transferAgreementRef` | string |  | Retained expenditure-transfer agreement reference, required for a transferee grant and absent for own assistance. |
| `abAt1Inputs.calculation.schedule9.recaptures[].poolRepayment.transfereeId` | string |  | Expenditure transferee identity, required for transferred expenditures and absent for own assistance. |
| `abAt1Inputs.calculation.schedule9.recaptures[].previousCommercialUseDate` | string |  | ISO date of evidenced earlier commercial conversion before this taxation year. Together with a false no-earlier-conversion answer it excludes a second disposal recapture under ACTA 26.9; retained current repayments must be cleared. |
| `abAt1Inputs.calculation.schedule9.recaptures[].previousRecapture` | string |  | Earlier property recapture, exact decimal text; a positive history requires reconciliation rather than a second recapture. |
| `abAt1Inputs.calculation.schedule9.recaptures[].proceeds` | string |  | Current arm’s-length disposition proceeds, exact decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].propertyId` | string |  | Stable property identity, kept with the original assessed credit and current disposition evidence. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations` | array |  | At most 50 evidenced repayment allocations, one per inclusion-year credit. Each uses the existing assistance-repayment trace; allocations reconcile to computed recapture and cannot exceed the yearly property credit. No proportional pool restoration is presumed. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[]` | object |  |  |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].assistanceId` | string |  | Stable identity of the original Alberta SR&ED credit. Reuse across properties funded by the same grant; their historical pool facts must agree and cumulative restorations cannot exceed that reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].assistanceNotReceivedConfirmed` | boolean |  | For deemed127_10_8, confirm assistance was never received and ceased to be reasonably expected on repaymentDate. Cannot be true for an actual repayment. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].character` | string |  | actualRepayment or deemed127_10_8. federalItcRecapture records an unresolved mischaracterization and keeps the hold: s.37(1)(c.2) feeds the following year's 453, not current 445. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].confirmed` | boolean |  | True only after reviewing the complete assistance, taxpayer-pool and repayment trace; cleared when property or trace facts change. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].evidenceRef` | string |  | Retained original Alberta SR&ED credit, deduction-pool reduction, repayment and allocation evidence, at most 1000 characters; required with confirmed. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].grantAmount` | string |  | Original Alberta SR&ED credit amount as decimal text, matching the property recapture calculation's originalGrant. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].grantYearEnd` | string |  | Original Alberta SR&ED credit taxation year end, ISO date, matching the property's acquisition year end. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].includedInLine445` | string |  | Portion of this pool repayment already in the source T661 445, decimal text including explicit nil. Subtracted from the additive update so the repayment is counted once. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].includedInLine560` | string |  | Portion of this recapture already in source T661 560, decimal text including explicit nil. Separate from 445 inclusion and subtracted from the ITC-side update. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].poolReductionAmount` | string |  | Total original assistance reduction of this taxpayer's deduction pool, decimal text including explicit nil. Repeat the same grant-level amount across its property traces; do not substitute the transferee's reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].poolReductionYearEnd` | string |  | Prior taxation year in which this original Alberta SR&ED credit reduced this taxpayer's deduction pool under s.37(1)(d), ISO date. Required for a positive reduction; absent for a confirmed nil reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].poolRepaymentAmount` | string |  | Evidenced portion of this repayment attributable to assistance that reduced this taxpayer's deduction pool. Not an override of line 445. Capped by the repayment and un-restored original reduction; mixed assistance requires traced allocation, never an inferred proportion. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].priorPoolRestored` | string |  | Cumulative prior s.37(1)(c) restorations against this grant's pool reduction, excluding current traced repayments. Decimal text, explicit nil required. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].qualifiedExpenditureReduction` | string |  | For deemed127_10_8, the original reduction of qualified expenditures required by s.127(10.8)(a); must cover the deemed repayment. Decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].recipient` | string |  | Original assistance recipient: taxpayer or expenditureTransferee, matching the recapture situation. A transferee's deduction-pool reduction is not this taxpayer's reduction. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].repaymentAmount` | string |  | Reviewed repayment allocation matching this property's computed line 132 recapture at preparation cents. Decimal text. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].repaymentDate` | string |  | Actual repayment date, or date unreceived assistance ceased to be reasonably expected under s.127(10.8), within this taxation year and no earlier than the property event. ISO date. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].repaymentId` | string |  | Unique property repayment allocation identity. A payment covering several properties needs distinct evidenced allocations; duplicate identities are refused. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].transferAgreementRef` | string |  | Retained expenditure-transfer agreement reference, required for a transferee grant and absent for own assistance. |
| `abAt1Inputs.calculation.schedule9.recaptures[].repaymentAllocations[].transfereeId` | string |  | Expenditure transferee identity, required for transferred expenditures and absent for own assistance. |
| `abAt1Inputs.calculation.schedule9.recaptures[].sharedUse` | string |  | Ordinary, first-term shared-use or second-term shared-use property; statutory weights are owned by constants. |
| `abAt1Inputs.calculation.schedule9.recaptures[].singleInclusionYearConfirmed` | boolean |  | Confirm a single original inclusion year, or supply and review the complete inclusionYears roster for multi-year cost attribution. |
| `abAt1Inputs.calculation.schedule9.recaptures[].situation` | string |  | Own property, transferred qualified expenditure, or property acquired from an original user at non-arm’s length. |
| `abAt1Inputs.calculation.schedule9.recaptures[].taxationYearAge` | string |  | Actual taxation-year age from acquisition year to event year, including deemed short years: current,1-20,or over20. Use this corporation's years for own/transferred situations and the original user's actual or assumed event year under26.9(3). Reviewed evidence is required; calendar-year difference is not a substitute. Blank remains unanswered. |
| `abAt1Inputs.calculation.section80Settlement` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.agreements` | array |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field agreements. |
| `abAt1Inputs.calculation.section80Settlement.agreementsComplete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field agreementsComplete. |
| `abAt1Inputs.calculation.section80Settlement.agreements[]` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.agreements[].amount` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field amount. |
| `abAt1Inputs.calculation.section80Settlement.agreements[].confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.agreements[].directedRecipient` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field directedRecipient. |
| `abAt1Inputs.calculation.section80Settlement.agreements[].evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.agreements[].id` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field id. |
| `abAt1Inputs.calculation.section80Settlement.agreements[].recipientDeemedUnapplied` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field recipientDeemedUnapplied. |
| `abAt1Inputs.calculation.section80Settlement.agreements[].settlementId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlementId. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions` | array |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field capitalDispositions. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositionsComplete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field capitalDispositionsComplete. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[]` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].additionalStatutoryCapitalGain` | string |  | Actual additionalStatutoryCapitalGain for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].adjustedCostBase` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field adjustedCostBase. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].depreciableProperty` | boolean |  | Actual depreciableProperty for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].dispositionDate` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field dispositionDate. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].excludedProperty` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field excludedProperty. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].incomePortionExcluded` | string |  | Actual incomePortionExcluded for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].listedPersonalProperty` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field listedPersonalProperty. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].outlays` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field outlays. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].proceeds` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field proceeds. |
| `abAt1Inputs.calculation.section80Settlement.capitalDispositions[].propertyId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field propertyId. |
| `abAt1Inputs.calculation.section80Settlement.confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes` | array |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field directedAttributes. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributesComplete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field directedAttributesComplete. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[]` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].attributeId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field attributeId. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].directedPersonConfirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field directedPersonConfirmed. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].grossAvailable` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field grossAvailable. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].personId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field personId. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].settlementId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlementId. |
| `abAt1Inputs.calculation.section80Settlement.directedAttributes[].stage` | string |  |  |
| `abAt1Inputs.calculation.section80Settlement.evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.federalSection61NetAdjustment` | string |  | Actual federalSection61NetAdjustment for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.federalSection61Ref` | string |  | Actual federalSection61Ref for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.periodEnd` | string |  | Actual ISO end of the property income source taxation period. |
| `abAt1Inputs.calculation.section80Settlement.periodStart` | string |  | Actual ISO start of the property income source taxation period. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief` | object |  | Reviewed section61Relief source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.assetFairMarketValue` | string |  | Actual assetFairMarketValue for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.avoidance61_3Applies` | boolean \| null |  | Actual avoidance61_3Applies for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.bankruptDuringYear` | boolean \| null |  | Actual bankruptDuringYear for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.currentTaxPrepayments` | string |  | Actual currentTaxPrepayments for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.distressPreferredPrincipal` | string |  | Actual distressPreferredPrincipal for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.federalEvidenceRef` | string |  | Actual federalEvidenceRef for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.federalNetAdjustment` | string |  | Actual federalNetAdjustment for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.fixedPlaceInCanadaAtYearEnd` | boolean \| null |  | Actual fixedPlaceInCanadaAtYearEnd for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.liabilitiesExcludingCurrentTaxes` | string |  | Actual liabilitiesExcludingCurrentTaxes for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.liabilityBasis` | string |  | Actual liabilityBasis for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.noEquityOrConsolidationMethod` | boolean |  | Actual noEquityOrConsolidationMethod for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.non88WindupBeginsInYear` | boolean \| null |  | Actual non88WindupBeginsInYear for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.nonArmLengthShareholderPayments12Months` | string |  | Actual nonArmLengthShareholderPayments12Months for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.openingCumulativeNetIncome` | string |  | Actual openingCumulativeNetIncome for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.otherNetIncomeBeforeRelief` | string |  | Actual otherNetIncomeBeforeRelief for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.paragraph80_15Deduction` | string |  | Actual paragraph80_15Deduction for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.partnershipIncomeIncluded` | string |  | Actual partnershipIncomeIncluded for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears` | array |  | Actual priorYears for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYearsComplete` | boolean |  | Actual priorYearsComplete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears[]` | object |  | Reviewed priorYears source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears[].confirmed` | boolean | strict | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears[].evidenceRef` | string | strict | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears[].netSection80Income` | string | strict | Actual netSection80Income for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears[].reserveClaim` | string | strict | Actual reserveClaim for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears[].yearEnd` | string | strict | Actual yearEnd for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.priorYears[].yearStart` | string | strict | Actual yearStart for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.reserveClaim` | string |  | Actual reserveClaim for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.residency` | string |  | Actual residency for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocations` | array |  | Actual settlementAllocations for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocationsComplete` | boolean |  | Actual settlementAllocationsComplete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocations[]` | object |  | Reviewed settlementAllocations source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocations[].alreadyIncludedPartnershipNet` | string |  | Actual alreadyIncludedPartnershipNet for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocations[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocations[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocations[].netAdjustment` | string |  | Actual netAdjustment for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.settlementAllocations[].settlementId` | string |  | Actual settlementId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61Relief.taxableCorporationConfirmed` | boolean |  | Actual taxableCorporationConfirmed for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.section61ReliefApplies` | boolean \| null |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field section61ReliefApplies. |
| `abAt1Inputs.calculation.section80Settlement.settlements` | array |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlements. |
| `abAt1Inputs.calculation.section80Settlement.settlementsComplete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlementsComplete. |
| `abAt1Inputs.calculation.section80Settlement.settlements[]` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].commercialObligationConfirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field commercialObligationConfirmed. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].excludedObligation` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field excludedObligation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].exclusionEvidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field exclusionEvidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].exclusionReason` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field exclusionReason. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].federalIncomeIncluded` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field federalIncomeIncluded. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].federalIncomeKind` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field federalIncomeKind. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].federalSourceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field federalSourceRef. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].financedPropertyId` | string |  |  |
| `abAt1Inputs.calculation.section80Settlement.settlements[].id` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field id. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].issuePrice` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field issuePrice. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].obligationIssuedDate` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field obligationIssuedDate. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.complete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field complete. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.designationRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field designationRef. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients` | array |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field recipients. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[]` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisBefore` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field basisBefore. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements` | array |  | Actual basisMovements for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[]` | object |  | Reviewed basisMovements source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].amount` | string |  | Exact original monetary amount as decimal text. Other additions008 and reductions018 may be signed; all other source amounts are nonnegative. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].basisAfter` | string |  | Actual basisAfter for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].basisBefore` | string |  | Actual basisBefore for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].date` | string |  | Actual date for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].effectiveAt` | string |  | Actual effectiveAt for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].field` | string |  | Actual field for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].operation` | string |  | Actual operation for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].sourceId` | string |  | Actual sourceId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].basisMovements[].sourceKind` | string |  | Actual sourceKind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].capitalKind` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field capitalKind. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaClass` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field ccaClass. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory` | object |  | Reviewed ccaHistory source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.complete` | boolean |  | Actual complete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements` | array |  | Actual movements for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[]` | object |  | Reviewed movements source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].amount` | string |  | Exact original monetary amount as decimal text. Other additions008 and reductions018 may be signed; all other source amounts are nonnegative. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].capitalCostChange` | string |  | Actual capitalCostChange for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].date` | string |  | Actual date for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].effectiveAt` | string |  | Actual effectiveAt for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].generalCostChange` | string |  | Actual generalCostChange for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].id` | string |  | Stable source or quote identity within its roster; use reviewed evidence rather than array position. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].kind` | string |  | Actual kind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].propertyId` | string |  | Actual propertyId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ccaHistory.movements[].sourceId` | string |  | Actual sourceId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].classId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field classId. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].classUccAfterPropertyMovements` | string |  | Actual classUccAfterPropertyMovements for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].classUccBefore` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field classUccBefore. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].classUccOtherReductionsAtSettlement` | string |  | Actual classUccOtherReductionsAtSettlement for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].depreciationBasisBefore` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field depreciationBasisBefore. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].designated` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field designated. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].excludedProperty` | boolean \| null |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field excludedProperty. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].fedeDeductibleLimit` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field fedeDeductibleLimit. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].id` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field id. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].kind` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field kind. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory` | object |  | Reviewed nonClassHistory source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.acquisitionDate` | string |  | Actual acquisitionDate for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory` | array |  | Actual allowedHistory for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistoryComplete` | boolean |  | Actual allowedHistoryComplete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[]` | object |  | Reviewed allowedHistory source facts, with the retained statutory property/debt history and evidence. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].amount` | string |  | Exact original monetary amount as decimal text. Other additions008 and reductions018 may be signed; all other source amounts are nonnegative. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.allowedHistory[].yearEnd` | string |  | Actual yearEnd for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.capitalCostBefore` | string |  | Exact reviewed CCA capital cost before control;13(7)(f)/111(4)(e)(iii) computes the purpose-limited subsequent CCA cost. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.character` | string |  | Actual character for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.confirmed` | boolean |  | Preparer confirmation of these exact source facts and retained evidence. Source changes clear dependent confirmations. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.evidenceRef` | string |  | Retained supporting reference for the actual property, currency source, quote, election or boundary. Required with confirmation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.neverPrescribedClassConfirmed` | boolean |  | Actual neverPrescribedClassConfirmed for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.propertyHistoryComplete` | boolean |  | Actual propertyHistoryComplete for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].nonClassHistory.propertyId` | string |  | Actual propertyId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].ownedImmediatelyAfter` | boolean \| null |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field ownedImmediatelyAfter. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].part17Allowed` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field part17Allowed. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].personalUseProperty` | boolean \| null |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field personalUseProperty. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].propertyId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field propertyId. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].related` | boolean \| null |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field related. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourceCharacter` | string |  | Actual resourceCharacter for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourceCountry` | string |  | Actual resourceCountry for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourceEventInstants` | object |  | Actual resourceEventInstants for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourceKind` | string |  | Actual resourceKind for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourceOriginalOwnerId` | string |  | Actual resourceOriginalOwnerId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourcePoolId` | string |  | Actual resourcePoolId for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourcePropertyIds` | array |  | Actual resourcePropertyIds for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].resourcePropertyIds[]` | string |  |  |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].specifiedShareholder` | boolean \| null |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field specifiedShareholder. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.recipients[].successorPoolLimit` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field successorPoolLimit. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].optionalDesignations.residentInCanadaThroughout` | boolean \| null |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field residentInCanadaThroughout. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].otherForgivenReductions` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field otherForgivenReductions. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].paidForPrincipal` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field paidForPrincipal. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].principalBefore` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field principalBefore. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].reportedPrincipalWriteOff` | string |  |  |
| `abAt1Inputs.calculation.section80Settlement.settlements[].sameDayOrderBasis` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field sameDayOrderBasis. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].sameDayOrderRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field sameDayOrderRef. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].settlementAt` | string |  | Actual settlementAt for this statutory property, debt, relief or resource source. Retain evidence and confirm the exact facts; missing facts hold computation. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].settlementDate` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlementDate. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].settlementHistoryComplete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlementHistoryComplete. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].sourceId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field sourceId. |
| `abAt1Inputs.calculation.section80Settlement.settlements[].sourceIncomeKind` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field sourceIncomeKind. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts` | array |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field sourceLossReceipts. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceiptsComplete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field sourceLossReceiptsComplete. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[]` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[].confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[].evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[].forgivenConsumed` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field forgivenConsumed. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[].lossId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field lossId. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[].settlementId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlementId. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[].sourcePeriodEnd` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field sourcePeriodEnd. |
| `abAt1Inputs.calculation.section80Settlement.sourceLossReceipts[].stage` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field stage. |
| `abAt1Inputs.calculation.section80Settlement.subsection88_1_2NetCapitalLossAvailable` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field subsection88_1_2NetCapitalLossAvailable. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses` | array |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field unrecognizedLosses. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLossesComplete` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field unrecognizedLossesComplete. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[]` | object |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].adjustedCostBase` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field adjustedCostBase. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].confirmed` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field confirmed. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].deniedUnder40_2_g_ii` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field deniedUnder40_2_g_ii. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].dispositionDate` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field dispositionDate. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].evidenceRef` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field evidenceRef. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].outlays` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field outlays. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].proceeds` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field proceeds. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].propertyId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field propertyId. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].qualifiesAcrossControlEvents` | boolean |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field qualifiesAcrossControlEvents. |
| `abAt1Inputs.calculation.section80Settlement.unrecognizedLosses[].settlementId` | string |  | ACTA12 adopted ITA80 settlement-year source workpapers: source-year consumed forgiven amounts, actual debt history, optional attributes, current capital dispositions, directed-person gross attributes, agreements and unrecognized losses. Existing012040/041 and Schedule18 other-property fields receive the results; no reviewed calculation total replaces the producer. Source field settlementId. |
| `abAt1Inputs.calculation.smallBusiness` | object |  | Schedule 1 calculation from reviewed eligibility, agreement and supporting facts. An active incomplete calculation does not fall back to a manual jacket deduction. |
| `abAt1Inputs.calculation.smallBusiness.adjustedAggregateInvestmentIncome` | string |  | Canonical federal T2 line 417 when produced; otherwise the reviewed amount for the required group and prior-period scope. |
| `abAt1Inputs.calculation.smallBusiness.allocationFactor` | object |  | Prescribed Canadian-only Schedule 1 factor from Schedule 2 or canonical federal Schedule 5 measures when available. Reviewed support remains available without an automatic producer. |
| `abAt1Inputs.calculation.smallBusiness.allocationFactor.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.smallBusiness.allocationFactor.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.smallBusiness.allocationFactor.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.smallBusiness.assignedBusinessLimit` | string |  | Canonical federal T2 line 515 when produced; otherwise the reviewed assignment. Alberta divides by 2.5 before applying the assignment. |
| `abAt1Inputs.calculation.smallBusiness.associated` | boolean \| null |  | Whether the filer shares its business limit with another associated CCPC in this year. |
| `abAt1Inputs.calculation.smallBusiness.associatedForCapital` | boolean \| null |  | Whether the corporation has any associates for the taxable-capital reduction, including non-CCPC associates. |
| `abAt1Inputs.calculation.smallBusiness.associatedPriorYear` | boolean \| null |  | Whether the corporation was associated with another corporation in its preceding taxation year. |
| `abAt1Inputs.calculation.smallBusiness.ccpcThroughoutYear` | boolean \| null |  | Whether the corporation was a Canadian-controlled private corporation throughout this taxation year. |
| `abAt1Inputs.calculation.smallBusiness.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit` | object |  | Reviewed first earlier-year Alberta base and association facts for ITA 125(5)(a), adopted by ACTA 22(4). |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit.amount` | string |  | Alberta base under s.125(3)/(4), before short-year proration, both grinds and assignment; at most $200,000. |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit.associatedInBothYears` | boolean \| null |  | Whether the same other CCPC was associated in both relevant taxation years; no associated-year cap is inferred from multiple year-ends alone. |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit.confirmed` | boolean |  | True after reviewing the earlier-year base and association pattern. |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit.evidenceRef` | string |  | Supporting earlier return/agreement and association reference. |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit.otherCorporationYearEnd` | string |  | Actual year end of that other CCPC in the same calendar year. |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit.preProrationConfirmed` | boolean |  | Confirms the first-year Alberta base precedes short-year proration and grinds, preventing double proration. |
| `abAt1Inputs.calculation.smallBusiness.earlierBusinessLimit.yearEnd` | string |  | First relevant earlier taxation-year end, before the current period starts and in the same calendar year. |
| `abAt1Inputs.calculation.smallBusiness.earlierYearInCalendarYear` | boolean \| null |  | Whether an earlier taxation year ended in the current calendar year. The actual first base and association facts determine the s.125(5)(a) cap before short-year proration. |
| `abAt1Inputs.calculation.smallBusiness.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.smallBusiness.filingCorporationId` | string |  | Stable filer identity in the owner-specific Alberta source-return roster; reconciled to canonical Schedule 23 filer identity when available. |
| `abAt1Inputs.calculation.smallBusiness.members` | array |  | Reviewed associated-CCPC agreement used when no canonical Schedule 23 agreement is available. A canonical agreement supplies names, stable identities, filer and exact printed percentages automatically, including reviewed continuation rows. Exactly one row identifies the filer; a held canonical agreement cannot fall back to retained percentages. |
| `abAt1Inputs.calculation.smallBusiness.members[]` | object |  |  |
| `abAt1Inputs.calculation.smallBusiness.members[].corporationId` | string |  | Stable corporation identity used to distinguish agreement members independently of row order. |
| `abAt1Inputs.calculation.smallBusiness.members[].federalAllocationPercent` | string |  | Reviewed federal Schedule 23 allocation percentage, expressed as exact decimal text from zero to 100. |
| `abAt1Inputs.calculation.smallBusiness.members[].isFiler` | boolean |  | True for the single agreement member whose Alberta return is being prepared. |
| `abAt1Inputs.calculation.smallBusiness.members[].name` | string |  | Legal name of the associated corporation in the reviewed agreement. |
| `abAt1Inputs.calculation.smallBusiness.royaltyTaxDeduction` | object |  | Reviewed royalty deduction supporting Schedule 1 lines 005/011. ACTA 20(16)-(17) expired all pools at 2013-12-31, with only the 2013/2014 straddle preserved; a positive amount cannot be used in the preparation horizon. |
| `abAt1Inputs.calculation.smallBusiness.royaltyTaxDeduction.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.smallBusiness.royaltyTaxDeduction.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.smallBusiness.royaltyTaxDeduction.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.smallBusiness.scopeReviewed` | boolean |  | Confirms CCPC eligibility, complete federal agreement, and the statutory group and period scopes of capital and passive-income inputs. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns` | array |  | At most 500 owner-specific Alberta source returns. Each has its actual taxation dates, CCPC/association facts, own Area A agreement and own filed election where applicable. The backend derives earlier pre-proration bases and election roles; no reviewed final base or role is accepted in these records. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturnsComplete` | boolean |  | Confirms every relevant actual filer year in the calendar year, associated CCPC year and operative third-corporation election is included. An active incomplete source producer cannot use a retained reviewed summary. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[]` | object |  |  |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].associatedCorporationIds` | array |  | At most 500 distinct other CCPC identities in this source return business-limit association roster. The same associated CCPC must appear in both filer years and its own year to trigger s.125(5)(a). |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].associatedCorporationIds[]` | string |  |  |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].ccpcThroughoutYear` | boolean \| null |  | Whether this source corporation was a CCPC throughout its own taxation year; the first-year limit and electing-third paths require True. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].confirmed` | boolean |  | Review of this owner-specific source record. Source changes clear this flag and the dependent current preparation reviews. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].corporationId` | string |  | Stable owner identity, shared with agreement and election-party identities. Text is bounded to 1000 characters. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].electionEvidenceRef` | string |  | Nonblank reference to this source corporation own filed prescribed election, at most1000 characters. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].electionParties` | array |  | The two distinct other corporation identities named by the electing third corporation; excludes the third corporation itself. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].electionParties[]` | string |  |  |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].evidenceRef` | string |  | Reference to the owner-specific Alberta return/agreement and period evidence, at most1000 characters. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].members` | array |  | Own Alberta Area A agreement, at most500 rows. Filer identity must identify this source corporation. Base allocations are computed from its federal percentages, rounded half-up to whole dollars; the rounded total cannot exceed the Alberta base. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].members[]` | object |  |  |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].members[].corporationId` | string |  | Stable source agreement member identity. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].members[].federalAllocationPercent` | string |  | Exact decimal-text federal agreement percentage, 0 through 100. The backend computes this source-owner Alberta base before short-year proration. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].members[].isFiler` | boolean |  | True only for this source return own corporation, not the current workpaper filer by default. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].members[].name` | string |  | Source agreement member legal name. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].thirdCorporationElectionFiled` | boolean \| null |  | Whether this source corporation filed the operative ITA 256(2)(b)(ii) election in its own return. A filed election makes its business limit nil; another named party retains its appropriate independent agreement. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].yearEnd` | string |  | Actual source corporation taxation-year end in the filer calendar year; identity/year-end pairs must be unique. |
| `abAt1Inputs.calculation.smallBusiness.sourceReturns[].yearStart` | string |  | Actual source corporation taxation-year start in complete ISO date form. |
| `abAt1Inputs.calculation.smallBusiness.taxableCapital` | string |  | Canonical current-year S33 line 690 on the statutory current-year basis, or scoped actual taxable capital from the federal SBD producer for the required own/group period. Reviewed exact capital remains available without a canonical exact producer; basis and period must match Alberta association facts. |
| `abAt1Inputs.calculation.smallBusiness.taxableCapitalAsOf` | string |  | Actual year end for a corporation-only capital basis, or December 31 of the preceding calendar year for a group basis. |
| `abAt1Inputs.calculation.smallBusiness.taxableCapitalBasis` | string |  | Preceding taxation year for standalone corporations, current taxation year when associated only previously, or the current group's last years ending in the preceding calendar year. |
| `abAt1Inputs.calculation.smallBusiness.taxableIncomeAdjustment` | object |  | Canonical exact foreign-credit gross-up, 2.5 times T2 636 plus 10/3 times the S21 column I total, when both producers are available. Otherwise the reviewed adjustment for line 009. |
| `abAt1Inputs.calculation.smallBusiness.taxableIncomeAdjustment.amount` | string |  | Exact decimal text, including an explicit zero where the reviewed fact is nil. No binary-float conversion is performed by capture. |
| `abAt1Inputs.calculation.smallBusiness.taxableIncomeAdjustment.confirmed` | boolean |  | True only after reviewing this fact against its cited evidence; clear when facts or taxation periods change. |
| `abAt1Inputs.calculation.smallBusiness.taxableIncomeAdjustment.evidenceRef` | string |  | Reference to the supporting Alberta workpaper, assessed balance or reviewed evidence. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElection` | boolean \| null |  | Whether a third-corporation election affects this business limit. Confirm role, corporation identity and actual election period; the electing filer has a nil limit, while a de-associated other corporation retains its own limit and capital-group obligations. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElectionFacts` | object |  | Reviewed ITA 256(2) election identity, actual taxation period and filer role; electing third corporation has a nil base, and the capital group remains intact. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElectionFacts.confirmed` | boolean |  | True after reviewing the prescribed election, period and filer role. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElectionFacts.corporationId` | string |  | Stable identity of the electing third corporation. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElectionFacts.evidenceRef` | string |  | Reference to the prescribed third-corporation election and association analysis. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElectionFacts.role` | string |  | electingThirdCorporation if the filer made the election, or otherCorporation if the filer is another member. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElectionFacts.yearEnd` | string |  | Actual taxation-year end of the electing third corporation. |
| `abAt1Inputs.calculation.smallBusiness.thirdCorporationElectionFacts.yearStart` | string |  | Actual taxation-year start of the electing third corporation. |
| `abAt1Inputs.calculation.specialCorporation` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.allCustomersSameRate` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. allCustomersSameRate: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.carryforwardClaim` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. carryforwardClaim: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.complete` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. complete: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.incomeBeforePatronage` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. incomeBeforePatronage: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.memberBusiness` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. memberBusiness: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.openingUndeductedMemberPatronage` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. openingUndeductedMemberPatronage: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.ordinaryContinuity` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. ordinaryContinuity: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments` | array |  | TRA11722 line 030; ACTA 17.1 and 28-35. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[]` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].allocatedOn` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. allocatedOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].amount` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. amount: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].customerYearEnd` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. customerYearEnd: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].form` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. form: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].id` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. id: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].member` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. member: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].paidOn` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. paidOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].previouslyDeducted` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. previouslyDeducted: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].prospectHeldOut` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. prospectHeldOut: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].qualifyingAgriculturalShare` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. qualifyingAgriculturalShare: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].securitiesRedemptionCash` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. securitiesRedemptionCash: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.payments[].uniformRateForClass` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. uniformRateForClass: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.securitiesRedemptionCash` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. securitiesRedemptionCash: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.cooperative.totalBusiness` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. totalBusiness: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.complete` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. complete: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments` | array |  | TRA11722 line 030; ACTA 17.1 and 28-35. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[]` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].amount` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. amount: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].deductibleInPrecedingYear` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. deductibleInPrecedingYear: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].equalRateForClass` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. equalRateForClass: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].id` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. id: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].kind` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. kind: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].memberInYear` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. memberInYear: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.payments[].paidOn` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. paidOn: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations` | array |  | TRA11722 line 030; ACTA 17.1 and 28-35. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations[]` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations[].amount` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. amount: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations[].confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations[].electedWithin120Days` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. electedWithin120Days: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations[].evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations[].payerId` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. payerId: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.creditUnion.receivedAllocations[].payerYearEnd` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. payerYearEnd: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.insurance.confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.insuranceOutsideCanada` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. insuranceOutsideCanada: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.lifeInsurance` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. lifeInsurance: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.onlyAlbertaPermanentEstablishment` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. onlyAlbertaPermanentEstablishment: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums` | array |  | TRA11722 line 030; ACTA 17.1 and 28-35. Complete identified source roster; an explicit reviewed empty roster establishes nil. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiumsComplete` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. premiumsComplete: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[]` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].annuityConsideration` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. annuityConsideration: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].attributablePe` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. attributablePe: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].cancelledPolicyRefunds` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. cancelledPolicyRefunds: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].grossPremiums` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. grossPremiums: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].id` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. id: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].includedInPartI` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. includedInPartI: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].insuranceType` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. insuranceType: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].policyholderDividendsOrRebates` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. policyholderDividendsOrRebates: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].reinsurancePaid` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. reinsurancePaid: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].riskLocation` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. riskLocation: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.premiums[].riskLocationHasPe` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. riskLocationHasPe: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.residentInCanada` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. residentInCanada: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.insurance.section138Reserve` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. section138Reserve: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.insurance.societyOrFraternal` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. societyOrFraternal: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.kind` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. kind: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.nonResident` | object |  | TRA11722 line 030; ACTA 17.1 and 28-35. Typed independent Alberta facts; incomplete or unconfirmed capture holds its computed line. |
| `abAt1Inputs.calculation.specialCorporation.nonResident.albertaPermanentEstablishment` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. albertaPermanentEstablishment: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.nonResident.canadianPermanentEstablishment` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. canadianPermanentEstablishment: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.nonResident.confirmed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. confirmed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.nonResident.evidenceRef` | string |  | TRA11722 line 030; ACTA 17.1 and 28-35. evidenceRef: bounded source fact; monetary amounts are exact decimal text and require supporting evidence. |
| `abAt1Inputs.calculation.specialCorporation.nonResident.section115IncomeOnly` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. section115IncomeOnly: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.nonResident.treatyExemptionClaimed` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. treatyExemptionClaimed: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.nonResident.treatyExemptionEstablished` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. treatyExemptionEstablished: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.prescribedLabourSponsoredVentureCapital` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. prescribedLabourSponsoredVentureCapital: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.smallBusinessEligible` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. smallBusinessEligible: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.statutoryStatusEstablished` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. statutoryStatusEstablished: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.specialCorporation.throughoutYear` | boolean |  | TRA11722 line 030; ACTA 17.1 and 28-35. throughoutYear: explicit boolean fact or review; absence stays unanswered. |
| `abAt1Inputs.calculation.transitions` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.continuity` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.continuity.balances` | array |  | Bounded identity roster with reviewed source evidence. |
| `abAt1Inputs.calculation.transitions.continuity.balancesComplete` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[]` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].albertaBalance` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].albertaCreditEntitlementConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].balanceDate` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].capitalCost` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].confirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].departureAlbertaBalance` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].evidenceRef` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].fairMarketValue` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].federalBalance` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].id` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningHistoryComplete` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].additions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].deductions` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].federalTreatmentConsistentConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].periodEnd` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].periodStart` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].section80ReceiverConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].interveningYears[].section80Reduction` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].lossUnusedConfirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].lossWouldBeDeductibleConfirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].moveLossOneYearEarlierElected` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].originYearEnd` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].parentYearEnds` | array |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].parentYearEnds[]` | string |  |  |
| `abAt1Inputs.calculation.transitions.continuity.balances[].predecessorId` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].predecessorLossYearStart` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].predecessorOriginYearEnd` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].quebecBalance` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.balances[].schedule` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.confirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.correspondingFederalCarrybackAllowed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.date` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.differentBalancesAtDeparture` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.differentQuebecBalances` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.evidenceRef` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.firstEntry` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.kind` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.lastAlbertaPeDate` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.continuity.lastAlbertaYearEnd` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors` | array |  | Bounded identity roster with reviewed source evidence. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[]` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].allLiabilitiesAcquired` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].allPropertyAcquired` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].confirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].controlRestrictionsApply` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].evidenceRef` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].id` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].lastYearEnd` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].ownershipAtLeast90EachClass` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].parentAssumesDebts` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].remainingSharesArmLength` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].resourceContinuation87_12Or88_15` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].shareholdersReceivedShares` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].subsection8711Or12` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.predecessors[].taxableCanadianCorporation` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.prescribedCrownCorporation` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.quebecAllocationFactor` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.quebecPePriorYear` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.continuity.successorTaxableCanadianCorporation` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.controlChange` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.controlChange.arrangedCurrentGiftsAbsentConfirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams` | array |  | Bounded identity roster with reviewed source evidence. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[]` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].businessContinuedForProfitThroughout` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].businessIncome` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].confirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].evidenceRef` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].id` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].lossYearBusinessForProfitThroughout` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].propertyOrServicesBeforeControl` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].similarBusinessIncome` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].similarBusinessIncomeQualifies` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.businessStreams[].yearEnd` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.confirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.date` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.deemedYearEnd` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.effectiveAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlChange.evidenceRef` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams` | array |  | Bounded identity roster with reviewed source evidence. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[]` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[].businessCarriedInLossYear` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[].businessId` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[].businessPortion` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[].confirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[].evidenceRef` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[].lossId` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlChange.lossStreams[].section1101kPortion` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.controlChange.periodEndExclusiveAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlChange.periodStartAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlChange.section2569ElectionConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlChange.timing` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.controlCohorts` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.controlCohorts[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].arrangedCurrentGiftsAbsentConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].businessContinuedForProfitThroughout` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].businessIncome` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].lossYearBusinessForProfitThroughout` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].propertyOrServicesBeforeControl` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].similarBusinessIncome` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].similarBusinessIncomeQualifies` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].businessStreams[].yearEnd` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].date` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].deemedYearEnd` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].effectiveAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[].businessCarriedInLossYear` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[].businessId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[].businessPortion` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[].lossId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].lossStreams[].section1101kPortion` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].periodEndExclusiveAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].periodStartAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].section2569ElectionConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].events[].timing` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].historyComplete` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].lastYearEnd` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].predecessorId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].researchPoolsNilAtControlConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.controlCohorts[].resourcePoolsNilAtControlConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency` | object |  | Independent Alberta statutory transition evidence; conflicting saved balances hold rather than being overwritten. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amountsComplete` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].amount` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].day` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].jacketLine` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].kind` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.amounts[].spotRateId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage` | object |  | Reviewed exact fiscal-year Bank quote roster under AR119/2008 s.7.1(2), Alberta Interpretation Act ss.9/10 and the 2026-10-17 source adjudication. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.allBusinessDaysConfirmed` | boolean |  | True only after review that the roster includes every Bank-quoted business day and every listed non-publication weekday is supported by the source. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.confirmed` | boolean |  | Preparer confirmation of this complete taxation-year Bank quote source. Changes require renewed review. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.evidenceRef` | string |  | Nonblank reviewed source reference for the complete quoted-day and non-publication roster; at most 1000 characters. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.noQuoteDays` | array |  | At most 500 unique ISO weekdays in the taxation year on which the Bank did not publish a quote, evidenced by the same source. Together with quotes these must cover every weekday without overlap. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.noQuoteDays[]` | string |  |  |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.periodEnd` | string |  | Exact ISO end of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.periodStart` | string |  | Exact ISO start of the taxation year whose Bank quotes are averaged; must match the current or assessment period. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.quotes` | array |  | Complete roster of at most 500 Bank of Canada quoted weekdays. The engine computes the exact arithmetic mean; entered annual averages are not accepted. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.quotes[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.quotes[].cadPerUnit` | string | strict | Positive exact decimal-text Bank quote, below 100000 and at most six decimal places, in CAD per elected-currency unit. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.quotes[].day` | string | strict | Unique ISO quoted weekday within this taxation year; no preceding-day fill. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.annualAverage.quotes[].series` | string | strict | bankOfCanadaNoon through 2017-04-28; bankOfCanadaDaily from 2017-05-01, including the noon/daily parallel period rule. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.boundarySpotRateId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.confirmed` | boolean |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.currency` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.effectiveAt` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.effectiveDate` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.event` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.evidenceRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.federalElectionRef` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.lastCanadianSpotRate` | string |  |  |
| `abAt1Inputs.calculation.transitions.functionalCurrency.lastCanadianSpotRateId` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.lastCanadianYearEnd` | string |  | Statutory source fact; decimal-text monetary amounts and ISO dates. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.lastFunctionalYearEnd` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalances` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalancesComplete` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalances[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalances[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalances[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalances[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalances[].schedule` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.openingBalances[].sourceAmount` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates` | array |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[]` | object |  |  |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].cadPerUnit` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].closestPrecedingQuoteConfirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].confirmed` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].day` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].evidenceRef` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].id` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].quotedDay` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.functionalCurrency.spotRates[].series` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.taxStatus` | object |  | Independent Alberta transition facts and evidence. Active packets own holds; saved openings are never overwritten. |
| `abAt1Inputs.calculation.transitions.taxStatus.benevolentOrFraternalSociety` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.confirmed` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.crownStatusChangeDate` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.taxStatus.evidenceRef` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.federal143ElectionAccepted` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.federal149Applies` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.federalTaxableIncome` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.taxStatus.federalTaxationYearEnd` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.taxStatus.federalTaxationYearStart` | string |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.taxStatus.insuranceDeductions` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.insuranceIncome` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.lifeInsuranceBusiness` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.nonResidentOwnedInvestmentCorporation` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.prescribedCorporation` | boolean |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.prescribedFederalCrownOrSubsidiary` | boolean |  | Evidenced Alberta transition source fact; decimal-text amounts, actual periods, and separate confirmations under ACTA ss.4.02/35/85 and adopted ITA ss.111/249/256. |
| `abAt1Inputs.calculation.transitions.taxStatus.taxableDays` | number |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.calculation.transitions.taxStatus.treatment` | string |  | Statutory transition source fact, with decimal-text money and ISO event/year dates. |
| `abAt1Inputs.ccpcThroughout` | object |  |  |
| `abAt1Inputs.ccpcThroughout.certificateRef` | string |  |  |
| `abAt1Inputs.ccpcThroughout.confirmed` | boolean |  |  |
| `abAt1Inputs.ccpcThroughout.evidenceRef` | string |  |  |
| `abAt1Inputs.ccpcThroughout.filedOn` | null \| string |  |  |
| `abAt1Inputs.ccpcThroughout.observedOn` | string |  |  |
| `abAt1Inputs.ccpcThroughout.value` | boolean \| null |  |  |
| `abAt1Inputs.creditClaims` | object |  |  |
| `abAt1Inputs.discretionaryAccounts` | object |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts` | array |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[]` | object |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].albertaAmount` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].albertaCurrency` | null \| string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].confirmed` | boolean |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].evidenceRef` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].federalAmount` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].federalCurrency` | null \| string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].id` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].kind` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].observedOn` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].predecessorId` | null \| string |  |  |
| `abAt1Inputs.discretionaryAccounts.accounts[].stage` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.complete` | boolean \| null |  |  |
| `abAt1Inputs.discretionaryAccounts.confirmed` | boolean |  |  |
| `abAt1Inputs.discretionaryAccounts.evidenceRef` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.federalInputFingerprint` | null \| string |  |  |
| `abAt1Inputs.discretionaryAccounts.incomeAndLossHistoryIdentical` | boolean \| null |  |  |
| `abAt1Inputs.discretionaryAccounts.observedOn` | string |  |  |
| `abAt1Inputs.discretionaryAccounts.predecessorsReviewed` | boolean \| null |  |  |
| `abAt1Inputs.discretionaryAccounts.preparationInputFingerprint` | null \| string |  | Binds the Alberta/federal account comparison to the current optional preparation inputs. Copy the current determination fingerprint when the comparison is reviewed; a changed workpaper invalidates the old review. |
| `abAt1Inputs.federalT2Filed` | object |  |  |
| `abAt1Inputs.federalT2Filed.certificateRef` | string |  |  |
| `abAt1Inputs.federalT2Filed.confirmed` | boolean |  |  |
| `abAt1Inputs.federalT2Filed.evidenceRef` | string |  |  |
| `abAt1Inputs.federalT2Filed.filedOn` | null \| string |  |  |
| `abAt1Inputs.federalT2Filed.observedOn` | string |  |  |
| `abAt1Inputs.federalT2Filed.value` | boolean \| null |  |  |
| `abAt1Inputs.incomeHistory` | object |  |  |
| `abAt1Inputs.incomeHistory.albertaTaxableIncome` | string |  |  |
| `abAt1Inputs.incomeHistory.complete` | boolean \| null |  |  |
| `abAt1Inputs.incomeHistory.confirmed` | boolean |  |  |
| `abAt1Inputs.incomeHistory.currency` | null \| string |  |  |
| `abAt1Inputs.incomeHistory.evidenceRef` | string |  |  |
| `abAt1Inputs.incomeHistory.federalRevision` | string |  |  |
| `abAt1Inputs.incomeHistory.federalTaxableIncome` | string |  |  |
| `abAt1Inputs.incomeHistory.observedOn` | string |  |  |
| `abAt1Inputs.incomeHistory.subsequentYearLossDeducted` | string |  |  |
| `abAt1Inputs.incomeHistory.subsequentYearOptionExcluded` | string |  |  |
| `abAt1Inputs.periodEnd` | string |  |  |
| `abAt1Inputs.periodStart` | string |  |  |
| `abAt1Inputs.permanentEstablishments` | object |  |  |
| `abAt1Inputs.permanentEstablishments.complete` | boolean \| null |  |  |
| `abAt1Inputs.permanentEstablishments.confirmed` | boolean |  |  |
| `abAt1Inputs.permanentEstablishments.evidenceRef` | string |  |  |
| `abAt1Inputs.permanentEstablishments.locations` | array |  |  |
| `abAt1Inputs.permanentEstablishments.locations[]` | object |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].basis` | string |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].confirmed` | boolean |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].evidenceRef` | string |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].facts` | object |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].fromDate` | string |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].id` | string |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].jurisdiction` | string |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].observedOn` | string |  |  |
| `abAt1Inputs.permanentEstablishments.locations[].toDate` | string |  |  |
| `abAt1Inputs.permanentEstablishments.observedOn` | string |  |  |
| `abAt1Inputs.refund` | object |  |  |
| `abAt1Inputs.refund.albertaPayments` | string |  |  |
| `abAt1Inputs.refund.albertaTax` | string |  |  |
| `abAt1Inputs.refund.appliedToOtherLiabilities` | string |  |  |
| `abAt1Inputs.refund.confirmed` | boolean |  |  |
| `abAt1Inputs.refund.currency` | null \| string |  |  |
| `abAt1Inputs.refund.evidenceRef` | string |  |  |
| `abAt1Inputs.refund.observedOn` | string |  |  |
| `abAt1Inputs.refund.otherCredits` | string |  |  |
| `abAt1Inputs.refund.reconciled` | boolean \| null |  |  |
| `abAt1Inputs.refund.refundEntitlement` | string |  |  |
| `abAt1Inputs.registeredCharityThroughout` | object |  |  |
| `abAt1Inputs.registeredCharityThroughout.certificateRef` | string |  |  |
| `abAt1Inputs.registeredCharityThroughout.confirmed` | boolean |  |  |
| `abAt1Inputs.registeredCharityThroughout.evidenceRef` | string |  |  |
| `abAt1Inputs.registeredCharityThroughout.filedOn` | null \| string |  |  |
| `abAt1Inputs.registeredCharityThroughout.observedOn` | string |  |  |
| `abAt1Inputs.registeredCharityThroughout.value` | boolean \| null |  |  |
| `abAt1Inputs.revenue` | object |  |  |
| `abAt1Inputs.revenue.complete` | boolean \| null |  |  |
| `abAt1Inputs.revenue.confirmed` | boolean |  |  |
| `abAt1Inputs.revenue.currency` | null \| string |  |  |
| `abAt1Inputs.revenue.evidenceRef` | string |  |  |
| `abAt1Inputs.revenue.observedOn` | string |  |  |
| `abAt1Inputs.revenue.statements` | array |  |  |
| `abAt1Inputs.revenue.statements[]` | object |  |  |
| `abAt1Inputs.revenue.statements[].accountIds` | array |  |  |
| `abAt1Inputs.revenue.statements[].accountIds[]` | string |  |  |
| `abAt1Inputs.revenue.statements[].confirmed` | boolean |  |  |
| `abAt1Inputs.revenue.statements[].evidenceRef` | string |  |  |
| `abAt1Inputs.revenue.statements[].grossRevenue` | string |  |  |
| `abAt1Inputs.revenue.statements[].id` | string |  |  |
| `abAt1Inputs.revenue.statements[].kind` | string |  |  |
| `abAt1Inputs.revenue.statements[].observedOn` | string |  |  |
| `abAt1Inputs.reversal` | object |  |  |
| `abAt1Inputs.reversal.believedExempt` | boolean \| null |  |  |
| `abAt1Inputs.reversal.confirmed` | boolean |  |  |
| `abAt1Inputs.reversal.determinedNotExemptOn` | null \| string |  |  |
| `abAt1Inputs.reversal.evidenceRef` | string |  |  |
| `abAt1Inputs.reversal.normalReassessmentExpiresOn` | null \| string |  |  |
| `abAt1Inputs.reversal.observedOn` | string |  |  |
| `abAt1Inputs.reversal.traReceivedOn` | null \| string |  |  |
| `abAt1Inputs.schemaVersion` | number |  |  |
| `abAt1Inputs.section35Exempt` | object |  |  |
| `abAt1Inputs.section35Exempt.certificateRef` | string |  |  |
| `abAt1Inputs.section35Exempt.confirmed` | boolean |  |  |
| `abAt1Inputs.section35Exempt.evidenceRef` | string |  |  |
| `abAt1Inputs.section35Exempt.filedOn` | null \| string |  |  |
| `abAt1Inputs.section35Exempt.observedOn` | string |  |  |
| `abAt1Inputs.section35Exempt.value` | boolean \| null |  |  |
| `abAt1Inputs.traOfficeCalendarReviewed` | object |  |  |
| `abAt1Inputs.traOfficeCalendarReviewed.certificateRef` | string |  |  |
| `abAt1Inputs.traOfficeCalendarReviewed.confirmed` | boolean |  |  |
| `abAt1Inputs.traOfficeCalendarReviewed.evidenceRef` | string |  |  |
| `abAt1Inputs.traOfficeCalendarReviewed.filedOn` | null \| string |  |  |
| `abAt1Inputs.traOfficeCalendarReviewed.observedOn` | string |  |  |
| `abAt1Inputs.traOfficeCalendarReviewed.value` | boolean \| null |  |  |
| `abAt1Inputs.traOfficeClosedDates` | array |  |  |
| `abAt1Inputs.traOfficeClosedDates[]` | string |  |  |
| `abilExpiredAsNcl` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts` | array |  | The trial balance: a JSON array of account objects, read by every schedule that classifies or sums accounts. Omit it when the return carries no trial balance; null is a malformed container and is refused, as is any element that is not an object. Each row's members are declared by the schedules that read them. |
| `accounts[]` | object |  | One trial-balance account row. Its members are declared by the schedules that read them; a row that is not an object is refused. |
| `accounts[].accountCode` | array \| boolean \| null \| number \| object \| string | strict |  |
| `accounts[].accountName` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].accountType` | array \| boolean \| null \| number \| object \| string |  | The account's financial-statement type. |
| `accounts[].classification` | object |  |  |
| `accounts[].classification.adjustmentType` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].classification.assumption` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].classification.deductibility` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].classification.deductibilityPercentage` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].classification.feedsSchedule` | array \| boolean \| null \| number \| object \| string |  | The downstream schedule or form that owns this account's tax amount, such as S2, S3, S8, T661, or DivC for a Division C deduction. Null means Schedule 1 alone owns it. A null s1Line together with DivC is the off-Schedule-1 routing key. No enum is published because the engine compares only against DivC and stringifies everything else. |
| `accounts[].classification.foreignSource` | array \| boolean \| null \| number \| object \| string |  | Whether the account's income is foreign source. Schedule 7 routes it accordingly: property plus foreign feeds line 2 foreign investment income, and active_business plus foreign feeds line 500, which backs foreign active business income out of the small business deduction base. |
| `accounts[].classification.incomeType` | array \| boolean \| null \| number \| object \| string |  | Income type for the Schedule 7 aggregate-investment-income and active-business split. Null reads as active business everywhere except the line 500 foreign active-business back-out, which requires an explicit active_business, so pin the value when the account is also flagged foreign source. |
| `accounts[].classification.itaReferences` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].classification.s1Line` | array \| boolean \| null \| number \| object \| string |  | The Schedule 1 line this account posts to, as the printed line code such as 121. Null means the account posts nowhere on Schedule 1; null with feedsSchedule DivC is the Division C routing key, and null with a null feedsSchedule marks the account unrouted. |
| `accounts[].classification.schedule1Relevant` | array \| boolean \| null \| number \| object \| string |  | Marks the account's concept as one to review for Schedule 1. It does not decide the posting; the classification's line and treatment do. |
| `accounts[].classification.treatment` | array \| boolean \| null \| number \| object \| string |  | The classifier's single verdict for the account. Schedule 1 uses it to decide whether the classification alone computes an amount from the balance and what fraction is deductible; conditional additionally needs deductibilityPercentage before it posts. No enum is published: the engine compares only the posting subset against literals and degrades an unlisted value to non-posting rather than rejecting it. full_adjustment, partial_adjustment, no_adjustment_conditional and requires_confirmation are refused. |
| `accounts[].currentYearBalance` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].id` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].reviewStatus` | array \| boolean \| null \| number \| object \| string |  |  |
| `accounts[].userStatus` | array \| boolean \| null \| number \| object \| string |  |  |
| `acquisitionOfControl` | array \| boolean \| null \| number \| object \| string |  |  |
| `acquisitionOfControlDate` | array \| boolean \| null \| number \| object \| string |  | The date control of the corporation was acquired, in ISO YYYY-MM-DD form, which splits the taxation year for the acquisition-of-control stub returns. Schedule 8 requires the full date and rejects a bare year. |
| `activeIneligiblePortionAllowableCapitalLosses` | array \| boolean \| null \| number \| object \| string |  | Finite non-negative active-asset share of the ineligible portion of allowable capital losses, used in Schedule 7 line 710. Send a JSON number; numeric strings are rejected. Omission lets the engine derive the share only when the total and character split determine it; an indeterminate mixed-disposition split produces a blocking finding requiring the per-disposition share. |
| `activeIneligiblePortionTaxableCapitalGains` | array \| boolean \| null \| number \| object \| string |  | Finite non-negative active-asset share of the ineligible portion of taxable capital gains, used in Schedule 7 line 705. Send a JSON number; numeric strings are rejected. Omission lets the engine derive the share only when the total and character split determine it; an indeterminate mixed-disposition split produces a blocking finding requiring the per-disposition share. |
| `agriInvestFund2Present` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation has an AgriInvest Fund 2 account. Yes requires actual withdrawal, control and previously taxed balance continuity under ITA 12(10.2), (10.4). |
| `ajePosting` | array \| boolean \| null \| number \| object \| string |  | Map of per-account adjusting-journal-entry posting metadata, keyed by trial-balance account id. The per-entry timing and effects distinguish an AJE posted after a GL workpaper from an older entry or a pure P&L reclassification, which the aggregate combinedAdjustments map alone cannot establish. A non-object value is read as absent. |
| `allocations` | array |  |  |
| `allocations[]` | object |  |  |
| `allocations[].albertaSmallBusinessFactorBasis` | array \| boolean \| null \| number \| object \| string |  | Which authority the Alberta small-business allocation factor follows. Send statute or prescribed_form. It is permitted on the Alberta row only, and absent means unanswered. |
| `allocations[].allocationSourceIds` | array \| boolean \| null \| number \| object \| string |  |  |
| `allocations[].foreignCountryDetails` | array \| null |  | Optional per-country attribution behind the printed Outside Canada allocation row. Supply all final attributed salary and revenue amounts after Part IV adjustments. They must reconcile to that row before country amounts are published. Omission retains the existing aggregate allocation. Schedule 21 still requires its own actual foreign-source income amounts; provincial allocated taxable income is not its numerator. |
| `allocations[].foreignCountryDetails[]` | object |  | One foreign country permanent-establishment attribution row. Enter a non-Canadian two-letter country code and explicit final amounts. Special-industry allocations additionally need evidenced country allocatedTaxableIncome amounts summing to the existing Outside Canada aggregate. |
| `allocations[].foreignCountryDetails[].allocatedTaxableIncome` | null \| number \| string |  | Reviewed country allocation of the existing Outside Canada taxable-income amount for special-industry formulas. Required with supporting evidence on that path and summed exactly to the aggregate. It cannot override the ordinary Regulation 402 country calculation. |
| `allocations[].foreignCountryDetails[].countryCode` | array \| boolean \| null \| number \| object \| string |  | ISO 3166-1 alpha-2 country code other than CA. Each country must appear once in this collection. |
| `allocations[].foreignCountryDetails[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Reference supporting the country attribution and any special-industry allocation. Required when a special formula uses a reviewed country allocatedTaxableIncome split. |
| `allocations[].foreignCountryDetails[].grossRevenue` | null \| number \| string |  | Final gross revenue attributed to this foreign country after the applicable Part IV adjustments, in the return currency. Enter explicit zero when nil; country totals must match the final Outside Canada amount. |
| `allocations[].foreignCountryDetails[].revenueReclass` | null \| number \| string |  | Signed final revenue attribution movement for this foreign country, in the return currency. Enter explicit zero when nil; total country movements must match the final Outside Canada movement. |
| `allocations[].foreignCountryDetails[].totalSalariesWages` | null \| number \| string |  | Final salaries and wages attributed to this foreign country after the applicable Part IV adjustments, in the return currency. Enter explicit zero when nil; the country totals must match the final Outside Canada amount. |
| `allocations[].grossRevenue` | null \| number \| string |  |  |
| `allocations[].hasPermanentEstablishment` | boolean \| null |  | Reg 400 permanent establishment — TRI-STATE. `null` means the question is UNANSWERED, which is neither a yes nor a no: the row takes no allocation (Reg 402(2) denies one to a province without a permanent establishment), and when it carries gross revenue or salaries the engine raises the error-severity `schedule5_permanent_establishment_unanswered` hold instead of reading the blank as "no". |
| `allocations[].jurisdiction` | array \| boolean \| null \| number \| object \| string | strict |  |
| `allocations[].offshoreAreaConfirmed` | boolean \| null |  |  |
| `allocations[].outsourcedServiceFees` | null \| number \| string |  |  |
| `allocations[].peBasis` | array \| boolean \| null \| number \| object \| string |  |  |
| `allocations[].peEvidenceReference` | array \| boolean \| null \| number \| object \| string |  |  |
| `allocations[].physicalLocation` | array \| boolean \| null \| number \| object \| string |  |  |
| `allocations[].reg402_1DeemedSalary` | null \| number \| string |  |  |
| `allocations[].reg402_1SalaryDeduction` | null \| number \| string |  |  |
| `allocations[].reg402_4_1ThrowbackRevenue` | null \| number \| string |  |  |
| `allocations[].revenueReclass` | null \| number \| string |  |  |
| `allocations[].rowId` | array \| boolean \| null \| number \| object \| string |  |  |
| `allocations[].totalSalariesWages` | null \| number \| string |  |  |
| `allocations[].unmodelledProvincialCreditsClaimed` | array \| boolean \| null \| number \| object \| string |  |  |
| `amalgamationTransfers` | array \| boolean \| null \| number \| object \| string |  | Schedule 2 donation-pool transfers on amalgamation or wind-up, keyed by gift category with lists of predecessor origin-year rows and amounts available. The engine checks origin years and predecessor continuity; omission supplies no transferred rows. |
| `aocAdventureTradeInventory` | array \| null |  | Entered acquisition-of-control property or reserve records; an empty list states there are no records. |
| `aocAdventureTradeInventory[]` | object |  | One entered property or reserve record. |
| `aocAdventureTradeInventory[].cost` | number \| string |  |  |
| `aocAdventureTradeInventory[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocAdventureTradeInventory[].fmv` | number \| string |  |  |
| `aocBecomesOrCeasesExemptAtEvent` | boolean \| null |  | Whether the taxpayer becomes or ceases to be exempt from Part I tax at the loss restriction event. ITA s.111(5.1) is expressly subject to s.111(5.5)(a), which suppresses the depreciable-property write-down in that case, so the answer decides whether the write-down runs at all. Boolean is the canonical form; an unanswered fact blocks rather than assuming either branch. |
| `aocDesignatedProperty111_4_e` | array \| null |  | Entered acquisition-of-control property or reserve records; an empty list states there are no records. |
| `aocDesignatedProperty111_4_e[]` | object |  | One entered property or reserve record. |
| `aocDesignatedProperty111_4_e[].acb` | number \| string |  |  |
| `aocDesignatedProperty111_4_e[].dateAcquired` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].designated_proceeds` | number \| string |  | The amount designated under ITA 111(4)(e) for the property; the deemed proceeds are the lesser of its fair market value and the greater of its adjusted cost base and this amount. A row stating designatedProceeds is refused naming this cell. |
| `aocDesignatedProperty111_4_e[].fmv` | number \| string |  |  |
| `aocDesignatedProperty111_4_e[].foreignCurrency` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].isActiveAsset` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].isForeignAffiliateShare` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].isForeignSource` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].isListedPersonalProperty` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].paragraph40_2_fApplies` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].propertyType` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].subsection111_5_1WouldApply` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].subsection46_4Applies` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDesignatedProperty111_4_e[].subsection46_4GainLossWithoutDecrease` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDoubtfulDebtReserves111_5_3` | array \| null |  | Entered acquisition-of-control property or reserve records; an empty list states there are no records. |
| `aocDoubtfulDebtReserves111_5_3[]` | object |  | One entered property or reserve record. |
| `aocDoubtfulDebtReserves111_5_3[].debt_amount` | number \| string |  |  |
| `aocDoubtfulDebtReserves111_5_3[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocDoubtfulDebtReserves111_5_3[].doubtful_debt_reserve_20_1_l` | number \| string |  |  |
| `aocMainReasonIsToCauseProvisionToApply` | boolean \| null |  | Whether the main reason for the loss restriction event was to cause ITA paragraph 111(4)(d) or one of subsections 111(5.1) to (5.3) to apply. A Yes engages s.111(5.5)(b), which disapplies the targeted provision and paragraph 111(4)(e); answer aocMainReasonTargetedProvision as well so the engine knows which chain to suppress. This is a legal conclusion the engine cannot derive, so an unanswered fact holds the pre-event write-down rather than filing it either way. Boolean is the canonical form. |
| `aocMainReasonTargetedProvision` | array \| boolean \| null \| number \| object \| string |  | Which provision the s.111(5.5)(b) main reason targeted. The subsection names a closed set — paragraph 111(4)(d) and subsections 111(5.1) to (5.3) — and disapplies exactly one of them plus paragraph 111(4)(e), never their union, so the answer selects the chain that is suppressed. Required whenever aocMainReasonIsToCauseProvisionToApply is Yes; any other string is refused rather than defaulted, because suppressing the wrong provision suppresses the wrong write-down. |
| `aocNondepreciableCapitalProperties` | array \| null |  | Entered acquisition-of-control property or reserve records; an empty list states there are no records. |
| `aocNondepreciableCapitalProperties[]` | object |  | One entered property or reserve record. |
| `aocNondepreciableCapitalProperties[].acb` | number \| string |  |  |
| `aocNondepreciableCapitalProperties[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocNondepreciableCapitalProperties[].fmv` | number \| string |  |  |
| `aocNondepreciableCapitalProperties[].isActiveAsset` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocNondepreciableCapitalProperties[].isForeignSource` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocNondepreciableCapitalProperties[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPreStubFiledReturnId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the filed pre-acquisition-of-control stub return whose authenticated basis envelope this return builds on. The acquisition-of-control node requires it to equal the envelope's filedReturnId and refuses a basis whose return id differs. |
| `aocPropertyDesignations` | array \| null |  | Per-property ITA paragraph 111(4)(e) acquisition-of-control designations for depreciable property. Each row identifies the CCA class and property and supplies its fair market value, capital cost, and designated amount; omit the array only when no such designation is made. |
| `aocPropertyDesignations[]` | object |  | Per-property ITA paragraph 111(4)(e) acquisition-of-control designations for depreciable property. Each row identifies the CCA class and property and supplies its fair market value, capital cost, and designated amount; omit the array only when no such designation is made. |
| `aocPropertyDesignations[].capitalCost` | number \| string |  |  |
| `aocPropertyDesignations[].ccaClass` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].dateAcquired` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].designatedAmount` | number \| string |  | The amount designated under ITA 111(4)(e) for the depreciable property, read with capitalCost as its cost. A row stating designated_proceeds, designatedProceeds or acb is refused naming designatedAmount or capitalCost. |
| `aocPropertyDesignations[].fmv` | number \| string |  |  |
| `aocPropertyDesignations[].foreignCurrency` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].isActiveAsset` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].isForeignAffiliateShare` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].isForeignSource` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].isListedPersonalProperty` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].paragraph40_2_fApplies` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].propertyType` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].subsection111_5_1WouldApply` | boolean |  |  |
| `aocPropertyDesignations[].subsection46_4Applies` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocPropertyDesignations[].subsection46_4GainLossWithoutDecrease` | array \| boolean \| null \| number \| object \| string |  |  |
| `aocResult` | array \| boolean \| null \| number \| object \| string |  | The acquisition-of-control sidecar, an object carrying at least acquisitionOfControlDate, which turns on the ITA s.37(6.1) same-or-similar-business cap on the pre-acquisition segment of the SR&ED pool. |
| `applicableRegulation` | array \| boolean \| null \| number \| object \| string |  | The preparer's determination of the Part IV allocation regulation that governs Schedule 5 box 100: '402', one of the special-industry regulations 403 to 411 by number, '413', or 'divided_business' for Reg 412 treatment. An unrecognised value raises schedule5_applicable_regulation_invalid and leaves box 100 blank; omitted, the engine derives the regulation from the corporation's identity and industry signals. |
| `assetData` | array |  | Current-year property facts and additions for Schedule 8. Schedule 6 reads the same rows, and each cohort of a row, to link a land disposition to its building for ITA 13(21.1) by propertyGroupId. |
| `assetData[]` | object |  | Current-year property facts and additions for Schedule 8. |
| `assetData[]._rowKey` | array \| boolean \| null \| number \| object \| string |  |  |
| `assetData[].account` | array \| boolean \| null \| number \| object \| string |  | General ledger account the property is booked to, as text. It is one of the row's own words: where those words name inventory, research, art or a yacht, camp, lodge or golf property, a blank answer to the matching Reg 1102(1) exclusion question holds the class; otherwise the blank is treated as not excluded, with a disclosed note. On a Class 10 addition above the Reg 7307(1) base, words that name no passenger vehicle answer a blank isPassengerVehicle as false. |
| `assetData[].accountDescription` | array \| boolean \| null \| number \| object \| string |  | Description of the general ledger account the property is booked to, as text. Like account and accountName, it is part of the row's words that decide whether a Reg 1102(1) exclusion question (inventory, research, art, recreational property) or the Class 10 passenger-vehicle question must be answered or can default. |
| `assetData[].accountName` | array \| boolean \| null \| number \| object \| string |  | Name of the general ledger account the property is booked to, as text. It is part of the row's words: where they name inventory, research, art or recreational property, a blank Reg 1102(1) exclusion answer holds the class, and otherwise it defaults to not excluded with a disclosed note. On a Class 10 addition above the Reg 7307(1) base, a blank isPassengerVehicle is read as false when the words name no passenger vehicle and holds the class when they do. |
| `assetData[].acquiredForIncomePurpose` | boolean \| null \| string |  | Whether the property was acquired to gain or produce income, as true, false or null. False holds the class, since Reg 1102(1)(c) excludes the property from every class. On Schedule 8, null is treated as true with a disclosed note, except where reg1101IncomeSourceType is Not applicable: there null holds the class, and so does true (an income-producing property marked Not applicable) unless another prescribed separate class keys the row's pool. On a Schedule IV to VI resource row anything but true holds the class. Schedule 31 reads this answer separately on the linked fixed-assets row: only true counts the property as depreciable there, so a blank or false answer excludes the linked Part 4 row from the Atlantic investment tax credit. |
| `assetData[].acquiredFromNonArmsLengthPerson` | boolean \| null \| string |  | Whether this addition came from a person or partnership not dealing at arm's length with the corporation, as true, false or null. On a row with additions, null holds the class unless T2 boxes 162 and 171 are both No; then a blank defaults to false with a disclosed note. Off a Schedule IV to VI resource row, true is refused without an answer to reg1100_2_2NonArmsLengthContinuityApplies. Off a passenger vehicle, true applies ITA 13(7)(e): a blank propertyId or transferorCapitalCostImmediatelyBefore holds the class, and once the transferor's cost is stated the engine replaces the addition's capital cost under 13(7)(e)(i), (ii) or (iii). Where the stated cost is above the transferor's cost, it also needs the transferor's proceeds and resident status, and for a resident transferor the section 110.6 amounts; each holds the class when blank. On a Schedule IV to VI resource row, true applies ITA 13(7)(e) without asking reg1100_2_2NonArmsLengthContinuityApplies, and the transferor facts hold the pool when blank as above; a blank propertyId is refused there instead of held, since every resource row needs one. It is not applied to a Schedule IV or VI property answered as timber resource property. On a passenger vehicle it is the default answer to isPassengerVehicleAcquiredNonArmsLength for ITA 13(7)(h), and the class is held when the two answers disagree. |
| `assetData[].acquiredInParagraph55_3_bReorganization` | boolean \| null \| string |  | Whether the property was acquired in a reorganization to which ITA paragraph 55(3)(b) applies, as true, false or null (unanswered). On a row with additions other than a Schedule IV to VI resource row, true requires an explicit reg1100_2_2NonArmsLengthContinuityApplies answer, or the request is refused; a true answer to that question keeps the addition out of the Reg 1100(2) half-year reduction (Reg 1100(2.2)). |
| `assetData[].acquisitionDate` | array \| boolean \| null \| number \| object \| string |  | Date the property was acquired, as YYYY-MM-DD. On a row with additions it is required and may not fall after availableForUseDate, or the request is refused. On a Schedule IV to VI resource row a missing date holds the class instead. In a Schedule IV pool claiming AIIP the date is one fact for the pool, and dates that differ across its rows are refused. It selects the Reg 7307 vehicle cost limits, the AIIP/RIIP and immediate-expensing windows and the class's Schedule II acquisition window. A date outside that window is refused. For Class 1, 3 and 6 the window applies only to a building, and a building outside it holds the class instead of being refused; for Class 1 or 6 a Yes to the class's own eligibility question lets the building through. When the date is more than 357 days before the taxation year starts, the property is not AIIP or RIIP and availableForUseByRolling13_27_bOr13_28_c is blank, filing readiness is held. Schedule 31 also reads the date from the linked fixed-assets row. |
| `assetData[].additionCohorts` | array \| null |  | Optional list splitting this row's additions into same-treatment slices, each with a positive amount and its own dates and answers (for example AIIP/RIIP and DIEP). The amounts must sum exactly to additions, which must be positive. Each cohort's values pass the same checks as a row's. A single cohort inherits the row's facts where it is blank. With several, each cohort is its own property and states its own facts: a blank cohort takes only ccaClass and assetClass from the row, and the row is refused if it states any other fact a cohort takes as its own property's (every cohort input but amount, cohortId and description) that a cohort leaves blank or states differently; the refusal names each. The row's own bookkeeping facts are not compared: its class and label words, propertyId and its provisional-identity answers, additions, openingCost, closingCost and assetCount, ccaClaimedOverride, s247CapitalCost, incorporationCostExcessAddition and the receiving-class operands of the automatic paragraph (k) and Class 41 splits. The request is also refused on a multi-cohort row that carries disposition amounts, on a Class 10.1 row with more than one cohort (Reg 1101(1af)), on a cohort carrying leaseTermYears or firstRenewalYears, on a row with more than one cohort that needs the automatic Class 3 or 6 paragraph (k) split or the Reg 1102(14.11) or (14.12) Class 41 split, on a split role or another class stated on the single cohort of a row that split divides, and when a current-year s.247(2.1) capital-cost adjustment to the row names no cohort. |
| `assetData[].additionCohorts[]` | object |  |  |
| `assetData[].additionCohorts[]._rowKey` | array \| boolean \| null \| number \| object \| string |  |  |
| `assetData[].additionCohorts[].account` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].account, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. |
| `assetData[].additionCohorts[].accountDescription` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].accountDescription, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. |
| `assetData[].additionCohorts[].accountName` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].accountName, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. |
| `assetData[].additionCohorts[].acquiredForIncomePurpose` | boolean \| null \| string |  | The cohort's own assetData\[\].acquiredForIncomePurpose, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].acquiredFromNonArmsLengthPerson` | boolean \| null \| string |  | The cohort's own assetData\[\].acquiredFromNonArmsLengthPerson answer for its slice of the row's additions; see that field. When T2 boxes 162 and 171 are both No, a blank on any cohort is set to false. Otherwise one cohort takes a blank from the row, several cohorts leave it blank, and a cohort left unanswered holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].acquiredInParagraph55_3_bReorganization` | boolean \| null \| string |  | The cohort's own assetData\[\].acquiredInParagraph55_3_bReorganization, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].acquisitionDate` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].acquisitionDate for its slice of the row's additions, as YYYY-MM-DD; see that field. With one cohort a blank takes the row's date. With several cohorts a blank stays blank and the request is refused, except in a Schedule IV-VI resource pool, where the missing date holds the class. The cohort's own date picks its Reg 7307 cost limit, AIIP/RIIP window and Schedule II acquisition window. In a Schedule IV pool claiming AIIP the date is one fact for the pool instead: the dates of its property units must agree (refused otherwise), a single cohort's date standing in for its row's. Schedule 31 reads only the row's date, never a cohort's. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].additions` | null \| number \| string |  | Not used on a cohort. The cohort's slice of the row's additions is its amount, which replaces any additions value the cohort carries; the cohorts' amounts must add up exactly to the row's own additions. |
| `assetData[].additionCohorts[].affiliatedPersonStopLossApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].affiliatedPersonStopLossApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row, in the class computation and in the coverage packet's stop-loss evidence; see that field. A cohort's Yes therefore requires the stop-loss review and conflicts with a coverage answer of No, as a row's Yes does. With one cohort a blank takes the row's value; with several cohorts the row's value is not used for the cohort, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].affiliatedStopLossDeemedProceeds` | null \| number \| string |  | The cohort's own assetData\[\].affiliatedStopLossDeemedProceeds, read on this cohort's property unit (its slice of the row's additions) the same way as on a row, in the class computation and in the coverage packet's stop-loss evidence flag; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may not carry disposition amounts itself (refused), but each cohort may state its own. |
| `assetData[].additionCohorts[].affiliatedStopLossDeemedPropertyOutstanding` | boolean \| null \| string |  | The cohort's own assetData\[\].affiliatedStopLossDeemedPropertyOutstanding, read on this cohort's property unit (its slice of the row's additions) in the class computation and in the coverage packet's stop-loss evidence, where a cohort's Yes conflicts with a coverage answer of No as a row's does; see that field. One thing differs from a row: on a row with several cohorts, a suspension carried in from last year is not passed to the cohorts, so a blank cohort does not hold the pool the way a blank row does. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].affiliatedStopLossDeemedPropertyReleaseClause` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].affiliatedStopLossDeemedPropertyReleaseClause, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. One exception: on a row with several cohorts, a suspension carried in from last year is not passed to the cohorts. A clause named on such a cohort therefore releases nothing and holds the class, unless the cohort itself answers affiliatedPersonStopLossApplies Yes, while the same clause on a row releases the carried property. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].aggregateCostOfAdditionsAndAlterationsToBuilding` | null \| number \| string |  | The cohort's own assetData\[\].aggregateCostOfAdditionsAndAlterationsToBuilding. On a cohort it feeds only the Class 3 or 6 paragraph (k) ceiling check, which holds the class when the value is blank or above the ceiling. Moving the excess to Class 3 or 1 runs only from the row's own value, and a row needing that split cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].amount` | number \| string |  | This cohort's slice of the row's additions, as a positive amount. Required on every cohort; the cohorts' amounts must add up exactly to the row's additions. |
| `assetData[].additionCohorts[].anyServedEvChargingStationAtLeast90Kw` | boolean \| null \| string |  | The cohort's own assetData\[\].anyServedEvChargingStationAtLeast90Kw, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].aocCapitalCostOfClass` | null \| number \| string |  | The cohort's own assetData\[\].aocCapitalCostOfClass, an acquisition-of-control amount for the cohort's CCA pool (its class and any Reg 1101 separate class). Every value stated on the pool's rows and cohorts must agree exactly (refused otherwise), and the one value applies to that pool. With one cohort a blank takes the row's value; with several the row's own value is not used at all, so state it on a cohort or another row of the pool. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].aocDesignatedProceeds` | null \| number \| string |  | The cohort's own assetData\[\].aocDesignatedProceeds, an acquisition-of-control amount for the cohort's CCA pool (its class and any Reg 1101 separate class). Every value stated on the pool's rows and cohorts must agree exactly (refused otherwise), and the one value applies to that pool. With one cohort a blank takes the row's value; with several the row's own value is not used at all, so state it on a cohort or another row of the pool. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].aocFmvOfClass` | null \| number \| string |  | The cohort's own assetData\[\].aocFmvOfClass, an acquisition-of-control amount for the cohort's CCA pool (its class and any Reg 1101 separate class). Every value stated on the pool's rows and cohorts must agree exactly (refused otherwise), and the one value applies to that pool. With one cohort a blank takes the row's value; with several the row's own value is not used at all, so state it on a cohort or another row of the pool. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].assetClass` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].assetClass, for its slice of the row's additions; see that cell. A blank takes the row's, however many cohorts the row has. |
| `assetData[].additionCohorts[].assetCount` | null \| number |  | The cohort's own assetData\[\].assetCount, as a non-negative integer: its properties left at year end, read on its property unit by the class computation and the Class 10.1, 1-NRB and 1-MP property count. In an ordinary pool each cohort's count adds to the class total and a count above 1 holds the class; in a resource pool all stated counts must agree. With one cohort a blank takes the row's count. With several, a blank counts one property when the cohort states a positive closingCost or its own disposition amounts do not cover its amount, and none when it states a closingCost of 0 or disposition amounts that cover its amount. As on a row, 0 is refused with a positive closingCost or with an amount its disposition amounts do not cover. |
| `assetData[].additionCohorts[].assetDescription` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].assetDescription, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. |
| `assetData[].additionCohorts[].availableForUseByRolling13_27_bOr13_28_c` | boolean \| null \| string |  | The cohort's own assetData\[\].availableForUseByRolling13_27_bOr13_28_c, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].availableForUseDate` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].availableForUseDate for its slice of the row's additions, as YYYY-MM-DD; see that field. With one cohort a blank takes the row's date. With several a blank is refused, except in a Schedule IV-VI resource pool, where it holds the class. The date must fall in the taxation year and not before the cohort's acquisitionDate (refused otherwise). In a Schedule IV pool claiming AIIP the dates of its property units must agree (refused otherwise): a single cohort's date stands in for its row's, and a row with several cohorts is no unit of its own. The available-for-use workpaper's s.13(29) checks read the cohort's date; Schedule 31 reads only the row's. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].bookCostRemovalSigned` | null \| number \| string |  | The cohort's own assetData\[\].bookCostRemovalSigned, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. As on a row, a positive value is refused. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may not carry disposition amounts itself (refused), but each cohort may state its own. |
| `assetData[].additionCohorts[].buildingNotUsedOrAcquiredForUseByAnyPersonBeforeMarch19_2007` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].buildingNotUsedOrAcquiredForUseByAnyPersonBeforeMarch19_2007. In the class computation of a Class 1-NRB or 1-MP pool it is one answer for the pool: the first non-blank value across the pool's rows and cohorts is used, a No holds the class, and a blank holds it when the pool has additions. With one cohort a blank takes the row's answer there; with several the row's answer is not used. The coverage review of the 1-NRB or 1-MP election reads it pool by pool, taking each pool's first non-blank answer across its property units (rows and cohorts; a row with several cohorts is no unit of its own): a No drops the review for that pool only, so it is asked while any such pool's answer is not No. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].businessCeased` | boolean \| null \| string |  | The cohort's own assetData\[\].businessCeased. It is read only for a Class 14.1 pool left with no property: every answered row and cohort of the pool must agree (refused otherwise), and any row or cohort left blank holds filing readiness. With one cohort a blank takes the row's answer; with several the row's answer is not used, so each cohort needs its own. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].businessProvidesPropertyForHireOrReward` | boolean \| null \| string |  | The cohort's own assetData\[\].businessProvidesPropertyForHireOrReward, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].canadianFilmProductionIncomeBeforeCca` | null \| number \| string |  | The cohort's own assetData\[\].canadianFilmProductionIncomeBeforeCca, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. Each film cohort's amount is added to the class's income before CCA, and it is refused on a cohort answering isReg1101_5k_1CanadianFilmProduction No. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].canadianVesselCapitalCost` | null \| number \| string |  | The cohort's own assetData\[\].canadianVesselCapitalCost, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. Each qualifying vessel cohort is its own Reg 1101(2a) class. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].capitalCostOfBuildingAndAdditionsInClasses3_6_20` | null \| number \| string |  | The cohort's own assetData\[\].capitalCostOfBuildingAndAdditionsInClasses3_6_20. On a cohort it feeds only the Class 3 paragraph (k) 25 per cent ceiling check, which holds the class when it is blank for a cohort that check covers. Moving the excess to Class 1 runs only from the row's own value, and a row needing that split cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].capitalCostRolloverProvision` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].capitalCostRolloverProvision, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].cappedVehicleCount` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].cappedVehicleCount, as a whole number. It counts this cohort's vehicles only where a Class 54 zero-emission passenger vehicle cost exceeds the per-vehicle prescribed amount. With one cohort a blank takes the row's count, then the assetCount, then 1. With several cohorts the row's count is not used and a blank holds the class; a count above 1 also holds it. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].ccaClaimedOverride` | array \| boolean \| null \| number \| object \| string |  | Not used on a cohort. The engine reads ccaClaimedOverride only on the parent rows, totalled by the row's ccaClass into that class's claim override; a value on a cohort is ignored, with one cohort or several. |
| `assetData[].additionCohorts[].ccaClass` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].ccaClass, for its slice of the row's additions; see that field. A stated class moves the cohort's slice into that class for the CCA computation and the checks that read its unit; a blank takes the row's class, however many cohorts the row has. The coverage reviews keyed by class (Class 12 half-year, Class 1 building, Class 1-NRB and 1-MP, Class 14.1 and specified energy) read each property unit's class, the cohort's included. On the single cohort of a row the automatic paragraph (k) or Class 41 split divides, a class other than the row's is refused, since the split assigns each portion its class. The one-cohort limit for Class 10.1 (Reg 1101(1af)), the automatic Class 3 or 6 paragraph (k) split and the row's ccaClaimedOverride total use the row's class. |
| `assetData[].additionCohorts[].changeOfUseEventId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].changeOfUseEventId, read on this cohort's property unit (its slice of the row's additions); see that field. On the unit it keeps a derived ITA 13(7)(d) change-of-use event from attaching to the cohort, as on a row. The batch check that refuses a manual entry repeating a workpaper-derived event ID reads cohorts as well as rows, so a cohort repeating that ID is refused. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].claimsClass431ElectricalStorage` | boolean \| null \| string |  | The cohort's own assetData\[\].claimsClass431ElectricalStorage, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].claimsEligibleTransmissionEquipment` | boolean \| null \| string |  | The cohort's own assetData\[\].claimsEligibleTransmissionEquipment, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].class12CostPerItem` | null \| number \| string |  | The cohort's own assetData\[\].class12CostPerItem, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class12ParagraphCEHProperty` | boolean \| null \| string |  | The cohort's own assetData\[\].class12ParagraphCEHProperty, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class12ParagraphExcludedFromHalfYear` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].class12ParagraphExcludedFromHalfYear, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class15AcquiredForCuttingAndRemovingMerchantableTimber` | boolean \| null \| string |  | The cohort's own assetData\[\].class15AcquiredForCuttingAndRemovingMerchantableTimber. Only a Schedule IV (Class 15) resource pool reads it; Schedule V and VI pools do not. There it is one fact for the pool: every value stated on the pool's rows and cohorts must agree (refused otherwise), and that one value answers for the pool. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class15ElectionToExclude` | boolean \| null \| string |  | The cohort's own assetData\[\].class15ElectionToExclude. Only a Schedule IV (Class 15) resource pool reads it; Schedule V and VI pools do not. There it is one fact for the pool: every value stated on the pool's rows and cohorts must agree (refused otherwise), and that one value answers for the pool. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class15NoFurtherUseAfterTimberRemoved` | boolean \| null \| string |  | The cohort's own assetData\[\].class15NoFurtherUseAfterTimberRemoved. Only a Schedule IV (Class 15) resource pool reads it; Schedule V and VI pools do not. There it is one fact for the pool: every value stated on the pool's rows and cohorts must agree (refused otherwise), and that one value answers for the pool. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class1Pre1988ScheduleIIEligibilityConfirmed` | boolean \| null \| string |  | The cohort's own assetData\[\].class1Pre1988ScheduleIIEligibilityConfirmed, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class29PriorYearAvailableForUseCapitalCost` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].class29PriorYearAvailableForUseCapitalCost. It is one fact for the Class 29 pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class29PriorYearDesignatedCapitalCost` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].class29PriorYearDesignatedCapitalCost. It is one fact for the Class 29 pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class29PriorYearDesignatedSpecifiedTransactionCapitalCost` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].class29PriorYearDesignatedSpecifiedTransactionCapitalCost. It is one fact for the Class 29 pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class3Or6OverflowClassOpeningUcc` | null \| number \| string |  | Not used on a cohort beyond the value checks every cohort passes: a value that is not a non-negative amount is refused, as on a row. Only the automatic Class 3 or 6 paragraph (k) split reads it, from the row's own value; a valid value on a cohort is ignored, and a row that needs the split cannot carry more than one cohort (refused). |
| `assetData[].additionCohorts[].class3Or6OverflowClassPriorCcaHistoryConfirmed` | boolean \| null \| string |  | Not used on a cohort beyond the value checks every cohort passes: a value other than true, false, Yes or No is refused, as on a row. Only the automatic Class 3 or 6 paragraph (k) split reads it, from the row's own value; a valid value on a cohort is ignored, and a row that needs the split cannot carry more than one cohort (refused). |
| `assetData[].additionCohorts[].class3Or6ParagraphKSplitRole` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].class3Or6ParagraphKSplitRole, as source or overflow; as on a row, any other text is refused in any class. It takes effect only on a Class 3 or 6 cohort holding property that answers class3Or6PostCapAdditionsAndAlterationsApply Yes, where source or overflow exempts it from the paragraph (k) ceiling check. Only the row's own value keeps the row out of the automatic split, and on the single cohort of a row that split divides any role is refused, since the split assigns each portion its role. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class3Or6PostCapAdditionsAndAlterationsApply` | boolean \| null \| string |  | The cohort's own assetData\[\].class3Or6PostCapAdditionsAndAlterationsApply. On a Class 3 or 6 cohort holding property it is asked per property: a blank holds the class, and Yes applies the paragraph (k) ceiling check to the cohort. The automatic split of the excess reads only the row's own value, and a row needing it cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class3Pre1990TransitionalBuildingConditionMet` | boolean \| null \| string |  | The cohort's own assetData\[\].class3Pre1990TransitionalBuildingConditionMet, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class431Subparagraph` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].class431Subparagraph, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].class43AssetDetails` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].class43AssetDetails rows. In Class 43.1 or 43.2 each cohort's rows join the class's lines 300 to 303 with every other row's and cohort's, and the class's percentages must total 100 or filing readiness is held. With one cohort a blank takes the row's rows; with several the row's rows are not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class44CapitalCostDeterminedByUse` | boolean \| null \| string |  | The cohort's own assetData\[\].class44CapitalCostDeterminedByUse, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class44CumulativeUseDeterminedCapitalCost` | null \| number \| string |  | The cohort's own assetData\[\].class44CumulativeUseDeterminedCapitalCost. It is one fact for the Class 44 pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class44UseDeterminedCapitalCostInYear` | null \| number \| string |  | The cohort's own assetData\[\].class44UseDeterminedCapitalCostInYear. It is one fact for the Class 44 pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].class6ParagraphKClass1OpeningUcc` | null \| number \| string |  | Not used on a cohort beyond the value checks every cohort passes: a value that is not a non-negative amount is refused, as on a row. Only the automatic Class 3 or 6 paragraph (k) split reads it, from the row's own value; a valid value on a cohort is ignored, and a row that needs the split cannot carry more than one cohort (refused). |
| `assetData[].additionCohorts[].class6ParagraphKClass1PriorCcaHistoryConfirmed` | boolean \| null \| string |  | Not used on a cohort beyond the value checks every cohort passes: a value other than true, false, Yes or No is refused, as on a row. Only the automatic Class 3 or 6 paragraph (k) split reads it, from the row's own value; a valid value on a cohort is ignored, and a row that needs the split cannot carry more than one cohort (refused). |
| `assetData[].additionCohorts[].class6Post1978BuildingEligibilityMet` | boolean \| null \| string |  | The cohort's own assetData\[\].class6Post1978BuildingEligibilityMet, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].closingCost` | null \| number \| string |  | The cohort's own assetData\[\].closingCost, read on this cohort's property unit (its slice of the row's additions) in the class computation and the Class 10.1, 1-NRB and 1-MP property count; see that field. As on a row, a positive closingCost with an assetCount of 0 is refused. With one cohort a blank takes the row's value; with several cohorts the row's value is not used for the cohorts. |
| `assetData[].additionCohorts[].cohortId` | array \| boolean \| null \| number \| object \| string |  | Identifier of this cohort, as text. The CCA computation does not read it. A current-year ITA 247(2.1) capital-cost adjustment to a row that has cohorts must name an acquisition cohort matching exactly one cohortId on that row, or the request is refused. An adjustment that names a cohort on a row with no cohorts is also refused. The cohort's amount and its acquisitionDate (the row's when blank) must match the adjustment's stated cost and date, or the request is refused. The adjustment then sets that cohort's amount to the adjusted cost and moves the row's additions by the same difference. |
| `assetData[].additionCohorts[].costIncurredTaxationYearEndDate` | array \| boolean \| null \| number \| object \| string |  | Not used on a cohort. The engine reads it only for a continuing Class 13 cost item stated by propertyCapitalCost, which a cohort cannot carry because every cohort is a current-year addition. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].costIncurredTaxationYearStartDate` | array \| boolean \| null \| number \| object \| string |  | Not used on a cohort. The engine reads it only for a continuing Class 13 cost item stated by propertyCapitalCost, which a cohort cannot carry because every cohort is a current-year addition. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].costIncurredTermEndDate` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].costIncurredTermEndDate, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].deemedAcquiredUnder16_1_1_bInPrecedingYear` | boolean \| null \| string |  | The cohort's own assetData\[\].deemedAcquiredUnder16_1_1_bInPrecedingYear, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].description` | array \| boolean \| null \| number \| object \| string |  | A label for this cohort, as text. It counts among the words of the cohort's property unit, beside the cohort's own assetDescription and account fields and the row's words (with several cohorts, only the row's assetClass); it never replaces the row's description. Those words decide whether the Reg 1102(1) exclusion questions and the Class 10 passenger-vehicle question must be answered or can default; see assetData\[\].description. |
| `assetData[].additionCohorts[].disposedPropertyAcquiredBefore2017` | boolean \| null \| string |  | The cohort's own assetData\[\].disposedPropertyAcquiredBefore2017, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].disposedPropertyDeemed13_40Amount` | null \| number \| string |  | The cohort's own assetData\[\].disposedPropertyDeemed13_40Amount, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].disposedPropertyIsGoodwill` | boolean \| null \| string |  | The cohort's own assetData\[\].disposedPropertyIsGoodwill, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].disposedPropertyOriginalCost` | null \| number \| string |  | The cohort's own assetData\[\].disposedPropertyOriginalCost for a disposition stated on the cohort, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may not carry disposition amounts itself (refused), but each cohort may state its own. Schedule 6's ITA 13(21.1) land reallocation and the ITA 110.1(1)(a) gift-recapture check read the cohort's disposition on its unit, as a row's. |
| `assetData[].additionCohorts[].disposedPropertyPost2016DeemedCostParagraph` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].disposedPropertyPost2016DeemedCostParagraph, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value, and the paragraph's operand (disposedPropertyDeemed13_40Amount or disposedPropertyRolloverTransferorDeemedCost) is the cohort's, or the row's where the cohort leaves it blank. With several cohorts the row's value is not used, so a blank stays blank, and each cohort states its own operand, which the row may not (refused). A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].disposedPropertyRolloverTransferorDeemedCost` | null \| number \| string |  | The cohort's own assetData\[\].disposedPropertyRolloverTransferorDeemedCost, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].dispositionAcquirerReg1100_2_2_hApplies` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].dispositionAcquirerReg1100_2_2_hApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].dispositionIsArmsLength` | boolean \| null \| string |  | The cohort's own assetData\[\].dispositionIsArmsLength, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].dispositionIsGiftToQualifiedDonee` | boolean \| null \| string |  | The cohort's own assetData\[\].dispositionIsGiftToQualifiedDonee, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition amounts, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].dispositionOutlaysAndExpenses` | null \| number \| string |  | The cohort's own assetData\[\].dispositionOutlaysAndExpenses, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may not carry disposition amounts itself (refused), but each cohort may state its own. |
| `assetData[].additionCohorts[].dispositionReconciliationId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].dispositionReconciliationId, the ID that links this cohort's disposition to its Schedule 6 rows; see that field. With one cohort a blank takes the row's ID and then the row's own key, and a cohort ID that differs from the row's key breaks the link. With several cohorts the row's ID and key are not used and cohortId is not a fallback. A disposing cohort then links only through its own ID, so a blank leaves its Schedule 6 rows unlinked and the Schedule 6 evidence incomplete. Schedule 31 reads only the row's ID. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleCapitalPropertyBefore2017` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleCapitalPropertyBefore2017, read on this cohort's property unit the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGenerationEnergyTransmittedPct` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].eligibleGenerationEnergyTransmittedPct, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].eligibleGreenhouseElectionMade` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseElectionMade, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a blank stays blank. The row's own value is still resolved as the row's pool identity: a row Yes without the row's own propertyId, or outside Class 6 or 8, is refused even when every cohort answers. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseLocatedInCanada` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseLocatedInCanada, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseNoPriorCcaOrTerminalLossDeduction` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseNoPriorCcaOrTerminalLossDeduction, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseNoPriorDeemedCcaOrUccReduction` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseNoPriorDeemedCcaOrUccReduction, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseNoPriorOwnershipByTaxpayerOrNonArmsLengthPerson` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseNoPriorOwnershipByTaxpayerOrNonArmsLengthPerson, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhousePreNovember4_2025UndeductedCapitalCost` | null \| number \| string |  | The cohort's own assetData\[\].eligibleGreenhousePreNovember4_2025UndeductedCapitalCost, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. As on a row, a negative amount is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseQualificationAvoidancePurpose` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseQualificationAvoidancePurpose, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseReg1102_28ElectionOut` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseReg1102_28ElectionOut, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseScheduleIIClassConditionMet` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseScheduleIIClassConditionMet, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleGreenhouseUnderConstructionOnNovember4_2025` | boolean \| null \| string |  | The cohort's own assetData\[\].eligibleGreenhouseUnderConstructionOnNovember4_2025, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].eligibleLiquefactionActivitiesIncomeBeforeCca` | null \| number \| string |  | The cohort's own assetData\[\].eligibleLiquefactionActivitiesIncomeBeforeCca, one facility-level amount (0 when nil). Every value stated on the facility's rows and cohorts, in its Class 1 and Class 47 pools, must agree (refused, naming each input), a value stated anywhere on the facility applies to both pools, and a facility with none holds filing readiness for the additional allowance. With one cohort a blank takes the row's value; with several the row's value is not used. As on a row, a negative amount is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].evChargingStationContinuousPowerKw` | null \| number \| string |  | The cohort's own assetData\[\].evChargingStationContinuousPowerKw, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. As on a row, a negative value is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].firstRenewalEndDate` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].firstRenewalEndDate, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].gifiDescription` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].gifiDescription, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. |
| `assetData[].additionCohorts[].hasLeaseRenewalOption` | boolean \| null \| string |  | The cohort's own assetData\[\].hasLeaseRenewalOption, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].hasRenewalTermAfterCostIncurredTerm` | boolean \| null \| string |  | The cohort's own assetData\[\].hasRenewalTermAfterCostIncurredTerm, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].importedCcaPoolId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].importedCcaPoolId, as text. A cohort carrying it is pooled in that imported sub-pool of its class. The value must be text, start with the cohort's ccaClass and a hyphen, equal the cohort's propertyId, and agree with any separate-class fact that sets the cohort's pool, or the request is refused. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a cohort joins the sub-pool only with its own value and propertyId. The row's own value is still checked as the row's pool identity: a row value that does not equal the row's own propertyId is refused even when every cohort is blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].incorporationCostExcessAddition` | null \| number \| string |  | Not used on a cohort beyond the value checks every cohort passes: a value that is not a non-negative amount is refused, as on a row. The ITA 20(1)(b) Class 14.1 incorporation-cost reconciliation reads this only on the parent rows, against each row's own additions; a valid value on a cohort is ignored. |
| `assetData[].additionCohorts[].isAIIP` | boolean \| null \| string |  | The cohort's own assetData\[\].isAIIP answer: whether this slice is AIIP (Reg 1104(4)) or, acquired after 2024, RIIP (Reg 1104(4.01)). With one cohort a blank takes the row's answer; with several it stays blank. Outside Classes 54 to 56, an elected greenhouse and the Schedule IV to VI resource pools, a blank is refused where the cohort's own dates fall in the AIIP or RIIP window, and Yes outside both windows is refused. In a Schedule IV to VI resource pool a blank is not refused. Where that pool's accelerated factor is in issue, the pool takes one answer: one stated on any of its rows or cohorts governs the whole pool, all stated answers must agree (refused otherwise), and the pool's allowance is held only when none states one. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isAdditionOrAlterationToGreenhouse` | boolean \| null \| string |  | The cohort's own assetData\[\].isAdditionOrAlterationToGreenhouse, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isAiipSolelyBecauseOfReg1104_4_b_i` | boolean \| null \| string |  | The cohort's own assetData\[\].isAiipSolelyBecauseOfReg1104_4_b_i answer for its slice; see that field. It is asked only where the cohort is AIIP acquired before 2025, outside Classes 54 to 56, and a blank there holds the class. With one cohort a blank takes the row's answer; with several cohorts the row's answer is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isAncillaryToElectricVehicleChargingStations` | boolean \| null \| string |  | The cohort's own assetData\[\].isAncillaryToElectricVehicleChargingStations, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isBuilding` | boolean \| null \| string |  | The cohort's own assetData\[\].isBuilding, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts Schedule 8 does not use the row's value, so a blank stays blank. On Class 43.1 or 43.2 a stated value makes claimsEligibleTransmissionEquipment required on the unit, and each of several cohorts states its own (the row may not). Schedule 31 reads only the row's isBuilding, never a cohort's. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isDIEP` | boolean \| null \| string |  | The cohort's own assetData\[\].isDIEP designation for its slice; see that field. With one cohort a blank takes the row's answer. With several cohorts a blank stays blank. A blank is refused where the cohort meets the Reg 1104(3.1) CCPC, class and date gates, except in a Schedule IV to VI resource pool, where a blank is not read. True outside those gates is refused everywhere. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isDiepSolelyBecauseOfReg1104_3_1_c_i` | boolean \| null \| string |  | The cohort's own assetData\[\].isDiepSolelyBecauseOfReg1104_3_1_c_i answer for its slice; see that field. It is asked only where the cohort is designated DIEP, and a blank there holds the class. With one cohort a blank takes the row's answer; with several cohorts the row's answer is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isElectricVehicleChargingStation` | boolean \| null \| string |  | The cohort's own assetData\[\].isElectricVehicleChargingStation, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isFormerPropertyDeemedOwnedUnder13_4_3` | boolean \| null \| string |  | The cohort's own assetData\[\].isFormerPropertyDeemedOwnedUnder13_4_3, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a blank stays blank. The row's own value is still resolved as the row's pool identity: a row Yes without the row's own propertyId is refused even when every cohort answers. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isGreenhouse` | boolean \| null \| string |  | The cohort's own assetData\[\].isGreenhouse, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isIndustrialMineralMineOrRight` | boolean \| null \| string |  | The cohort's own assetData\[\].isIndustrialMineralMineOrRight. It is read only on a Schedule V resource pool, as one fact for the pool: every value stated on the pool's rows and cohorts must agree (refused otherwise), and anything but Yes holds the pool's allowance. It is not read on a Schedule IV or VI pool or an ordinary class. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isInventory` | boolean \| null \| string |  | The cohort's own assetData\[\].isInventory, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isLand` | boolean \| null \| string |  | The cohort's own assetData\[\].isLand, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts Schedule 8 does not use the row's value, so a blank stays blank. Schedule 31 reads only the row's isLand, never a cohort's, and still reads the row's value when the row has several cohorts. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isLeasingProperty` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].isLeasingProperty; see that field. The coverage review reads it on each property unit, the cohort's included, so a Yes on the cohort marks the leasing-property rules for review. With one cohort a blank takes the row's value. It is not otherwise read. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isNewPurposeBuiltResidentialRental` | boolean \| null \| string |  | The cohort's own assetData\[\].isNewPurposeBuiltResidentialRental, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several the row's value does not reach the cohorts. A Yes needs a propertyId for the unit (refused otherwise) and gives the cohort its own Reg 1101(1ac.1) class. The coverage review counts the purpose-built rental rules resolved once such a class exists and every building-class row and cohort answers this question. A row Yes is also resolved as the row's pool identity, refused without its own propertyId. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isPassengerVehicle` | boolean \| null \| string |  | The cohort's own assetData\[\].isPassengerVehicle, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isPassengerVehicleAcquiredNonArmsLength` | boolean \| null \| string |  | The cohort's own assetData\[\].isPassengerVehicleAcquiredNonArmsLength, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isPatentOrRightToUsePatentedInformation` | boolean \| null \| string |  | The cohort's own assetData\[\].isPatentOrRightToUsePatentedInformation, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank and holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isReg1101_5k_1CanadianFilmProduction` | boolean \| null \| string |  | The cohort's own assetData\[\].isReg1101_5k_1CanadianFilmProduction, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a blank stays blank. The row's own value is still resolved as the row's pool identity: a row Yes on a row whose class is not Class 10 is refused even when every cohort answers. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isRiipSolelyBecauseOfReg1104_4_01_b_i` | boolean \| null \| string |  | The cohort's own assetData\[\].isRiipSolelyBecauseOfReg1104_4_01_b_i answer for its slice; see that field. It is asked only where the cohort is RIIP (acquired after 2024), outside Classes 54 to 56, and a blank there holds the class. With one cohort a blank takes the row's answer; with several cohorts the row's answer is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isSeparateClassRentalPropertyReg1101_1ac` | boolean \| null \| string |  | The cohort's own assetData\[\].isSeparateClassRentalPropertyReg1101_1ac, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a blank stays blank. The row's own value is still resolved as the row's pool identity: a row Yes without the row's own propertyId, or beside the row's separateClassBusinessId, is refused even when every cohort answers. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isSeparateClassUnderITA37_6` | boolean \| null \| string |  | The cohort's own assetData\[\].isSeparateClassUnderITA37_6, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. True gives the cohort its own pool keyed by its propertyId. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].isSystemsSoftware` | boolean \| null \| string |  | The cohort's own assetData\[\].isSystemsSoftware, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isTimberLimitOrCuttingRight` | boolean \| null \| string |  | The cohort's own assetData\[\].isTimberLimitOrCuttingRight. It is read only on a Schedule VI resource pool, as one fact for the pool: every value stated on the pool's rows and cohorts must agree (refused otherwise), and anything but Yes, or an isTimberResourceProperty other than No, holds the pool's allowance. It is not read on a Schedule IV or V pool or an ordinary class. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isTimberResourceProperty` | boolean \| null \| string |  | The cohort's own assetData\[\].isTimberResourceProperty. In an ordinary class it is read per cohort for the cohort's own disposition (element G instead of F, no Schedule 6 gain route). In a Schedule IV or VI resource pool every value stated on the pool's rows and cohorts must agree (refused otherwise). With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isVessel` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].isVessel, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value, and canadianVesselCapitalCost is the cohort's, or the row's where the cohort leaves it blank. With several the row's values do not reach the cohorts, so a blank stays blank and each qualifying vessel cohort states its own cost. The row's own vessel answers are still resolved as the row's pool identity: a row meeting every Reg 1101(2a) condition without its own propertyId is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isYachtCampLodgeGolfCourseOrFacility` | boolean \| null \| string |  | The cohort's own assetData\[\].isYachtCampLodgeGolfCourseOrFacility, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isZeroEmissionPassengerVehicle` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].isZeroEmissionPassengerVehicle, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. With several cohorts, a cohort answered Yes whose amount exceeds one Reg 7307(1.1) prescribed amount must state cappedVehicleCount. The row's assetCount and the one-vehicle default are not used for it, and without it the class is held. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].isZeroEmissionVehiclePerITA248` | boolean \| null \| string |  | The cohort's own assetData\[\].isZeroEmissionVehiclePerITA248, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank and holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].leaseEndDate` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].leaseEndDate, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].lifeExpiryDate` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].lifeExpiryDate, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].liquefactionFacilityId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].liquefactionFacilityId, which keys the cohort's LNG facility pool; see that field. A cohort under a liquefaction rule needs one (refused otherwise). A facility's Class 1-LNG or 47-LNG pool holds every row and cohort of that facility and class; two of them with the same propertyId are refused. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].liquefactionReg1101SeparateClass` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].liquefactionReg1101SeparateClass, which places the cohort in its LNG facility's prescribed class; see that field. A Class 1-LNG or 47-LNG pool takes exactly one W08 row or cohort, so a second row or cohort for the same facility and class is refused. With one cohort a blank takes the row's value; with several it stays blank. The coverage review reads the cohort's selection as well as the rows', so a selection on either needs the review's other-separate-class answer Yes. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].meetsClass56UsedPropertyCondition` | boolean \| null \| string |  | The cohort's own assetData\[\].meetsClass56UsedPropertyCondition, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank and holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].mineCcaSources` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].mineCcaSources list. Where a pool's CCA is attributed among member mines, every row and cohort of the pool must carry the same list (differing lists are refused), and a row or cohort without one holds filing readiness. With one cohort a blank takes the row's list; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].mineId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].mineId, which keys the cohort's mining pool; see that field. A cohort under a mining rule needs one (refused otherwise), and each mining pool must state one consistent mineId. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].mineIncomeBeforeCca` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].mineIncomeBeforeCca, one annual amount for the mine or mine group: every value stated on the pool's rows and cohorts must agree (refused otherwise), and it is refused where the pool's rule is Not applicable. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].mineOrdinaryCcaAllocation` | null \| number \| string |  | The cohort's own assetData\[\].mineOrdinaryCcaAllocation: this cohort's share of an ordinary class's CCA claim attributed to a mine. Where the class's claim must be split among mines, every row and cohort must state one and they must add up to the class claim, or filing readiness is held. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].mineReg1101SeparateClass` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].mineReg1101SeparateClass, which places the cohort in its mine's prescribed class; see that field. All values stated in one Class 28, 41, 41.1 or 41.2 pool must agree (refused otherwise), and a pool with property and no answer holds the class. With one cohort a blank takes the row's value; with several it stays blank. The coverage review reads the cohort's selection as well as the rows', so a selection on either needs the review's other-separate-class answer Yes. A row selection without the row's own mineId is refused even when the row has several cohorts. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].minimumContinuousPowerKwOfServedEvChargingStations` | null \| number \| string |  | The cohort's own assetData\[\].minimumContinuousPowerKwOfServedEvChargingStations, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. As on a row, a negative value is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].nextSucceedingTermEndDate` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].nextSucceedingTermEndDate, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].nonArmsLengthTransferorCostAmount` | null \| number \| string |  | The cohort's own assetData\[\].nonArmsLengthTransferorCostAmount, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. As on a row, a negative amount is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].nonArmsLengthVehicleFairMarketValue` | null \| number \| string |  | The cohort's own assetData\[\].nonArmsLengthVehicleFairMarketValue, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. As on a row, a negative amount is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].nonRecoverableSalesTaxOnPrescribedLimit` | null \| number \| string |  | The cohort's own assetData\[\].nonRecoverableSalesTaxOnPrescribedLimit, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. As on a row, a negative amount is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].openingCost` | null \| number \| string |  | The cohort's own assetData\[\].openingCost, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. As on a row, a negative amount is refused. |
| `assetData[].additionCohorts[].openingUCC` | null \| number \| string |  | The cohort's own assetData\[\].openingUCC. It does not add to any pool's opening UCC, which comes from the parent rows' openingUCC or from pyUCCPools. A cohort always holds property through its positive amount, so this value is not needed for that. It is read only in Class 13, when the opening pool needs a reviewed ccaOverrides claim and another property in the pool states propertyCapitalCost; a stated value then counts toward the part of the opening balance not tied to an itemized cost item, which caps that claim. As on a row, a negative amount is refused. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].passengerVehicleCostToTaxpayer` | null \| number \| string |  | The cohort's own assetData\[\].passengerVehicleCostToTaxpayer, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].postNovember20_2018DeemedDeductionAmount` | null \| number \| string |  | The cohort's own assetData\[\].postNovember20_2018DeemedDeductionAmount, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. Where the row's cost is split automatically between classes, a single cohort's value is prorated with its amount. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].postTwentyTwentyFourDeemedDeductionAmount` | null \| number \| string |  | The cohort's own assetData\[\].postTwentyTwentyFourDeemedDeductionAmount, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. Where the row's cost is split automatically between classes, a single cohort's value is prorated with its amount. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].preApril19_2021ExpenditureAmount` | null \| number \| string |  | The cohort's own assetData\[\].preApril19_2021ExpenditureAmount, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. Where the row's cost is split automatically between classes, a single cohort's value is prorated with its amount. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].preNovember21_2018ExpenditureAmount` | null \| number \| string |  | The cohort's own assetData\[\].preNovember21_2018ExpenditureAmount, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. Where the row's cost is split automatically between classes, a single cohort's value is prorated with its amount. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].preTwentyTwentyFiveExpenditureAmount` | null \| number \| string |  | The cohort's own assetData\[\].preTwentyTwentyFiveExpenditureAmount, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. Where the row's cost is split automatically between classes, a single cohort's value is prorated with its amount. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].prescribedVehicleCapitalCostLimit` | null \| number \| string |  | The cohort's own assetData\[\].prescribedVehicleCapitalCostLimit, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].priorCcaClaimed` | array \| boolean \| null \| number \| object \| string |  | Not used on a cohort. The engine reads it only beside propertyCapitalCost for a continuing Class 13 or 14 cost item, which a cohort cannot carry because every cohort is a current-year addition. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].proceedsOfDisposition` | null \| number \| string |  | The cohort's own assetData\[\].proceedsOfDisposition, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. Schedule 8's class computation and its recapture on gifts check read it there, and Schedule 6's ITA 13(21.1) land reallocation takes it as the building proceeds of the unit its land row links to. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may not carry disposition amounts itself (refused), but each cohort may state its own. |
| `assetData[].additionCohorts[].propertyCapitalCost` | array \| boolean \| null \| number \| object \| string |  | Refused on a cohort outside a Schedule IV-VI resource pool. It states a prior-year Class 13 or 14 cost item, while every cohort is a current-year addition, so a cohort carrying it, or inheriting it from a one-cohort row, is refused. A resource pool does not read it. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].propertyGroupId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].propertyGroupId, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. Schedule 8's ITA 13(21.1) building reallocation and Schedule 6's link from the land row both read the unit, so a land row with this ID links to this cohort. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].propertyId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].propertyId, as text. With one cohort a blank takes the row's ID, or the row's own identity; with several the cohort does not take the row's ID. A cohort without its own ID then holds an ordinary pool, and is refused where a property-level separate class needs one (such as a Reg 1101(1ac) rental, Canadian vessel or resource property). Two cohorts with one ID hold an ordinary pool, are refused in a per-property class, and are two parts of one Schedule IV pool. The ID keys the cohort's separate class and its available-for-use workpaper link (ITA 13(26)); the ITA 247(2.1) match reads only the row's. |
| `assetData[].additionCohorts[].propertyIdentityConfirmed` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].propertyIdentityConfirmed, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. |
| `assetData[].additionCohorts[].propertyIdentityIsProvisional` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].propertyIdentityIsProvisional, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. |
| `assetData[].additionCohorts[].purposeBuiltResidentialRentalThroughoutYear` | boolean \| null \| string |  | The cohort's own assetData\[\].purposeBuiltResidentialRentalThroughoutYear. It is one fact for the rental's Reg 1101(1ac.1) pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].railwayCommonCarrierOwnedAndOperatedThroughoutYear` | boolean \| null \| string |  | The cohort's own assetData\[\].railwayCommonCarrierOwnedAndOperatedThroughoutYear. It is one fact for the railway pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].railwayReg1101SeparateClass` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].railwayReg1101SeparateClass. Schedule 8 reads it on this cohort's property unit (its slice of the row's additions) for the railway pool and its additional allowance, the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used for the cohort, so a blank stays blank. The Schedule 8 coverage review reads each property unit, the cohort's included, so a railway class stated on the cohort raises the other prescribed separate class review, and its conflict with a No answer. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].railwayReg1101_5dAnnualClassConditionsMet` | boolean \| null \| string |  | The cohort's own assetData\[\].railwayReg1101_5dAnnualClassConditionsMet. It is one fact for the railway pool: the first non-blank value across the pool's rows and cohorts is used, and later values are not read. With one cohort a blank takes the row's value; with several the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1100_0_3And2_02ExcludedExpenditureOverlapAmount` | null \| number \| string |  | The cohort's own assetData\[\].reg1100_0_3And2_02ExcludedExpenditureOverlapAmount, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. Where the row's cost is split automatically between classes, a single cohort's value is prorated with its amount. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1100_0_3InventoryTransferExceptionApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1100_0_3InventoryTransferExceptionApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1100_16SpecifiedLeasingPropertyThroughoutYear` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1100_16SpecifiedLeasingPropertyThroughoutYear. Schedule 8's class computation reads it on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used for the cohort, so a blank stays blank. The Schedule 8 coverage review reads each property unit, the cohort's included, so a Yes on the cohort raises the specified-leasing and leasing-property reviews. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1100_2_021InventoryTransferExceptionApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1100_2_021InventoryTransferExceptionApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1100_2_02InventoryTransferExceptionApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1100_2_02InventoryTransferExceptionApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1100_2_2NonArmsLengthContinuityApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1100_2_2NonArmsLengthContinuityApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1101IncomeSourceType` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].reg1101IncomeSourceType. Schedule 8 reads it on this cohort's property unit (its slice of the row's additions) for the Reg 1101(1) and (1ac) pool identity and holds, the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used for the cohort, so a blank stays blank. The Schedule 8 coverage review reads each property unit, the cohort's included, so Property on the cohort brings in its rental questions. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_14Class41SpecialRulesApply` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1102_14Class41SpecialRulesApply, read on the cohort's property unit by the Reg 1102(14) continuity check and its pool identity; see that field. The automatic Class 41 split reads only the row's own value, and a row needing it cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A blank where the transferor's class is 41 holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_14Class41SplitRole` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].reg1102_14Class41SplitRole, read on the cohort's property unit by the Reg 1102(14) continuity check and its pool identity; see that field. The automatic Class 41 split reads only the row's own value, and a row needing it cannot carry more than one cohort (refused); on the single cohort of a row that split divides any role is refused, since the split assigns each portion its role. With one cohort a blank takes the row's value; with several it stays blank. Text other than class41 or remainder is refused. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_14Class41SplitSubsection` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].reg1102_14Class41SplitSubsection, read on the cohort's property unit by the Reg 1102(14) continuity check and its pool identity; see that field. The automatic Class 41 split reads only the row's own value, and a row needing it cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A cohort whose role, subsection and class do not match holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_14ClassContinuityApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1102_14ClassContinuityApplies, read on the cohort's property unit by the Reg 1102(14) continuity check and its pool identity; see that field. The automatic Class 41 split and the automatic Class 3 or 6 paragraph (k) split read only the row's own value, and a row needing either split cannot carry more than one cohort (refused). A row needing the paragraph (k) split is refused unless the row itself answers No, whatever its cohort says. With one cohort a blank takes the row's value; with several it stays blank. A blank left on a cohort holding property holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_14TransferorCcaClass` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].reg1102_14TransferorCcaClass, read on the cohort's property unit by the Reg 1102(14) continuity check and its pool identity; see that field. The automatic Class 41 split reads only the row's own value, and a row needing it cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A blank where continuity applies holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_14TransferorClass41UccImmediatelyBeforeDisposition` | null \| number \| string |  | Not used on a cohort beyond the value checks every cohort passes: a value that is not a non-negative amount is refused, as on a row. Only the automatic Reg 1102(14.11)/(14.12) Class 41 split reads it, from the row's own value; a valid value on a cohort is ignored, and a row that needs the split cannot carry more than one cohort (refused). |
| `assetData[].additionCohorts[].reg1102_14TransferorClass41UccReductionOnDisposition` | null \| number \| string |  | Not used on a cohort beyond the value checks every cohort passes: a value that is not a non-negative amount is refused, as on a row. Only the automatic Reg 1102(14.11)/(14.12) Class 41 split reads it, from the row's own value; a valid value on a cohort is ignored, and a row that needs the split cannot carry more than one cohort (refused). |
| `assetData[].additionCohorts[].reg1102_14TransferorPropertyWasSeparateClass` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1102_14TransferorPropertyWasSeparateClass, read on the cohort's property unit by the Reg 1102(14) continuity check and its pool identity; see that field. The automatic Class 41 split reads only the row's own value, and a row needing it cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A blank where continuity applies holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_14TransferorSeparateClassId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].reg1102_14TransferorSeparateClassId, read on the cohort's property unit by the Reg 1102(14) continuity check and its pool identity; see that field. The automatic Class 41 split reads only the row's own value, and a row needing it cannot carry more than one cohort (refused). With one cohort a blank takes the row's value; with several it stays blank. A blank where the transferor's class was separate holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_1_eListedArtOrAntiqueExclusionApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1102_1_eListedArtOrAntiqueExclusionApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A null is checked for art words in the unit's labels: the row's labels (with several cohorts, only its assetClass) overlaid by the cohort's own label fields, plus the cohort's description, so art named only there holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].reg1102_5Or5_1BuildingLeaseholdApplies` | boolean \| null \| string |  | The cohort's own assetData\[\].reg1102_5Or5_1BuildingLeaseholdApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].replacementPropertyElection` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].replacementPropertyElection, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].resourceAllowancePreviouslyGranted` | boolean \| null \| string |  | The cohort's own assetData\[\].resourceAllowancePreviouslyGranted; see that field. Schedules V and VI read it from the pool's one row, and without the section 4 election a pool with more than one row or cohort is refused, so only a single cohort can carry it, taking a blank from its row. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceAllowanceSchedule` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].resourceAllowanceSchedule (IV, V or VI). It makes the cohort a part of a resource pool keyed by its ccaClass and propertyId; every row and cohort in the pool must state the same schedule, and the pool cannot mix with ordinary rows (refused otherwise). Schedule V and VI pools take one row unless the section 4 election is made. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceCapitalCost` | null \| number \| string |  | The cohort's own assetData\[\].resourceCapitalCost. In a Schedule IV-VI resource pool it is one fact for the pool: every value stated on the pool's rows and cohorts must agree (refused otherwise), and that one value answers for the pool. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceEstimateOrCapitalCostChanged` | boolean \| null \| string |  | The cohort's own assetData\[\].resourceEstimateOrCapitalCostChanged; see that field. Schedules V and VI read it from the pool's one row, and without the section 4 election a pool with more than one row or cohort is refused, so only a single cohort can carry it, taking a blank from its row. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceHypotheticalOpeningUccWithoutEnhancement` | null \| number \| string |  | The cohort's own assetData\[\].resourceHypotheticalOpeningUccWithoutEnhancement. In a Schedule IV pool with opening UCC it is one pool fact that must agree on every row and cohort stating it (refused otherwise). Schedules V and VI read it from the pool's single row, so there only one cohort can carry it. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceMostRecentRatePerUnit` | null \| number \| string |  | The cohort's own assetData\[\].resourceMostRecentRatePerUnit; see that field. Schedules V and VI read it from the pool's one row, and without the section 4 election a pool with more than one row or cohort is refused, so only a single cohort can carry it, taking a blank from its row. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceOriginalQuantity` | null \| number \| string |  | The cohort's own assetData\[\].resourceOriginalQuantity; see that field. Schedules V and VI read it from the pool's one row, and without the section 4 election a pool with more than one row or cohort is refused, so only a single cohort can carry it, taking a blank from its row. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourcePartHypotheticalUccBeforeAllowance` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].resourcePartHypotheticalUccBeforeAllowance. In a Schedule IV pool with more than one part (rows and cohorts) whose pre-enhancement UCC differs, each part states its own share; a blank holds the pool, and the shares must add up to the pool's pre-enhancement UCC (refused otherwise). With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourcePartUccBeforeAllowance` | null \| number \| string |  | The cohort's own assetData\[\].resourcePartUccBeforeAllowance. In a Schedule IV pool with more than one part (rows and cohorts), each part states its own share of the pool's UCC before the allowance; a blank holds the pool, and the shares must add up to that UCC (refused otherwise). With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourcePreviousRateUsedFirstClaimFormula` | boolean \| null \| string |  | The cohort's own assetData\[\].resourcePreviousRateUsedFirstClaimFormula; see that field. Schedules V and VI read it from the pool's one row, and without the section 4 election a pool with more than one row or cohort is refused, so only a single cohort can carry it, taking a blank from its row. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourcePriorSurveyCruiseMapDeductions` | null \| number \| string |  | The cohort's own assetData\[\].resourcePriorSurveyCruiseMapDeductions; see that field. Schedules V and VI read it from the pool's one row, and without the section 4 election a pool with more than one row or cohort is refused, so only a single cohort can carry it, taking a blank from its row. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceQuantityAtStart` | null \| number \| string |  | The cohort's own assetData\[\].resourceQuantityAtStart. In a Schedule IV pool each row and cohort is a separate part and this is read per part; a blank holds the pool. Schedules V and VI read it from the pool's single row. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceQuantityCutOrMined` | null \| number \| string |  | The cohort's own assetData\[\].resourceQuantityCutOrMined. In a Schedule IV pool each row and cohort is a separate part and this is read per part; a blank holds the pool. Schedules V and VI read it from the pool's single row. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceQuantityUnit` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].resourceQuantityUnit, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceResidualValue` | null \| number \| string |  | The cohort's own assetData\[\].resourceResidualValue. In a Schedule IV-VI resource pool it is one fact for the pool: every value stated on the pool's rows and cohorts must agree (refused otherwise), and that one value answers for the pool. With one cohort a blank takes the row's value; with several the row's value is not used. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].resourceSaleProceedsForSection4Election` | null \| number \| string |  | The cohort's own assetData\[\].resourceSaleProceedsForSection4Election, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. It is one amount for the resource pool, so values on the pool's rows and cohorts must agree. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].resourceSection4AlternativeElection` | boolean \| null \| string |  | The cohort's own assetData\[\].resourceSection4AlternativeElection, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. It is one answer for the resource pool, so values on the pool's rows and cohorts must agree. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].resourceSurveyCruiseMapCosts` | null \| number \| string |  | The cohort's own assetData\[\].resourceSurveyCruiseMapCosts; see that field. Schedules V and VI read it from the pool's one row, and without the section 4 election a pool with more than one row or cohort is refused, so only a single cohort can carry it, taking a blank from its row. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].rolloverElectionApplies` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].rolloverElectionApplies, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].s247CapitalCost` | null \| number \| string |  | Not used on a cohort. The ITA 247(2.1) capital-cost adjustment reads s247CapitalCost only on the parent row it matches by propertyId and ccaClass, and the opening-pool step reads it only on parent rows; a value on a cohort is ignored. A cohort is reached only through its cohortId. |
| `assetData[].additionCohorts[].section110_6_21CapitalCostReduction` | null \| number \| string |  | The cohort's own assetData\[\].section110_6_21CapitalCostReduction, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].section13_21_1BuildingCostAmount` | null \| number \| string |  | The cohort's own assetData\[\].section13_21_1BuildingCostAmount, read on this cohort's property unit (its slice of the row's additions) by Schedule 8 and by Schedule 6's linked land row, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].section13_21_1BuildingFairMarketValue` | null \| number \| string |  | The cohort's own assetData\[\].section13_21_1BuildingFairMarketValue, read on this cohort's property unit (its slice of the row's additions) by Schedule 8 and by Schedule 6's linked land row, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].section13_21_1HistoricalNecessaryLandOwnership` | boolean \| null \| string |  | The cohort's own assetData\[\].section13_21_1HistoricalNecessaryLandOwnership, read on this cohort's property unit (its slice of the row's additions) by Schedule 8 and by Schedule 6's linked land row, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].section13_21_1LandDisposedInYearByTaxpayerOrNonArmsLengthPerson` | boolean \| null \| string |  | The cohort's own assetData\[\].section13_21_1LandDisposedInYearByTaxpayerOrNonArmsLengthPerson, read on this cohort's property unit (its slice of the row's additions) by Schedule 8 and by Schedule 6's linked land row, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].section13_21_1LandRelationshipExists` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].section13_21_1LandRelationshipExists, read on this cohort's property unit (its slice of the row's additions) by Schedule 8 and by Schedule 6's linked land row, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].section13_4Election` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].section13_4Election, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].section13_4_1Election` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].section13_4_1Election, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].section149DispositionOfEveryPropertyInClass` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].section149DispositionOfEveryPropertyInClass. A JSON true on any row or cohort of the pool sets the pool's property remaining to nil, not just this slice, unless an ITA 13(21.2) stop-loss suspension is still outstanding. A Yes string is not read as true. A Schedule IV to VI resource pool does not read it. With one cohort a blank takes the row's value; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].section37DeductionAllowedForAcquisitionExpenditure` | boolean \| null \| string |  | The cohort's own assetData\[\].section37DeductionAllowedForAcquisitionExpenditure, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A null is checked for research words in the unit's labels: the row's labels (with several cohorts, only its assetClass) overlaid by the cohort's own label fields, plus the cohort's description, so research named only there holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].section44Election` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].section44Election, read on this cohort's property unit (its slice of the row's additions) beside the cohort's own disposition, the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].separateClassBusinessId` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].separateClassBusinessId, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].similarPropertyAcquiredWithin24MonthsAndStillOwned` | boolean \| null \| string |  | The cohort's own assetData\[\].similarPropertyAcquiredWithin24MonthsAndStillOwned, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].storageEnergyConditionMet` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].storageEnergyConditionMet, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].storageExcludedCategory` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].storageExcludedCategory, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].storageFixedLocation` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].storageFixedLocation, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].storagePrimaryPurposeConfirmed` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].storagePrimaryPurposeConfirmed, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].subsection39ExcludedDispositionApplies` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].subsection39ExcludedDispositionApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].taxUccReductionOnDisposition` | null \| number \| string |  | The cohort's own assetData\[\].taxUccReductionOnDisposition. Schedule 8's class computation reads it on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may not carry disposition amounts itself (refused), but each cohort may state its own. The recapture on gifts check reads the cohort's unit too, so a reduction stated on a cohort makes it ask that cohort's dispositionIsGiftToQualifiedDonee. |
| `assetData[].additionCohorts[].transferorCapitalCostImmediatelyBefore` | null \| number \| string |  | The cohort's own assetData\[\].transferorCapitalCostImmediatelyBefore, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].transferorProceedsOfDisposition` | null \| number \| string |  | The cohort's own assetData\[\].transferorProceedsOfDisposition, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].transferorSection110_6Deductions` | null \| number \| string |  | The cohort's own assetData\[\].transferorSection110_6Deductions, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].transferorWasCanadianResidentIndividualOrQualifyingPartnership` | boolean \| null \| string |  | The cohort's own assetData\[\].transferorWasCanadianResidentIndividualOrQualifyingPartnership, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].transmittedEnergyFromEligibleGenerationPct` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].transmittedEnergyFromEligibleGenerationPct, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].usedWithEligibleGenerationEquipment` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].usedWithEligibleGenerationEquipment, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. A row with several cohorts may state it only as every cohort does (refused otherwise), so each cohort states its own. |
| `assetData[].additionCohorts[].vesselConstructedInCanada` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].vesselConstructedInCanada, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].vesselNotUsedBeforeAcquisition` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].vesselNotUsedBeforeAcquisition, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a blank stays blank. The row's own value is still read for the row's own pool identity. There a value other than true, false, Yes or No is refused. A Class 7 row whose own isVessel, vesselConstructedInCanada, vesselRegisteredInCanada and vesselNotUsedBeforeAcquisition are true and whose vesselStructuredFinancingFacilityApplies is false is refused unless the row has its own propertyId. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].vesselRegisteredInCanada` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].vesselRegisteredInCanada, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a blank stays blank. The row's own value is still read for the row's own pool identity. There a value other than true, false, Yes or No is refused. A Class 7 row whose own isVessel, vesselConstructedInCanada, vesselRegisteredInCanada and vesselNotUsedBeforeAcquisition are true and whose vesselStructuredFinancingFacilityApplies is false is refused unless the row has its own propertyId. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].vesselStructuredFinancingFacilityApplies` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].vesselStructuredFinancingFacilityApplies, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value. With several cohorts the row's value does not reach the cohorts, so a blank stays blank. The row's own value is still read for the row's own pool identity. There a value other than true, false, Yes or No is refused. A Class 7 row whose own isVessel, vesselConstructedInCanada, vesselRegisteredInCanada and vesselNotUsedBeforeAcquisition are true and whose vesselStructuredFinancingFacilityApplies is false is refused unless the row has its own propertyId. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].wasDIEP` | boolean \| null \| string |  | The cohort's own assetData\[\].wasDIEP answer; see that field. Answers are pooled across the class: a true on any row or cohort counts for the class, and differing answers in a Class 10.1 class are refused. With one cohort a blank takes the row's answer; with several it stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].wouldHaveBeenClass53IfAcquiredIn2025` | array \| boolean \| null \| number \| object \| string |  | The cohort's own assetData\[\].wouldHaveBeenClass53IfAcquiredIn2025, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additionCohorts[].wouldOtherwiseBeClass16` | boolean \| null \| string |  | The cohort's own assetData\[\].wouldOtherwiseBeClass16, read on this cohort's property unit (its slice of the row's additions) the same way as on a row; see that field. With one cohort a blank takes the row's value; with several cohorts the row's value is not used, so a blank stays blank and holds the class. A row with several cohorts may state it only as every cohort does (refused otherwise). |
| `assetData[].additions` | null \| number \| string |  | Capital cost of property added to the class this year, as a non-negative amount; null is nil. A positive amount is refused without acquisitionDate and availableForUseDate (a Schedule IV to VI resource row is held instead). On a row other than a resource row, a blank acquiredFromNonArmsLengthPerson holds the class unless jacket boxes 162 and 171 are both No. Any additionCohorts must sum to it exactly. With additionCohorts, the dates and acquiredFromNonArmsLengthPerson are read on each cohort; with several cohorts the row's own values are not used. An assetCount of 0 is refused unless disposition figures show the addition left the class (with one cohort, the cohort's over the row's). |
| `assetData[].affiliatedPersonStopLossApplies` | boolean \| null \| string |  | Whether the ITA 13(21.2) affiliated-person stop-loss applies to this disposition, as true, false or null. True holds the class until affiliatedStopLossDeemedProceeds, proceedsOfDisposition and dispositionOutlaysAndExpenses are all stated. The class is then reduced by the deemed proceeds less outlays, and the excess of deemed over actual proceeds stays in the class as deemed property, which blocks a terminal loss unless a release clause is named. |
| `assetData[].affiliatedStopLossDeemedProceeds` | null \| number \| string |  | ITA 13(21.2)(e)(i) deemed proceeds for a stop-loss disposition, as a non-negative amount; a negative value is refused on any row. The stop-loss computation reads it only when affiliatedPersonStopLossApplies is true, and then a blank holds the class. It must exceed proceedsOfDisposition and may not exceed a stated disposedPropertyOriginalCost, or the request is refused. The class is reduced by it less outlays, and its excess over actual proceeds is kept as deemed property of the class. Like other disposition amounts, a nonzero value on a row with several additionCohorts is refused, whatever affiliatedPersonStopLossApplies says. |
| `assetData[].affiliatedStopLossDeemedPropertyOutstanding` | boolean \| null \| string |  | Whether an ITA 13(21.2)(e)(iii) stop-loss deemed property of this class is still outstanding at year end, as true, false or null. True keeps it owned, so ITA 20(16)(b) allows no terminal loss. For a deemed property carried in from last year, anything but true or a named release clause keeps it owned and holds the class (false alone releases nothing); true together with a release clause also holds the class. Where the pool's prior-year closing cannot show whether a stop-loss was carried, a terminal loss is held until a row answers; there true, false or a named release clause each answers it. |
| `assetData[].affiliatedStopLossDeemedPropertyReleaseClause` | array \| boolean \| null \| number \| object \| string |  | The ITA 13(21.2)(e)(iii) clause (A) to (E) whose time ended a stop-loss deemed property this year, as the clause letter or its option text, or "None by the tax year end"; other text is refused. A named clause releases the deemed property, unless the row also answers affiliatedStopLossDeemedPropertyOutstanding true, which holds the class. On a row with no stop-loss and none carried from an earlier year, a clause holds the class. The exception is a pool whose prior-year closing cannot show whether a stop-loss was carried: there a named clause is read as a release, and it clears that pool's hold before a terminal loss. |
| `assetData[].aggregateCostOfAdditionsAndAlterationsToBuilding` | null \| number \| string |  | Running total cost of all additions and alterations to this building, including earlier years, as a non-negative amount. On a Class 3 or 6 row answering class3Or6PostCapAdditionsAndAlterationsApply true, a blank holds the class and a total below this row's additions is refused. It is tested against the Class 6(k) $100,000 or Class 3(k) ceiling: this year's additions above the ceiling move to Class 3 or Class 1, and a total over the ceiling that is not split holds the class. On a row with several additionCohorts an overflow is refused instead, because the split cannot be divided among cohorts. |
| `assetData[].anyServedEvChargingStationAtLeast90Kw` | boolean \| null \| string |  | For Class 43.2 equipment used primarily with electric vehicle charging stations: whether at least one station it serves supplies 90 kW or more, as true, false or null. Null holds the class; false also holds it, as the equipment then belongs in Class 43.1. Sch II Cl. 43.2(b)(ii). |
| `assetData[].aocCapitalCostOfClass` | null \| number \| string |  | Tax capital cost of the class at an acquisition of control, as a non-negative amount (not book closing cost). Rows of one class must agree, or the request is refused. No amount is computed from it: ITA 111(4)(e) designations use each aocPropertyDesignations entry's own capitalCost. A row with acquisition-of-control cells and no additions, book-cost removal, proceeds, closing cost or assetCount stays out of the CCA continuity. |
| `assetData[].aocDesignatedProceeds` | null \| number \| string |  | Class-level ITA 111(4)(e) designated proceeds at an acquisition of control, as a non-negative amount; conflicting values in one class are refused. The engine computes nothing from it, as paragraph (e) designates single properties. It holds filing readiness when no aocPropertyDesignations entry is applied to the class and the acquisition of control falls after the first day of this taxation year and no later than its last day, or on the day after it ends. It is not read for an acquisition of control on the first day of the year, or when subsection 111(5.5) switches the write-down off (aocBecomesOrCeasesExemptAtEvent true, or aocMainReasonIsToCauseProvisionToApply true with 111(5.1) or no provision named). Where the acquisition of control is the day after the year ends, both subsection 111(5.5) answers must be given first. Where subsection 111(5.5) switches off only the designations (another provision named), aocPropertyDesignations entries are ignored, so the hold applies even when they match. A row with these cells and no other activity stays out of the continuity. |
| `assetData[].aocFmvOfClass` | null \| number \| string |  | Fair market value of all property of the class immediately before an acquisition of control, as a non-negative amount; conflicting values in one class are refused. It sets the ITA 111(5.1) write-down and the ITA 111(4)(e) exclusion test where the acquisition of control falls after the first day of this taxation year and no later than its last day, or on the day after it ends. Without fiscalStart and fiscalEnd nothing is computed. Nothing is computed for an acquisition of control on the first day of the year, because this return is then the post-acquisition stub. Nothing is computed either when subsection 111(5.5) switches the write-down off: aocBecomesOrCeasesExemptAtEvent true, or aocMainReasonIsToCauseProvisionToApply true with 111(5.1) or no provision named in aocMainReasonTargetedProvision. Where the acquisition of control is the day after the year ends, both subsection 111(5.5) answers must be given first. Blank, neither is computed, and filing readiness is held if designations are supplied or the pre-acquisition stub's UCC exceeds the CCA otherwise allowed. |
| `assetData[].assetClass` | array \| boolean \| null \| number \| object \| string |  | Asset class label from the fixed-asset register, as text (for example Computer equipment). It is one of the row's words for the Reg 1102(1) exclusion and Class 10 passenger-vehicle questions, is passed to each cohort of a multi-cohort row, and names the row in the ITA 13(7)(e) deemed-cost notes when it has no description or assetDescription. A label of land, vacant land, raw land or land (non-depreciable) holds the class under Reg 1102(2), as does a blank label with isLand unanswered. |
| `assetData[].assetCount` | null \| number |  | Number of properties this row still holds in the class at year end, as a non-negative JSON integer (anything else is refused). An explicit 0 states that no property remains; 0 is refused with a positive closingCost or with additions the disposition figures do not cover (with one addition cohort, the row's overlaid by the cohort's). Without a count, a row counts one property when it states a positive closingCost or additions its disposition figures do not cover, and none when it states a closingCost of 0 or disposition figures that cover its additions. An ITA 20(16)(b) terminal loss needs every row of the class to count none, by an explicit 0 or either of those. A class that counts no property left but keeps UCC is held when any row without a count states neither a closingCost nor disposition figures covering its additions. On a row with several additionCohorts each cohort's own count is read instead of the row's. A Schedule IV to VI resource pool is held without a count, and its rows must state the same count or the request is refused. |
| `assetData[].assetDescription` | array \| boolean \| null \| number \| object \| string |  | Description of the property, as text. It is one of the row's words that decide whether Reg 1102(1) exclusion questions or the Class 10 passenger-vehicle question must be answered or can default. The ITA 13(7)(e) deemed-cost notes name the row by its words (description first, then assetDescription, then assetClass) with its propertyId. With one addition cohort the cohort takes the row's value unless it states its own. With several, the row's value is not passed to the cohorts; each cohort may state its own. |
| `assetData[].availableForUseByRolling13_27_bOr13_28_c` | boolean \| null \| string |  | Whether the addition became available for use by reason of the ITA 13(27)(b) or 13(28)(c) rolling rule, as true, false or null. True keeps it out of the Reg 1100(2) element F half-year reduction and gives a Class 13 addition its full first-year amount. Null on an addition with no AIIP, RIIP or Class 54 to 56 enhancement, acquired more than 357 days before the year began, applies the half-year reduction and holds filing readiness. A Class 7 Canadian vessel under Reg 1100(1)(v) that became available for use this year and is not AIIP or RIIP is different. There a null holds the class with no allowance whatever the acquisition date, and true selects the one-third rate instead of one-sixth. |
| `assetData[].availableForUseDate` | array \| boolean \| null \| number \| object \| string |  | Date the property became available for use, as YYYY-MM-DD. On a row with additions it is required, may not precede acquisitionDate and must fall within this taxation period, or the request is refused (a Schedule IV to VI resource row missing it is held instead). It sets the first-year factor and the immediate-expensing (DIEP) gate, and the in-period rule means an addition enters UCC only in the year the property becomes available for use (ITA 13(26)). |
| `assetData[].bookCostRemovalSigned` | null \| number \| string |  | Gross book cost removed from the fixed-asset continuity this year, as zero or a negative amount; a positive value is refused. A nonzero value is disposition evidence, so taxUccReductionOnDisposition must then be stated (0 allowed) or the request is refused. Where its size covers the row's additions it shows they left the class, for the ITA 20(16) property count and for an assetCount of 0. Enter the tax reduction in taxUccReductionOnDisposition, not here. |
| `assetData[].buildingNotUsedOrAcquiredForUseByAnyPersonBeforeMarch19_2007` | array \| boolean \| null \| number \| object \| string |  | For a Class 1-NRB or 1-MP building: whether no person or partnership used it, or acquired it for use, before March 19, 2007, as true, false or null. False makes it ineligible for the Reg 1101(5b.1) separate class and holds the class; null holds it when the class has additions this year. Reg 1104(2). |
| `assetData[].businessCeased` | boolean \| null \| string |  | For Class 14.1: whether the business has ceased, as true, false or null. Read when no property of the class remains: true allows the terminal loss, false keeps the pool because ITA 13(34)(a) deems a goodwill property to remain, and null holds filing readiness. Rows of one class must agree. ITA 20(16.1)(c). |
| `assetData[].businessProvidesPropertyForHireOrReward` | boolean \| null \| string |  | Whether the corporation's ordinary business is providing this yacht, camp, lodge or golf property for hire or reward, as true, false or null. Read only when isYachtCampLodgeGolfCourseOrFacility is true; any answer other than true then holds the class, since ITA 18(1)(l) and Reg 1102(1)(f) exclude the property. |
| `assetData[].canadianFilmProductionIncomeBeforeCca` | null \| number \| string |  | For a Class 10 Canadian film or video production in its Reg 1101(5k.1) separate class: the production's income after non-CCA expenses and before this year's CCA, as a non-negative amount. Required on each property row answering isReg1101_5k_1CanadianFilmProduction true (a blank holds the class) and refused on a row answering it false. The rows' amounts are summed as the income that limits the Reg 1100(1)(m) additional allowance. |
| `assetData[].canadianVesselCapitalCost` | null \| number \| string |  | For a Class 7 Canadian vessel in its own Reg 1101(2a) class (isVessel true, every vessel condition met, no structured financing): the vessel's capital cost, as a non-negative amount. The Reg 1100(1)(v) allowance applies its rate to this cost rather than to the opening UCC, capped at the UCC left after any immediate expensing. The class reads the first value any of its rows states. A blank holds the class, and a negative amount is refused. A row with several additionCohorts may state it only as every cohort does (refused otherwise): state it on each vessel's cohort. |
| `assetData[].capitalCostOfBuildingAndAdditionsInClasses3_6_20` | null \| number \| string |  | For a Class 3(k) building addition: capital cost of the building and of every addition or alteration to it in Class 3, 6 or 20, leaving out the paragraph (k) additions being measured, as an amount. The ceiling is the lesser of $500,000 and 25% of it; null holds the class. Also used for the Class 3 share of a Class 6(k) overflow. |
| `assetData[].capitalCostRolloverProvision` | array \| boolean \| null \| number \| object \| string |  | Text: "85(5)" or "97(4)" when this addition was acquired under section 85 or subsection 97(2); any other value is refused, and blank applies neither rule. When the transferor's capital cost immediately before the transfer (transferorCapitalCostImmediatelyBefore, which holds the class when blank) exceeds the agreed amount in the row's additions, the capital cost becomes the transferor's capital cost and the excess is deemed prior CCA (ITA 85(5) or 97(4)). |
| `assetData[].cappedVehicleCount` | array \| boolean \| null \| number \| object \| string |  | For a Class 54 zero-emission passenger vehicle addition: how many vehicles it covers, as a non-negative JSON integer, for the ITA 13(7)(i) per-vehicle cost limit. Read only when the addition exceeds one prescribed amount: a count above one holds the class until each vehicle is its own addition cohort. Blank or 0 falls back to the row's assetCount, then to one vehicle. On a cohort of a multi-cohort row, blank or 0 holds the class. |
| `assetData[].ccaClaimedOverride` | array \| boolean \| null \| number \| object \| string |  | CCA elected for the row's class, as a non-negative amount. Rows of one ccaClass are summed into the class's override, which must equal any ccaOverrides entry for that class and is refused where the class number holds more than one separate class this year. It is refused above the computed maximum; a Class 13 or 14 pool needing manual determination is capped instead at its available UCC (Class 13 also at its known Schedule III ceiling). Without one the engine claims the maximum. |
| `assetData[].ccaClass` | array \| boolean \| null \| number \| object \| string |  | CCA class of the row, as class number text (for example 8, 10.1, 14.1, or a separate-class key such as 1-NRB). Rows are pooled by it, with any separate-class identity, and rated by it; a class outside the engine's catalogue gets no allowance and holds filing readiness. A row without it is refused when it carries additions or another amount the engine checks for sign (canadianVesselCapitalCost among them), bookCostRemovalSigned, assetCount, acquisitionDate, availableForUseDate or most class-determining answers (for example isVessel, isBuilding, isLand or wasDIEP). Other cells on a row without it are ignored, for example ccaClaimedOverride, lifeExpiryDate, leaseEndDate, cappedVehicleCount, acquiredForIncomePurpose or isZeroEmissionPassengerVehicle. A date outside the class's Schedule II acquisition window is refused, or holds the class for a Class 1, 3 or 6 building. |
| `assetData[].changeOfUseEventId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the ITA 13(7)(d) change-of-use event a row records. The engine sets it on the acquisition and disposition rows it derives from the change-of-use workpaper; a submitted row, or any of its addition cohorts, carrying an event ID the workpaper also derives is refused, and a row or cohort carrying one is never the host property for a derived event. |
| `assetData[].claimsClass431ElectricalStorage` | boolean \| null \| string |  | On a Class 43.1 or 43.2 property: whether it claims the Class 43.1(d)(xviii) energy storage limb, as true, false or null; another value is refused. Blank holds the class when the property states a storage fact. True holds the class unless acquisitionDate and availableForUseDate are stated, storageFixedLocation, storagePrimaryPurposeConfirmed and storageEnergyConditionMet are true, and storageExcludedCategory names no exclusion that applies. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].claimsEligibleTransmissionEquipment` | boolean \| null \| string |  | On a Class 43.1 or 43.2 property: whether it claims the eligible transmission equipment inclusion S.C. 2026, c. 3 added to Class 43.1, as true, false or null; another value is refused. Blank holds the class when the property states isBuilding, class431Subparagraph, usedWithEligibleGenerationEquipment, eligibleGenerationEnergyTransmittedPct or transmittedEnergyFromEligibleGenerationPct. True holds the class unless acquisitionDate and availableForUseDate are on or after November 17, 2025, class431Subparagraph names an affected subparagraph, isBuilding is false, usedWithEligibleGenerationEquipment is true and both energy shares exceed 75%. A row with several additionCohorts may state it only as every cohort does (refused otherwise): state it on each cohort, whose property unit must prove those facts itself. |
| `assetData[].class12CostPerItem` | null \| number \| string |  | Capital cost of each individual item of Class 12 paragraph (c), (e) or (h) property, as an amount. Required when class12ParagraphCEHProperty is true (null holds the class); a cost above the $500 per-item ceiling also holds it, as the property belongs in its other class. Sch II Cl. 12(c)/(e)/(h). |
| `assetData[].class12ParagraphCEHProperty` | boolean \| null \| string |  | Whether this Class 12 property is described in Schedule II Class 12 paragraph (c), (e) or (h), as true, false or null. Asked on every Class 12 property; null holds the class. True requires class12CostPerItem for the $500 per-item ceiling. |
| `assetData[].class12ParagraphExcludedFromHalfYear` | array \| boolean \| null \| number \| object \| string |  | Whether this Class 12 addition falls in a paragraph that Reg 1100(2) element F(b)(i) keeps out of the half-year rule (for example a lending-library book, not software under paragraph (o)), as true, false or null. True takes no half-year reduction; null is provisionally reduced and holds the class when the answer would change the claim. |
| `assetData[].class15AcquiredForCuttingAndRemovingMerchantableTimber` | boolean \| null \| string |  | Schedule II Class 15(a) condition for a Schedule IV (Class 15 timber-cutting) resource pool: whether the property was acquired to cut and remove merchantable timber, as true, false or null. Only true establishes Class 15 eligibility; false or null holds the class. Conflicting answers across the pool's rows are refused. |
| `assetData[].class15ElectionToExclude` | boolean \| null \| string |  | Whether the corporation elected to exclude the property from Class 15 under Schedule II Class 15(c), as true, false or null. A Schedule IV (Class 15 timber-cutting) resource pool qualifies only on false; true or null holds the class. Conflicting answers across the pool's rows are refused. |
| `assetData[].class15NoFurtherUseAfterTimberRemoved` | boolean \| null \| string |  | Schedule II Class 15(b) condition for a Schedule IV (Class 15 timber-cutting) resource pool: whether the property has no further use once the timber is removed, as true, false or null. Only true establishes Class 15 eligibility; false or null holds the class. Conflicting answers across the pool's rows are refused. |
| `assetData[].class1Pre1988ScheduleIIEligibilityConfirmed` | boolean \| null \| string |  | For a building added to Class 1 that was acquired before 1988, outside the Class 1(q) building paragraph: true confirms another Class 1 paragraph applies and keeps it in the class; false or null holds the class. Read only where isBuilding is true. |
| `assetData[].class29PriorYearAvailableForUseCapitalCost` | array \| boolean \| null \| number \| object \| string |  | Capital cost of Class 29 property that became available for use in the preceding year, as a non-negative amount; enter 0 when none. Reg 1100(1)(ta)(ii)(B) caps the Class 29 allowance with it, so null claims no Class 29 allowance and holds the class rather than lifting the cap. |
| `assetData[].class29PriorYearDesignatedCapitalCost` | array \| boolean \| null \| number \| object \| string |  | The part of class29PriorYearAvailableForUseCapitalCost that was Reg 1100(1)(ta) designated property, other than designated property acquired in a specified transaction (ITA 85(5), 87(1), 88(1), 97(4), 98(3) or 98(5)), as a non-negative amount; enter 0 when none. Designated property is property Reg 1100(2.1)(g) or (2.2)(j) deems designated and property described in Reg 1100(2) F(b)(iii) to (v) (specified leasing property, ITA 16.1(1)(b) property, property available for use under ITA 13(27)(b) or (28)(c)). Reg 1100(1)(ta)(ii)(B)(II) offsets it at 50% instead of 75%. Where the preceding-year amount is more than 0, null claims no Class 29 allowance and holds the class. With class29PriorYearDesignatedSpecifiedTransactionCapitalCost it cannot exceed class29PriorYearAvailableForUseCapitalCost (refused otherwise). |
| `assetData[].class29PriorYearDesignatedSpecifiedTransactionCapitalCost` | array \| boolean \| null \| number \| object \| string |  | The part of class29PriorYearAvailableForUseCapitalCost that was Reg 1100(1)(ta) designated property acquired in a specified transaction (ITA 85(5), 87(1), 88(1), 97(4), 98(3) or 98(5)), as a non-negative amount; enter 0 when none. Reg 1100(1)(ta)(ii)(B) leaves it out of both the 50% allowance and the offset. Where the preceding-year amount is more than 0, null claims no Class 29 allowance and holds the class. With class29PriorYearDesignatedCapitalCost it cannot exceed class29PriorYearAvailableForUseCapitalCost (refused otherwise). |
| `assetData[].class3Or6OverflowClassOpeningUcc` | null \| number \| string |  | Opening UCC of the class that receives a paragraph (k) overflow (Class 3 for Class 6(k), Class 1 for Class 3(k)), as a non-negative amount; enter 0 when nil. With class3Or6OverflowClassPriorCcaHistoryConfirmed true it is required before the engine splits an overflow, or the request is refused. It must equal the opening UCC pool supplied for that class without a propertyId, if there is one (refused otherwise); pools of that class with a propertyId are not compared. With no such pool, a positive value becomes that class's opening UCC. |
| `assetData[].class3Or6OverflowClassPriorCcaHistoryConfirmed` | boolean \| null \| string |  | Whether the prior-CCA history of the class receiving a Class 3(k) or 6(k) overflow is complete, as true, false or null. The engine splits an overflow only with true and class3Or6OverflowClassOpeningUcc; otherwise the request is refused. On a row with no additions this year, true carries an earlier split forward when opening UCC pools exist for both this class and the receiving class. |
| `assetData[].class3Or6ParagraphKSplitRole` | array \| boolean \| null \| number \| object \| string |  | Marks a row already split under Schedule II Class 3(k)/6(k): source for the portion paragraph (k) admits, overflow for the part in the receiving class. The engine sets it when it splits a row and the value carries forward; a marked row is not split or ceiling-tested again. Any other value is refused. |
| `assetData[].class3Or6PostCapAdditionsAndAlterationsApply` | boolean \| null \| string |  | On a Class 3 or Class 6 property: whether it is an addition or alteration to a building under Schedule II Class 6(k) (after 1978) or 3(k) (after 1987), as true, false or null. Null holds the class. True brings in the dollar ceiling test on aggregateCostOfAdditionsAndAlterationsToBuilding. |
| `assetData[].class3Pre1990TransitionalBuildingConditionMet` | boolean \| null \| string |  | For a building added to Class 3 that was acquired in 1988 or 1989: whether the Schedule II Class 3(a) transitional condition is met, as true, false or null. Anything but true holds the class (move it to Class 1). Read only where isBuilding is true. |
| `assetData[].class431Subparagraph` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property whose claimsEligibleTransmissionEquipment is true: the Class 43.1 paragraph (d) subparagraph that includes it, as text such as d(v). The test passes only for d(ii), d(v), d(vi), d(vii), d(xiv) or d(xix); any other value, or blank, holds the class. A value stated while that claim is blank also holds the class. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].class43AssetDetails` | array \| boolean \| null \| number \| object \| string |  | For Class 43.1 or 43.2: list of CRA Schedule 8 line 301 to 303 entries, each with assetTypeCode (01 to 20), provinceCode and percentageAllocated (above 0, at most 100); a code or percentage outside those ranges is refused. A class with additions and no complete entry, an entry missing a value, or percentages not totalling 100 holds filing readiness; missing values are never defaulted. |
| `assetData[].class44CapitalCostDeterminedByUse` | boolean \| null \| string |  | Whether part or all of this Class 44 patent's capital cost is determined by reference to use, as true, false or null. Asked on every Class 44 property; null holds the class. True replaces the 25% declining-balance allowance with Reg 1100(9.1), which needs class44UseDeterminedCapitalCostInYear and class44CumulativeUseDeterminedCapitalCost. |
| `assetData[].class44CumulativeUseDeterminedCapitalCost` | null \| number \| string |  | Total use-determined Class 44 capital cost for this year and all preceding years, as an amount no less than class44UseDeterminedCapitalCostInYear (a lower total is refused). Required for the Reg 1100(9.1) allowance; null holds the class. The 25% rate applies to the class's rate base (UCC after the half-year and incentive adjustments) less this total, the current-year use-determined amount is added, and the sum is capped at year-end UCC. |
| `assetData[].class44UseDeterminedCapitalCostInYear` | null \| number \| string |  | The part of the Class 44 capital cost determined by use for this year, as a non-negative amount (0 when nil). Required when class44CapitalCostDeterminedByUse is true; null holds the class rather than falling back to the 25% rate. Reg 1100(9.1) allows it plus 25% of the remaining base, capped at year-end UCC. |
| `assetData[].class6ParagraphKClass1OpeningUcc` | null \| number \| string |  | Opening UCC of the Class 1 pool that receives the part of a Class 6 building addition above both the Class 6(k) and Class 3(k) ceilings (Schedule II Cl. 6(k), 3(k)), as a non-negative amount; enter 0 when nil. Without it, or without class6ParagraphKClass1PriorCcaHistoryConfirmed true, that split is refused. It must equal the Class 1 opening UCC pool supplied without a propertyId, if there is one (refused otherwise); Class 1 pools with a propertyId are not compared. With no such pool, a positive value becomes Class 1's opening UCC. |
| `assetData[].class6ParagraphKClass1PriorCcaHistoryConfirmed` | boolean \| null \| string |  | Whether the receiving Class 1 pool's prior-CCA history is complete, for a Class 6 building addition that overflows through Class 3(k) into Class 1 (Schedule II Cl. 6(k), 3(k)), as true, false or null. True, with class6ParagraphKClass1OpeningUcc, is required before any current-year addition goes to Class 1, or the split is refused. On a row with no additions, true carries an earlier Class 1 split forward when the Class 3 split also carries and a Class 1 opening pool exists. |
| `assetData[].class6Post1978BuildingEligibilityMet` | boolean \| null \| string |  | For a building added to Class 6 that was acquired after 1978: whether a continuing Class 6(a) limb or a stated transitional condition still puts it in Class 6 (Schedule II Cl. 6(a)), as true, false or null, read only when isBuilding is true. Anything but true holds the class and points the building to Class 1(q). |
| `assetData[].closingCost` | null \| number \| string |  | Book cost of the row's property at year end, as a non-negative amount, not a tax figure. Without an assetCount on the row, a positive value counts one property remaining (no ITA 20(16) terminal loss) and an explicit 0 states none remains unless the row's additions are not covered by its disposition figures. A positive value with assetCount 0 is refused. With a nil tax reduction, a nonzero bookCostRemovalSigned and openingCost stated, a tied openingCost + additions - book removal = closingCost supplies disposedPropertyOriginalCost. If that continuity does not tie and proceedsOfDisposition is positive, the request is refused. |
| `assetData[].costIncurredTaxationYearEndDate` | array \| boolean \| null \| number \| object \| string |  | Last day of the taxation year in which a continuing Class 13 item's cost was incurred, as YYYY-MM-DD (Schedule III s.2(b)). Needed with costIncurredTaxationYearStartDate on a propertyCapitalCost row unless the preceding year-ends already reach that year; it must precede this year and agree with that chain, or the request is refused. Missing, the opening pool takes no continuing allowance and filing readiness is held unless a reviewed Class 13 ccaOverrides amount is supplied. |
| `assetData[].costIncurredTaxationYearStartDate` | array \| boolean \| null \| number \| object \| string |  | First day of the taxation year in which a continuing Class 13 item's cost was incurred, YYYY-MM-DD. Schedule III s.2(b) counts the amortization periods from this day, and the engine never substitutes an anniversary of this year's start. Needed with costIncurredTaxationYearEndDate unless the preceding year-ends reach that year; it must agree with that chain. |
| `assetData[].costIncurredTermEndDate` | array \| boolean \| null \| number \| object \| string |  | End date of the lease term that includes the end of the year a Class 13 cost was incurred, YYYY-MM-DD, entered when the cost fell after the original term (Schedule III s.3(b)). With hasRenewalTermAfterCostIncurredTerm it fixes the deemed lease-termination day; it cannot precede leaseEndDate and is required before nextSucceedingTermEndDate. |
| `assetData[].deemedAcquiredUnder16_1_1_bInPrecedingYear` | boolean \| null \| string |  | Whether the addition is property deemed acquired in a preceding year under ITA 16.1(1)(b) (Reg 1100(2) element F(b)(iv)), as true, false or null. True takes it out of the half-year reduction and the 50% Class 13 first-year amount. Null is read as not excluded, so the ordinary half-year reduction stays and a disclosed note asks for review. A Class 7 Canadian vessel under Reg 1100(1)(v) that became available for use this year and is not AIIP or RIIP is different. There a null on any of its additions holds the class with no allowance, and true selects the one-third rate instead of one-sixth. |
| `assetData[].description` | array \| boolean \| null \| number \| object \| string |  | Free-text description of the property on this row, as text. With the asset class, account names and GIFI description it forms the row's words, which decide whether the Reg 1102(1) inventory, listed-art, yacht/camp/lodge/golf and research questions and the Class 10 passenger-vehicle question must be answered or can default. The ITA 13(7)(e) deemed-cost notes name the row by it first. With one addition cohort the cohort's unit keeps it beside the cohort's own description. With several, it is not passed to the cohorts, whose words come from assetClass and each cohort's own description, assetDescription, account and GIFI fields. |
| `assetData[].disposedPropertyAcquiredBefore2017` | boolean \| null \| string |  | For a Class 14.1 disposition not covered by an ITA 13(39) listed rollover: whether the disposed property was acquired before 2017, as true, false or null. With disposedPropertyIsGoodwill it picks the paragraph limb of the ITA 13(39) deemed acquisition; null on non-goodwill property leaves that acquisition at nil and holds filing readiness. |
| `assetData[].disposedPropertyDeemed13_40Amount` | null \| number \| string |  | For a post-2016, non-goodwill Class 14.1 disposition whose disposedPropertyPost2016DeemedCostParagraph is 13(39)(b): the amount ITA 13(40) deems allowed under paragraph 20(1)(a), as a non-negative amount (0 when nil); a negative amount is refused. It is the third limb of the ITA 13(39) least-of deemed acquisition. Blank there leaves the deemed acquisition at nil and holds filing readiness. It is not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].disposedPropertyIsGoodwill` | boolean \| null \| string |  | For a Class 14.1 disposition not covered by an ITA 13(39) listed rollover: whether the disposed property is goodwill, as true, false or null. It picks the paragraph limb of the least-of deemed acquisition (1/4 of proceeds, 1/4 of capital cost, the paragraph amount); null leaves that acquisition at nil and holds filing readiness. |
| `assetData[].disposedPropertyOriginalCost` | null \| number \| string |  | Capital cost of the property this row disposed of, as a non-negative amount. Except for timber resource property, it is required when taxUccReductionOnDisposition is positive and caps it under ITA 13(21) element F, or the request is refused; it also feeds the ITA 13(39), 13(21.1), 13(21.2) and 13(7)(i) rules. When the tax reduction is nil, a tied openingCost + additions - book removal = closingCost supplies it, and a stated value that conflicts is refused. |
| `assetData[].disposedPropertyPost2016DeemedCostParagraph` | array \| boolean \| null \| number \| object \| string |  | For a post-2016, non-goodwill Class 14.1 disposition: the ITA 13(39) paragraph that gives the third least-of limb, as the text 13(39)(b), 13(39)(c) or Neither. (b) then needs disposedPropertyDeemed13_40Amount and (c) disposedPropertyRolloverTransferorDeemedCost; any other value leaves the deemed acquisition at nil and holds filing readiness. |
| `assetData[].disposedPropertyRolloverTransferorDeemedCost` | null \| number \| string |  | For a post-2016, non-goodwill Class 14.1 disposition whose disposedPropertyPost2016DeemedCostParagraph is 13(39)(c): the capital cost the transferor in a rollover acquisition would have been deemed to acquire the property at, as a non-negative amount (0 when nil); a negative amount is refused. It is the third limb of the ITA 13(39) least-of deemed acquisition. Blank there leaves the deemed acquisition at nil and holds filing readiness. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].dispositionAcquirerReg1100_2_2_hApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the acquirer of the disposed property qualifies for Reg 1100(2.2)(h), as true, false or null. True excludes this row's UCC reduction from element G under Reg 1100(2.3), while the reduction still lowers the pool. Null on a disposing row holds filing readiness when the class has element F or incentive additions. |
| `assetData[].dispositionDate` | array \| boolean \| null \| number \| object \| string |  | Date the row's property was disposed of, as YYYY-MM-DD text. Only the ITA 247(2.1) capital-cost adjustment reads it: when a transfer-pricing basis adjustment to this property says it was disposed of in the year, the request is refused unless this date equals the adjustment's through date. It does not otherwise change the computation. |
| `assetData[].dispositionIsArmsLength` | boolean \| null \| string |  | Whether a vehicle's disposition was at arm's length, as true, false or null (ITA 13(7)(i)(ii)). Read for a Class 54 zero-emission passenger vehicle, or a Class 10.1 vehicle with isDIEP or wasDIEP true, whose cost exceeds the prescribed amount, once its disposition figures and limit fields are stated. It sets the cap on taxUccReductionOnDisposition: true scales proceeds by deemed over actual cost, false leaves them unscaled; a reduction above the cap is refused, and null holds the class. |
| `assetData[].dispositionIsGiftToQualifiedDonee` | boolean \| null \| string |  | Whether the row's disposition was a gift of the property to a qualified donee, as true, false or null. True adds the class's ITA 13(1) recapture to the ITA 110.1(1)(a) recapture-on-gifts amount Schedule 8 publishes. On a row or addition cohort reporting a disposition, null leaves that amount unproven (published as null), and Schedule 2 then raises an error when its line 230 carries recapture. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].dispositionOutlaysAndExpenses` | null \| number \| string |  | Outlays and expenses made or incurred to make the disposition, as a non-negative amount. Where proceedsOfDisposition is stated and this is positive, a taxUccReductionOnDisposition above proceeds net of it is refused (ITA 13(21) element F). On timber resource property a disposition without it is refused, and taxUccReductionOnDisposition must equal net proceeds (element G). On a stop-loss row with affiliatedStopLossDeemedProceeds, blank holds the class; once stated, the class is reduced by the deemed proceeds less this amount. Where ITA 13(21.1) deems the building proceeds, the class is reduced by those deemed proceeds less this amount, capped at capital cost. It also enters the ITA 13(7)(i) element F cap for a Class 54 or capped Class 10.1 vehicle. Like other disposition amounts, a nonzero value on a row with several additionCohorts is refused. |
| `assetData[].dispositionReconciliationId` | array \| boolean \| null \| number \| object \| string |  | The W08 Row ID of this disposal, as text, repeated on each Schedule 6 row for the same sale. Blank falls back to the row's own key, and an ID that differs from that key breaks the link. Where the row's proceeds exceed its taxUccReductionOnDisposition, or are blank on a row that reports a disposition, at least one linked Schedule 6 row must exist, each must state proceeds, cost base and outlays, and their proceeds must sum exactly to this row's gross proceeds; otherwise filing readiness is held. Timber resource property, including Class 33, needs no Schedule 6 link (ITA 39(1)(a)(iv)). On a saved W08 row, Schedule 31's SR&ED recapture also reads it as the disposition's identifier, and as the property identifier when propertyId is blank. |
| `assetData[].eligibleCapitalPropertyBefore2017` | boolean \| null \| string |  | Whether a Class 14.1 row includes property that was eligible capital property before 2017 (ITA 13(38)), as true, false or null. True for a taxation year ending before 2027 engages the Reg 1100(1)(c.1) transitional review, so the engine refuses the transitional amounts until that history is supplied; false and null leave the row as entered. |
| `assetData[].eligibleGenerationEnergyTransmittedPct` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property whose claimsEligibleTransmissionEquipment is true: the share of the electrical energy generated by the eligible generation equipment that this equipment transmits on an annual basis, as a percentage. The test needs more than 75; 75 or less, a value outside 0 to 100, a value that is not a number, or blank holds the class. A value stated while that claim is blank also holds the class. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].eligibleGreenhouseElectionMade` | boolean \| null \| string |  | Whether the Reg 1101(5w) election was made, as true, false or null. Yes puts the greenhouse in its own class and is refused without propertyId or outside Class 6 or 8. On an addition, Yes is refused beside isGreenhouse and isAdditionOrAlterationToGreenhouse both No; for greenhouse property acquired after November 3, 2025 blank holds the class; Yes holds it unless that date and the Reg 1104(2) facts are proven, then the Reg 1100(1)(ze) allowance replaces the ordinary rate. |
| `assetData[].eligibleGreenhouseLocatedInCanada` | boolean \| null \| string |  | Reg 1104(2)(a) eligible-greenhouse fact: whether the greenhouse is located in Canada, as true, false or null. It is read only for eligibleGreenhouseElectionMade Yes on a Class 6 or 8 addition acquired after November 3, 2025, and for the Reg 1102(28) rule once eligibleGreenhouseUnderConstructionOnNovember4_2025 is Yes. There, blank holds the class, and No makes the greenhouse ineligible, which also holds the class. |
| `assetData[].eligibleGreenhouseNoPriorCcaOrTerminalLossDeduction` | boolean \| null \| string |  | Reg 1104(2)(d)(i) eligible-greenhouse fact: whether no CCA or terminal loss was previously deducted for the property, as true, false or null. Yes satisfies paragraph (d) on its own, even where the Reg 1102(20.1) purpose fact is Yes; otherwise the three (d)(ii) facts must all hold. It is read only where the Reg 1101(5w) election or the Reg 1102(28) rule is tested, and there blank or No holds the class unless all three (d)(ii) facts hold. |
| `assetData[].eligibleGreenhouseNoPriorDeemedCcaOrUccReduction` | boolean \| null \| string |  | Reg 1104(2)(d)(ii)(A) eligible-greenhouse fact: whether no prior deemed CCA or UCC reduction applies to the property, as true, false or null. Where (d)(i) is not Yes, paragraph (d) needs this Yes, the (d)(ii)(B) ownership fact Yes and the Reg 1102(20.1) purpose fact No. It is read only where the Reg 1101(5w) election or the Reg 1102(28) rule is tested, and there blank or No holds the class unless (d)(i) is Yes. |
| `assetData[].eligibleGreenhouseNoPriorOwnershipByTaxpayerOrNonArmsLengthPerson` | boolean \| null \| string |  | Reg 1104(2)(d)(ii)(B) eligible-greenhouse fact: whether neither the taxpayer nor a non-arm's-length person previously owned the property, as true, false or null. Where (d)(i) is not Yes, paragraph (d) needs this Yes, the (d)(ii)(A) fact Yes and the Reg 1102(20.1) purpose fact No. It is read only where the Reg 1101(5w) election or the Reg 1102(28) rule is tested, and there blank or No holds the class unless (d)(i) is Yes. |
| `assetData[].eligibleGreenhousePreNovember4_2025UndeductedCapitalCost` | null \| number \| string |  | Capital cost incurred before November 4, 2025 on a greenhouse under construction that day and not deducted under ITA 20(1)(a), as a non-negative amount (0 when nil), kept out of additions. Unless elected out, Reg 1102(28) adds it as cost incurred November 4, 2025 in the available-for-use year. Once construction is Yes and eligibility is proven, blank holds the class. On a Class 6 or 8 isGreenhouse Yes row available for use in the year, or later if acquired in the year, a positive amount beside construction No is refused. On such a row with no availableForUseDate, any stated amount, even 0, holds the class. On such a row available for use before the year, or after it but acquired before it, the amount is not read. A positive amount holds the class on a row outside Class 6 or 8 or without isGreenhouse Yes. |
| `assetData[].eligibleGreenhouseQualificationAvoidancePurpose` | boolean \| null \| string |  | Reg 1102(20.1) purpose fact for an eligible greenhouse. true/false/null. Yes defeats the Reg 1104(2)(d)(ii) route but not a proven (d)(i); the (d)(ii) route needs No. Blank holds the class only while paragraph (d) is open and the Reg 1101(5w) election or the Reg 1102(28) rule is in play. |
| `assetData[].eligibleGreenhouseReg1102_28ElectionOut` | boolean \| null \| string |  | Whether the acquisition-year return elected out of Reg 1102(28), as true, false or null. Yes keeps eligibleGreenhousePreNovember4_2025UndeductedCapitalCost out of the greenhouse's cost. Blank holds the class once a positive pre-cutoff cost is in issue on an eligible greenhouse under construction on November 4, 2025. On a Class 6 or 8 isGreenhouse Yes row available for use in the year, or later if acquired in the year, Yes beside eligibleGreenhouseUnderConstructionOnNovember4_2025 No is refused. On such a row with no availableForUseDate, or available for use before the year, or after it but acquired before it, Yes is not read. On a row outside Class 6 or 8, or without isGreenhouse Yes, Yes holds the class. |
| `assetData[].eligibleGreenhouseScheduleIIClassConditionMet` | boolean \| null \| string |  | Reg 1104(2)(c) eligible-greenhouse fact: whether the property meets the Class 6(d) or Class 8(m) condition, as true, false or null. It is read only for eligibleGreenhouseElectionMade Yes on a Class 6 or 8 addition acquired after November 3, 2025, and for the Reg 1102(28) rule once eligibleGreenhouseUnderConstructionOnNovember4_2025 is Yes. There, blank holds the class, and No makes the greenhouse ineligible, which also holds the class. |
| `assetData[].eligibleGreenhouseUnderConstructionOnNovember4_2025` | boolean \| null \| string |  | Whether the greenhouse was under construction on November 4, 2025 (Reg 1102(28)), as true, false or null. It applies to a Class 6 or 8 isGreenhouse Yes row available for use in the year, or later if acquired in the year. There, blank holds the class, and No beside a positive pre-cutoff cost or an election-out is refused. Yes needs the eligibility facts, then adds the pre-cutoff cost unless elected out. Yes holds the class on a row outside Class 6 or 8, on a row without isGreenhouse Yes, or on a Class 6 or 8 isGreenhouse Yes row with no availableForUseDate. On a Class 6 or 8 isGreenhouse Yes row available for use before the year, or after it but acquired before it, the field is not read. |
| `assetData[].eligibleLiquefactionActivitiesIncomeBeforeCca` | null \| number \| string |  | The eligible LNG facility's Reg 1104(18) income before current-year CCA, as a non-negative amount (0 when nil), on a pool with liquefactionReg1101SeparateClass selected. It is one amount for the facility: a value stated on any row or cohort of the facility applies to both its Class 1 and Class 47 pools, and different values are refused, naming each input. It caps the Reg 1100(1)(a.3)/(yb) additional allowances at this income less the facility's basic and immediate-expensing CCA. Blank on every row and cohort of the facility keeps the basic Class 1 or 47 allowance, computes no additional allowance and holds filing readiness. |
| `assetData[].evChargingStationContinuousPowerKw` | null \| number \| string |  | The charging station's continuous power in kilowatts, as a non-negative number, read on a Class 43.1 or 43.2 row answered isElectricVehicleChargingStation Yes and isAncillaryToElectricVehicleChargingStations not Yes. Class 43.2 needs at least 90 kW and Class 43.1 more than 10 kW (Schedule II Cl. 43.1(d)(xvii), 43.2). A blank, a rating of 10 kW or less on Class 43.1, or a rating under 90 kW on Class 43.2 holds the class with no allowance. |
| `assetData[].firstRenewalEndDate` | array \| boolean \| null \| number \| object \| string |  | End date of the Class 13 lease's first renewal term, as YYYY-MM-DD (Schedule III s.3(b)). A date before leaseEndDate is refused. With no costIncurredTermEndDate and an original term that includes the end of the year the cost was incurred, it is the deemed termination day, and hasLeaseRenewalOption No beside it is refused. Where costIncurredTermEndDate equals leaseEndDate, or falls before this date, hasRenewalTermAfterCostIncurredTerm No is refused, and a stated nextSucceedingTermEndDate must equal this date or the input is refused. |
| `assetData[].firstRenewalYears` | null \| number \| string |  | Years in the Class 13 lease's first renewal term, as a non-negative number. Display only: with leaseTermYears it sets the pooled Class 13 rate shown on the schedule for a row whose lease dates give no Schedule III termination day. It never reaches the claim, which runs on the lease dates. Refused on an addition cohort. On a saved W08 row it is also refused when hasLeaseRenewalOption is No and it is above 0, or when hasLeaseRenewalOption is Yes and it is 0. |
| `assetData[].gifiDescription` | array \| boolean \| null \| number \| object \| string |  | The GIFI description of the account the row was booked to, as text. It is read only as part of the row's words, with assetClass, description, assetDescription and the account fields, which decide whether a blank isInventory, section37DeductionAllowedForAcquisitionExpenditure, reg1102_1_eListedArtOrAntiqueExclusionApplies or isYachtCampLodgeGolfCourseOrFacility defaults to No or holds the class, and whether a blank isPassengerVehicle on a Class 10 addition reads as No. |
| `assetData[].hasLeaseRenewalOption` | boolean \| null \| string |  | Whether the tenant holds a right to renew the Class 13 lease (Schedule III s.3(b)), as true, false or null. With no costIncurredTermEndDate and an original term that includes the end of the year the cost was incurred, No makes leaseEndDate the termination day and a renewal right makes firstRenewalEndDate it; No beside firstRenewalEndDate is refused. Where costIncurredTermEndDate equals leaseEndDate, Yes makes a hasRenewalTermAfterCostIncurredTerm of No refused. Blank without firstRenewalEndDate gives that item no claim and, without ccaOverrides, holds filing readiness. On a saved W08 row, No beside a firstRenewalYears above 0, or Yes beside a firstRenewalYears of 0, is refused. |
| `assetData[].hasRenewalTermAfterCostIncurredTerm` | boolean \| null \| string |  | For a Class 13 cost incurred in the lease term ending costIncurredTermEndDate: whether a renewal term follows it (Schedule III s.3(b)), as true, false or null. No makes costIncurredTermEndDate the termination day; Yes uses nextSucceedingTermEndDate. No is refused where firstRenewalEndDate, or hasLeaseRenewalOption Yes on the original term, shows a later term. Blank, or Yes without nextSucceedingTermEndDate, gives the item no claim and, without ccaOverrides, holds filing readiness. |
| `assetData[].importedCcaPoolId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the Schedule 8 pool an imported asset page came from, set when a filed return or a vendor file seeds the fixed-assets register: the vendor's suffixed class token for a sub-pool (for example 10-a), or the pool's own identifier. It must start with the row's ccaClass and a hyphen and equal the row's propertyId, and no separate-class or Reg 1102(14) fact may give the row a different pool, or the request is refused. Pages sharing it are one pool, which the engine does not require to hold a single property, and the year's closing balances keep that pool under the same identifier for the next year. |
| `assetData[].incorporationCostExcessAddition` | null \| number \| string |  | The part of this row's Class 14.1 additions that is incorporation cost above the ITA 20(1)(b) deduction (ITA 13(35)), as a non-negative amount; a negative value is always refused. Its other checks run only when the incorporation-costs workpaper states its required Class 14.1 addition: then a value above the row's additions or a positive value outside Class 14.1 is refused, and the total across rows must equal the required addition or filing readiness is held. It does not change the class's additions. |
| `assetData[].isAIIP` | boolean \| null \| string |  | Whether the property is accelerated investment incentive property (Reg 1104(4): acquired after November 20, 2018 and before 2025, available for use before 2028) or, for property acquired after 2024, reaccelerated investment incentive property (Reg 1104(4.01): available for use before 2034), and meets condition (b)(i) or (b)(ii) of that definition. The acquisition date selects the definition, so answer Yes for a post-2024 acquisition that is RIIP; the key keeps its original name. Classes 54 to 56 are outside both definitions. Required inside either window; Yes outside both is refused. |
| `assetData[].isAdditionOrAlterationToGreenhouse` | boolean \| null \| string |  | Whether the property is an addition or alteration to a greenhouse that Reg 1102(27) treats as a separate greenhouse, as true, false or null. Yes, like isGreenhouse Yes, makes it greenhouse property for the Reg 1101(5w) election, but not for the Reg 1102(28) rule, which reads isGreenhouse alone. On a Class 6 or 8 addition acquired after November 3, 2025, an open status (neither answer Yes, not both No) holds the class unless eligibleGreenhouseElectionMade is No. |
| `assetData[].isAiipSolelyBecauseOfReg1104_4_b_i` | boolean \| null \| string |  | For accelerated investment incentive property acquired before 2025: whether it is AIIP only because it meets Reg 1104(4)(b)(i) (no amount was deducted on it under ITA 20(1)(a) or 20(16) by any person or partnership for a taxation year ending before the acquisition) and not also because of (b)(ii), for example property acquired from a non-arm's-length person who never claimed CCA on it. |
| `assetData[].isAncillaryToElectricVehicleChargingStations` | boolean \| null \| string |  | On a Class 43.1 or 43.2 row whose isElectricVehicleChargingStation is No: whether it is equipment used primarily with EV charging stations (Schedule II Cl. 43.1(d)(xvii)(C)(II)), as true, false or null. Blank holds the class. Yes needs minimumContinuousPowerKwOfServedEvChargingStations above 10 kW and, on Class 43.2, anyServedEvChargingStationAtLeast90Kw Yes, or the class is held. Yes beside a station Yes also holds the class. |
| `assetData[].isBuilding` | boolean \| null \| string |  | Whether the property is a building, as true, false or null. On a Class 1, 3 or 6 addition, blank holds the class, and Yes applies the Schedule II building paragraph's acquisition-date boundary, which can hold the class. On a purpose-built rental pool (isNewPurposeBuiltResidentialRental Yes) anything but Yes holds the class. On Class 43.1 or 43.2 any stated value makes claimsEligibleTransmissionEquipment required, and with that claim Yes anything but No holds the class. On a saved W08 row, Yes on Class 1, 3, 6, 20, 24 or 27 also makes the property Reg 4600 prescribed property for the Schedule 31 investment tax credit, and the Reg 4600(1) categories need Yes. |
| `assetData[].isDIEP` | boolean \| null \| string |  | Whether the addition is designated immediate expensing property (Reg 1104(3.1)(c)), as true, false or null. On an addition meeting the CCPC, class, acquired after April 18, 2021 and available for use before 2024 gates, blank is refused; Yes outside them is refused. Yes sends the addition to the Reg 1100(0.1) immediate expensing claim and its disposals to the DIEP proceeds column, and holds filing readiness until the DIEP coverage confirmation and an immediateExpensingAgreement exist. |
| `assetData[].isDiepSolelyBecauseOfReg1104_3_1_c_i` | boolean \| null \| string |  | For designated immediate expensing property: whether it is DIEP only because of Reg 1104(3.1)(c)(i). true/false/null. Yes requires preApril19_2021ExpenditureAmount, which Reg 1100(0.3) excludes from DIEP UCC unless the inventory-transfer exception applies. Blank cannot mean No and holds the class with no allowance. |
| `assetData[].isElectricVehicleChargingStation` | boolean \| null \| string |  | On a Class 43.1 or 43.2 row: whether the property is an electric vehicle charging station, as true, false or null. Yes requires evChargingStationContinuousPowerKw, above 10 kW for Class 43.1 and at least 90 kW for Class 43.2. Yes beside isAncillaryToElectricVehicleChargingStations Yes holds the class. No moves to the ancillary-equipment question. Blank holds the class with no allowance. |
| `assetData[].isFormerPropertyDeemedOwnedUnder13_4_3` | boolean \| null \| string |  | Whether the row is a former property elected under ITA 13(4.2) that ITA 13(4.3) deems still owned, as true, false or null. Yes puts it in its own Reg 1101(1ag) class and is refused without propertyId. Where the class would otherwise empty with UCC left, a blank, or Yes with similarPropertyAcquiredWithin24MonthsAndStillOwned blank, holds the class; Yes with that answer Yes keeps the pool, denies the terminal loss under ITA 20(16.1)(b) and holds filing readiness. Yes together with a railwayReg1101SeparateClass selection on the same row holds the class with no allowance. |
| `assetData[].isGreenhouse` | boolean \| null \| string |  | Whether the property is the corporation's actual greenhouse (Reg 1104(2)), as true, false or null. Yes, like isAdditionOrAlterationToGreenhouse Yes, makes it greenhouse property for the Reg 1101(5w) election; only isGreenhouse Yes opens the Reg 1102(28) rule, and construction facts on a row without it hold the class. On a Class 6 or 8 addition acquired after November 3, 2025, an open status (neither answer Yes, not both No) holds the class unless the election is No. |
| `assetData[].isIndustrialMineralMineOrRight` | boolean \| null \| string |  | On a Schedule V resource pool: whether the property is an industrial mineral mine or a right to remove industrial minerals (Reg 1100(1)(g)). true/false/null, one consistent value across the pool's rows. Anything but Yes holds the pool's resource allowance. |
| `assetData[].isInventory` | boolean \| null \| string |  | Whether the property is inventory, which Reg 1102(1)(b) excludes from every CCA class, as true, false or null. Yes holds the class. Blank is treated as No with a disclosed note unless the row's words name inventory or stock-in-trade, in which case it holds the class. On a Schedules IV-VI resource pool only an explicit No avoids a hold. |
| `assetData[].isLand` | boolean \| null \| string |  | Whether the property is land (Reg 1102(2)), as true, false or null. Yes, or an Asset Class that reads land, holds the class until the land is removed. No beside a land Asset Class is a contradiction that holds the class. Blank with no Asset Class holds the class with no allowance. On a saved W08 row linked to a Schedule 31 investment, No is also part of the evidence that the property is depreciable property. |
| `assetData[].isLeasingProperty` | array \| boolean \| null \| number \| object \| string |  | Whether the row is leasing property, as true or false (Yes/No text is also read); any other value is ignored. True counts as leasing property on the schedule: unless the Reg 1100(15) leasing income ceiling is supplied with no Reg 1101(5c) separate class, the coverage review's leasing-property rules question must be answered No, or filing readiness is held. It is not otherwise read. |
| `assetData[].isNewPurposeBuiltResidentialRental` | boolean \| null \| string |  | Whether the building is a new purpose-built residential rental (Reg 1104(2)), as true, false or null. Yes puts it in its own Reg 1101(1ac.1) class and is refused without propertyId. The class is held unless purposeBuiltResidentialRentalThroughoutYear is answered, isBuilding is Yes, the class is a building class (not 1-NRB, 1-MP or 1-LNG), the year ends after April 15, 2024 and no row is available for use after 2035; throughout-year Yes then adds the Reg 1100(1)(a.4) allowance. A row with assetCount above 1 holds the class. Where the same class number also carries an opening UCC with no propertyId and the rental's own class has none, that pooled opening must answer containsPurposeBuiltResidentialRentalUcc No, or every pool of that class number is held. If the pooled opening holds the rental's prior-year UCC, that balance belongs in the rental's own class. Yes together with a railwayReg1101SeparateClass selection on the same row holds the class with no allowance. |
| `assetData[].isPassengerVehicle` | boolean \| null \| string |  | Whether a Class 10 or 10.1 addition is an ITA 248(1) passenger vehicle, as true, false or null. On Class 10.1 blank reads as Yes and No holds filing readiness. On Class 10, blank reads as No at or below the Reg 7307(1) base or when the row's words name no passenger vehicle; above the base it holds the class when they name one or the row has no words. On Class 10, Yes needs passengerVehicleCostToTaxpayer and holds the class when that cost is above the prescribed amount. On Class 10.1, Yes caps the vehicle's cost at the prescribed amount instead. On either class, Yes takes a non-arm's-length acquisition to ITA 13(7)(h), not 13(7)(e). |
| `assetData[].isPassengerVehicleAcquiredNonArmsLength` | boolean \| null \| string |  | For a passenger vehicle addition: whether it was acquired non-arm's-length, as true, false or null. Yes applies ITA 13(7)(h): the vehicle's cost becomes the least of its fair market value, the transferor's cost amount and the Reg 7307(1) prescribed amount. propertyId, passengerVehicleCostToTaxpayer, nonArmsLengthVehicleFairMarketValue and nonArmsLengthTransferorCostAmount are then required, or the class is held. Blank follows acquiredFromNonArmsLengthPerson, which defaults to No when jacket boxes 162 and 171 are both No; both blank, or a disagreement, holds the class. |
| `assetData[].isPatentOrRightToUsePatentedInformation` | boolean \| null \| string |  | For a Class 44 property: whether it is a patent or a right to use patented information, as true, false or null; another value is refused. Anything but true on a property in the class holds Class 44 with no allowance (a franchise, concession or other limited-period licence is Class 14). Not read in another class. |
| `assetData[].isReg1101_5k_1CanadianFilmProduction` | boolean \| null \| string |  | Class 10 only: whether this is Class 10(x) Canadian film or video production property, which Reg 1101(5k.1) puts in one separate class, as true, false or null; Yes on another class is refused. Yes moves it to that class and requires canadianFilmProductionIncomeBeforeCca, which caps the Reg 1100(1)(m) additional allowance; a blank income then holds the class, and an income stated beside No is refused. Blank on a Class 10 property row holds the class. |
| `assetData[].isRiipSolelyBecauseOfReg1104_4_01_b_i` | boolean \| null \| string |  | For reaccelerated investment incentive property acquired after 2024: whether it is RIIP only because it meets Reg 1104(4.01)(b)(i) (no amount was deducted on it under ITA 20(1)(a) or 20(16) by any person or partnership for a taxation year ending before the acquisition) and not also because of (b)(ii), for example property acquired from a non-arm's-length person who never claimed CCA on it. |
| `assetData[].isSeparateClassRentalPropertyReg1101_1ac` | boolean \| null \| string |  | Whether the property is a rental property costing $50,000 or more that Reg 1101(1ac) puts in its own separate class, as true, false or null. Yes gives the row its own pool keyed by propertyId unless a per-property or other prescribed separate class already applies; Yes is refused without propertyId or beside separateClassBusinessId. A Yes also needs the coverage review's rentalPropertySeparateClassApplicable answer to be Yes, or filing readiness is held. On a row with reg1101IncomeSourceType Property, blank leaves the Reg 1101 pool identity incomplete and holds the class. |
| `assetData[].isSeparateClassUnderITA37_6` | boolean \| null \| string |  | Whether ITA 37(6) puts the property in a separate prescribed class because an ITA 37(1) amount was claimed for it, as true, false or null; another value is refused. True puts the property in its own Schedule 8 pool keyed by ccaClass and propertyId, before the Reg 1101 separate-class rules are applied, and is refused without propertyId; false or null leaves the pool to the other rules. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].isSystemsSoftware` | boolean \| null \| string |  | Class 12 only: whether the property is systems software (true, false or null). Class 12(o) excludes systems software, which belongs in Class 50, so Yes holds the Class 12 claim, and so does a blank answer on a Class 12 property row. Tools, cutlery, moulds, dies and uniforms answer No. |
| `assetData[].isTimberLimitOrCuttingRight` | boolean \| null \| string |  | For a Schedule VI resource pool: whether the property is a timber limit or a right to cut timber (true, false or null). Reg 1100(1)(e) and Schedule VI need Yes here and No to isTimberResourceProperty; any other combination holds the pool. |
| `assetData[].isTimberResourceProperty` | boolean \| null \| string |  | Whether the property is timber resource property, as true, false or null. Yes makes a disposition reduce UCC by full net proceeds with no capital-cost cap (ITA 13(21) element G): proceedsOfDisposition and dispositionOutlaysAndExpenses are required and taxUccReductionOnDisposition must equal proceeds less outlays, or the input is refused; it also skips capital-gain routing (ITA 39(1)(a)(iv)). Class 33 implies Yes and refuses No; on a Schedule IV or VI pool anything but No holds the pool. |
| `assetData[].isVessel` | array \| boolean \| null \| number \| object \| string |  | Class 7 only: whether the property is a vessel, as true, false or null. Blank on a Class 7 property row holds the class. Yes with every Reg 1101(2a) condition met and no Reg 1101(2c) structured financing puts the vessel in its own class keyed by propertyId (refused without it), with the Reg 1100(1)(v) allowance on canadianVesselCapitalCost. Yes with a Reg 1101(2a) condition answered No, or with structured financing Yes, leaves the vessel in the ordinary Class 7 pool and asks nothing more. Otherwise, Yes with a condition unanswered holds the class. A qualifying vessel also needs canadianVesselCapitalCost and availableForUseDate, or the class is held. |
| `assetData[].isYachtCampLodgeGolfCourseOrFacility` | boolean \| null \| string |  | Whether the property is a yacht, camp, lodge, golf course or golf facility described in ITA 18(1)(l) (true, false or null). Reg 1102(1)(f) excludes it from every class, so Yes holds the class unless businessProvidesPropertyForHireOrReward is Yes. Blank counts as No with a disclosed note, but holds the class where the row's words name such property. |
| `assetData[].isZeroEmissionPassengerVehicle` | array \| boolean \| null \| number \| object \| string |  | Class 54 only: whether the zero-emission vehicle is a passenger vehicle, as true, false or null. Yes caps each vehicle's capital cost at the Reg 7307(1.1) prescribed amount and, on a disposal, applies the ITA 13(7)(i) proceeds rule, which needs both prescribed-limit amounts; No leaves it uncapped. On an addition, blank reads as Yes only where both prescribed-limit amounts are stated and otherwise holds the class; on a disposal with proceeds, blank holds the class. |
| `assetData[].isZeroEmissionVehiclePerITA248` | boolean \| null \| string |  | For a Class 54 or 55 property: whether it is a zero-emission vehicle as ITA 248(1) defines it, as true, false or null; another value is refused. Anything but true on a property in the class holds the class with no allowance. Not read in another class. |
| `assetData[].leaseEndDate` | array \| boolean \| null \| number \| object \| string |  | Class 13 leasehold: the date the lease's original term ends, as YYYY-MM-DD. With no costIncurredTermEndDate, where that term runs to or past the end of the year the cost was incurred, it is the Schedule III s.3(b) termination day if hasLeaseRenewalOption is No; a renewal right moves that day to firstRenewalEndDate, which cannot precede it. A costIncurredTermEndDate before this date is refused. Without a termination day the item claims nothing and, without ccaOverrides, filing readiness is held. |
| `assetData[].leaseTermYears` | null \| number \| string |  | Class 13 lease term in years, as a non-negative number. Display only: with firstRenewalYears it sets the pooled Class 13 rate shown on the schedule for a row whose lease dates give no Schedule III termination day. It never reaches the claim, which runs on the lease dates. Refused on an addition cohort. |
| `assetData[].lifeExpiryDate` | array \| boolean \| null \| number \| object \| string |  | Class 14 only: the date the property's limited legal life ends, as YYYY-MM-DD, which must fall after acquisitionDate. Reg 1100(1)(c) apportions the cost by day over the life from acquisition to this date. An addition or continuing item without it claims nothing and, unless ccaOverrides supplies a reviewed Class 14 amount, holds filing readiness; no life is estimated. When the taxation period's dates are stated, a date on or before the year end counts the property of a row with assetCount as gone. |
| `assetData[].liquefactionFacilityId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the eligible LNG facility, as text. With liquefactionReg1101SeparateClass selected it keys the separate Class 1 building or Class 47 equipment pool and is required, or the input is refused. The pool holds every row and cohort of that facility and class; two of them with the same propertyId are refused. The shared Reg 1100(1)(a.3)/(yb) facility-income ceiling applies per facility across its Class 1 and Class 47 pools. |
| `assetData[].liquefactionReg1101SeparateClass` | array \| boolean \| null \| number \| object \| string |  | The LNG prescribed separate class: Not applicable, 1101(5b.2) (Class 1 eligible liquefaction building) or 1101(4i) (Class 47 eligible liquefaction equipment). Another value, a class mismatch, a blank liquefactionFacilityId, or an addition acquired outside February 20, 2015 to 2024 is refused. A selected class takes one W08 row per facility pool, and a second row or cohort in that pool is refused. With eligibleLiquefactionActivitiesIncomeBeforeCca stated it adds the Reg 1100(1)(a.3) 6% or (yb) 22% allowance. The coverage review's other-separate-class answer must be Yes, or filing readiness is held. |
| `assetData[].meetsClass56UsedPropertyCondition` | boolean \| null \| string |  | For a Class 56 property: whether it meets Schedule II Class 56 paragraph (b), which reads Reg 1104(4.01)(b): no person deducted CCA or a terminal loss on it for a year ending before the corporation acquired it, or it came neither on a rollover nor from a non-arm's-length owner. As true, false or null; another value is refused. Anything but true on a property in the class holds Class 56 with no allowance. Not read in another class. |
| `assetData[].mineCcaSources` | array \| boolean \| null \| number \| object \| string |  | For a pool whose CCA is shared by several mines: the member mines, each an object with mineId, incomeBeforeCca, ordinaryCca and additionalCca, repeated identically on every row of the pool (differing lists are refused). Read only when a Reg 1101(4a) to (4h) class with an available additional allowance is on the return. It is required on a multiple-mine group pool (Reg 1101(4b) or (4d)), which needs at least two mines listed, and on any pool whose rows state it or whose mineId names such a group. ordinaryCca must total the pool's ordinary claim. Where a pool with more than one member mine claims an additional allowance, every member needs additionalCca and they must total that claim; otherwise additionalCca may be blank. An incomplete or unbalanced list allows no Reg 1100(1)(w) to (ya) additional allowance and holds filing readiness. A negative CCA amount, a single-mine pool that names any mine but its own mineId, and member incomes whose total differs from mineIncomeBeforeCca are refused. |
| `assetData[].mineId` | array \| boolean \| null \| number \| object \| string |  | Stable identifier of a mine or mine group, as text. With mineReg1101SeparateClass selected it keys that Reg 1101(4a) to (4h) class and is required, one consistent ID per pool, or the input is refused. Where a mining class with an available additional allowance is on the return, it attributes an ordinary pool's CCA to its mine. One mine ID across the pool takes the whole claim. Mixed IDs, a blank marking the non-mine share, need mineOrdinaryCcaAllocation on every row. An ID that names a multiple-mine group pool (Reg 1101(4b) or (4d)) instead needs mineCcaSources on every row of the pool, or filing readiness is held and no Reg 1100(1)(w) to (ya) additional allowance is allowed. |
| `assetData[].mineIncomeBeforeCca` | array \| boolean \| null \| number \| object \| string |  | Income of the mine or mine group after non-CCA expenses and before this year's CCA, as an amount (0 when nil). One pool-level figure that caps the Reg 1100(1)(w) to (ya) additional allowance; while that allowance is available for the selected class, blank holds the class. Refused when mineReg1101SeparateClass is Not applicable, when the pool's rows state different values, when one mine carries different values in two pools, or when it differs from the total incomeBeforeCca of the pool's mineCcaSources. |
| `assetData[].mineOrdinaryCcaAllocation` | null \| number \| string |  | For an ordinary CCA pool used at more than one mine, or at a mine and elsewhere: this row's share of the pool's claimed CCA, as a non-negative amount. It is read only where a mining class with an available additional allowance is on the return and the pool claims CCA. It is required where the pool's rows carry different mineId values, or a blank beside a mineId, and also where no row carries a mineId but a row's separateClassBusinessId matches a mining pool's. Every row then needs one and they must total the pool's claim, a blank mineId marking the non-mine share; otherwise no Reg 1100(1)(w) to (ya) additional allowance is allowed and filing readiness is held. Not needed where every row carries the same single-mine mineId. |
| `assetData[].mineReg1101SeparateClass` | array \| boolean \| null \| number \| object \| string |  | The Reg 1101 mining separate class: Not applicable or 1101(4a) to (4h) (4a/4b Class 28, 4c/4d Class 41, 4e/4f Class 41.1, 4g/4h Class 41.2; first of each pair one mine, second multiple mines); other values, a class mismatch or a blank mineId are refused. On a Class 28, 41, 41.1 or 41.2 pool with opening UCC or additions, blank holds the class. A selection keys the pool by mineId and needs the coverage review's other-separate-class answer Yes, or filing readiness is held. |
| `assetData[].minimumContinuousPowerKwOfServedEvChargingStations` | null \| number \| string |  | For Class 43.1 or 43.2 equipment used primarily with EV charging stations (isAncillaryToElectricVehicleChargingStations Yes): the lowest continuous power, in kW, among every station it serves, as a number. Class 43.1(d)(xvii)(C)(II) needs each served station above 10 kW, so blank or 10 kW or less holds the class. |
| `assetData[].nextSucceedingTermEndDate` | array \| boolean \| null \| number \| object \| string |  | Class 13 leasehold: the end date of the lease term that follows the term including the end of the year the cost was incurred (YYYY-MM-DD). With hasRenewalTermAfterCostIncurredTerm Yes it is the Schedule III s.3(b) termination day. It requires costIncurredTermEndDate and must fall after it, or the input is refused. Where firstRenewalEndDate is stated and costIncurredTermEndDate equals leaseEndDate or falls before firstRenewalEndDate, it must equal firstRenewalEndDate, or the input is refused. |
| `assetData[].nonArmsLengthTransferorCostAmount` | null \| number \| string |  | The transferor's cost amount of a non-arm's-length passenger vehicle immediately before the corporation acquired it, as a non-negative amount. It is the ITA 13(7)(h)(ii) operand of the least-of deemed capital cost, beside fair market value and the Reg 7307(1) prescribed amount. On a Class 10 or 10.1 passenger vehicle addition whose non-arm's-length answer is Yes (isPassengerVehicleAcquiredNonArmsLength, or acquiredFromNonArmsLengthPerson when that is blank), blank holds the class. |
| `assetData[].nonArmsLengthVehicleFairMarketValue` | null \| number \| string |  | Fair market value of a non-arm's-length passenger vehicle when acquired, as a non-negative amount. It is the ITA 13(7)(h)(i) operand of the least-of deemed capital cost, beside the transferor's cost amount and the Reg 7307(1) prescribed amount. On a Class 10 or 10.1 passenger vehicle addition whose non-arm's-length answer is Yes (isPassengerVehicleAcquiredNonArmsLength, or acquiredFromNonArmsLengthPerson when that is blank), blank holds the class. |
| `assetData[].nonRecoverableSalesTaxOnPrescribedLimit` | null \| number \| string |  | Element B of the Reg 7307 prescribed amount: non-recoverable sales tax on an acquisition at cost A, as a non-negative amount (0 if none). It raises the Class 10.1 or 54 cost ceiling and is applied as nil with a disclosed note when blank. Blank holds the class where a Class 10 passenger vehicle costs more than A, where ITA 13(7)(h) limb (iii) binds on a Class 10 vehicle, on a Class 54 addition whose isZeroEmissionPassengerVehicle is blank, or on a disposal with proceeds of a Class 54 zero-emission passenger vehicle or a Class 10.1 vehicle that was DIEP. On Class 10.1, limb (iii) uses the ceiling with B as nil and does not hold. |
| `assetData[].openingCost` | null \| number \| string |  | Book cost of the row's property at the start of the year, as a non-negative amount. On a row that states closingCost, a bookCostRemovalSigned and a zero taxUccReductionOnDisposition, the book continuity (openingCost plus additions less cost removed equals closingCost) can prove the disposed property's original cost; if it does not tie on a row with proceeds, the input is refused. A positive amount also marks the row as property of its class. |
| `assetData[].openingUCC` | null \| number \| string |  | Undepreciated capital cost carried into the year for the row's pool, as a non-negative amount. On a request, the opening balance itself comes from pyUCCPools; a positive amount here marks the row as property of its class. When the rows come from the engagement's saved W08 workpaper, they are summed by pool identity into the opening balance and must equal the prior-year rows' closing UCC for that pool, or the input is refused. On a Class 13 pool whose claim comes from ccaOverrides because its continuing items are incomplete, each row's openingUCC is read as that cost item's share of the opening pool, and shares the pool cannot hold are refused. |
| `assetData[].passengerVehicleCostToTaxpayer` | null \| number \| string |  | The passenger vehicle's cost to the corporation, as a non-negative amount. On a Class 10 passenger vehicle addition it is required and tested against the acquisition-year Reg 7307(1) prescribed amount; a cost above it holds the class for a move to Class 10.1. On a Class 10.1 addition a blank falls back to the single addition, and a cost at or below the prescribed amount holds filing readiness for a move to Class 10. A non-arm's-length passenger vehicle also requires it under ITA 13(7)(h). |
| `assetData[].postNovember20_2018DeemedDeductionAmount` | null \| number \| string |  | For AIIP only because of Reg 1104(4)(b)(i): the cost incurred after November 20, 2018 in respect of which a deduction is deemed made, as an amount (0 when none), not the deduction itself. Reg 1100(2.02)(a)(ii) excludes it from the accelerated element D. Required in that case, else the class is held; with the pre-threshold amount it cannot exceed additions. |
| `assetData[].postTwentyTwentyFourDeemedDeductionAmount` | null \| number \| string |  | For RIIP only because of Reg 1104(4.01)(b)(i): the cost incurred after 2024 in respect of which a deduction is deemed made, as an amount (0 when none), not the deduction itself. Reg 1100(2.021)(a)(ii) excludes it from the accelerated element D.1. Required in that case, else the class is held; with the pre-2025 amount it cannot exceed additions. |
| `assetData[].preApril19_2021ExpenditureAmount` | null \| number \| string |  | For DIEP only because of Reg 1104(3.1)(c)(i): the part of the cost incurred before April 19, 2021, as an amount (0 when none). Unless the inventory-transfer exception applies, Reg 1100(0.3) excludes it from the immediate-expensing pool. Required in that case, else the class is held; cannot exceed additions. |
| `assetData[].preNovember21_2018ExpenditureAmount` | null \| number \| string |  | For AIIP only because of Reg 1104(4)(b)(i): the part of the cost incurred before November 21, 2018, as an amount (0 when none). Unless the inventory-transfer exception applies, Reg 1100(2.02)(a)(i) moves it from the accelerated element D to element F. Required in that case, else the class is held. With postNovember20_2018DeemedDeductionAmount it cannot exceed additions, nor can it exceed a preApril19_2021ExpenditureAmount that Reg 1100(0.3) excludes. |
| `assetData[].preTwentyTwentyFiveExpenditureAmount` | null \| number \| string |  | For RIIP only because of Reg 1104(4.01)(b)(i): the part of the cost incurred before 2025, as an amount (0 when none). Unless the inventory-transfer exception applies, Reg 1100(2.021)(a)(i) moves it from the accelerated element D.1 to element F. Required in that case, else the class is held; with the post-2024 amount it cannot exceed additions. |
| `assetData[].prescribedVehicleCapitalCostLimit` | null \| number \| string |  | The Reg 7307 prescribed amount for the vehicle's acquisition date (element A plus sales tax B), as an amount. The engine computes A itself and caps a Class 10.1 vehicle or Class 54 zero-emission passenger vehicle at A plus nonRecoverableSalesTaxOnPrescribedLimit; a different figure here holds filing readiness (refused on a Class 10 passenger vehicle whose cost and B are stated). Blank holds the class on a disposal with proceeds of such a Class 54 vehicle or a DIEP Class 10.1 vehicle, and on a Class 54 addition whose isZeroEmissionPassengerVehicle is blank. On such an addition, stating it with nonRecoverableSalesTaxOnPrescribedLimit is read as Yes and the cap applies. |
| `assetData[].priorCcaClaimed` | array \| boolean \| null \| number \| object \| string |  | Classes 13 and 14: CCA already claimed on the continuing item named by propertyCapitalCost, as a non-negative amount; above that cost it is refused unless an ITA 247(2.1) adjustment set the cost. The remainder caps the item's yearly claim. The opening pool's allowance is computed only when the items' remainders total the opening UCC exactly with no dispositions; otherwise, as when this is blank, it is $0 and filing readiness is held unless ccaClaimedOverride gives the claim. |
| `assetData[].proceedsOfDisposition` | null \| number \| string |  | Gross proceeds of disposition of the row's property, as a non-negative amount; timber resource property needs it. taxUccReductionOnDisposition is refused above it or above it net of dispositionOutlaysAndExpenses (ITA 13(21) element F). It is also the actual building proceeds for ITA 13(21.1) and the proceeds ITA 13(7)(i) scales on a capped vehicle. Outside timber, proceeds above that reduction, or blank proceeds beside other disposal evidence, hold filing readiness until three things are true: each Schedule 6 row with this row's dispositionReconciliationId states proceeds, ACB and outlays and none is marked for review; their proceeds total exactly this amount when it is positive; and the Schedule 8 coverage answer capitalGainRoutingComplete is Yes. |
| `assetData[].propertyCapitalCost` | array \| boolean \| null \| number \| object \| string |  | Classes 13 and 14 only: the capital cost of one property carried from an earlier year, as a positive amount. It names a continuing item for the per-item Schedule III or Reg 1100(1)(c) allowance and needs priorCcaClaimed plus the item's dates; it is refused on other classes and on a row with current-year additions. |
| `assetData[].propertyGroupId` | array \| boolean \| null \| number \| object \| string |  | Identifier linking a building row to its land for ITA 13(21.1), as text. On a building-class disposition with section13_21_1LandRelationshipExists true, Schedule 8 takes the Schedule 6 land row carrying the same ID, computes the deemed building proceeds and uses them for the building's UCC reduction. Schedule 6 reads this row's building facts through the same ID unless the linkage answer is false, and under paragraph 13(21.1)(a) it replaces the land row's proceeds with the deemed land proceeds. Land or building facts either schedule cannot complete hold filing readiness, and so does a Schedule 6 land row whose ID matches no row here. Two Schedule 6 land rows with the same ID are refused, and so are two of these rows or addition cohorts with the same ID once any Schedule 6 land row carries a propertyGroupId. On a row with several additionCohorts it is refused unless every cohort states the same value: state it on the cohort that disposes of the building. |
| `assetData[].propertyId` | array \| boolean \| null \| number \| object \| string |  | Durable identity of the row's property, as text. It keys the pool of per-property classes (each Class 10.1 vehicle, Class 1-NRB and 1-MP buildings) and of property-level separate classes such as Reg 1101(1ac) rentals, Canadian vessels and Schedules IV to VI resource properties, where a blank is refused, and carries the pool forward. Two rows in a pool keyed to one property are refused, except in a Schedules IV to VI resource pool, which takes one row per part. In a Reg 1101(4a)-(4h) mine pool or a Reg 1101(5b.2)/(4i) LNG facility pool, which holds several properties, two rows or cohorts with the same propertyId are refused. A repeated ID among the property rows of any other pool holds the class. A blank holds the class on an ITA 13(7)(e) non-arm's-length acquisition that is not a passenger vehicle and on an ITA 13(7)(h) vehicle. |
| `assetData[].propertyIdentityConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirmation that a provisional Property Identity has been replaced with a durable source or preparer-assigned ID (true, false or null). Read only when propertyIdentityIsProvisional is Yes: No or blank, or an ID still starting with provisional:, holds the class with no allowance, and other text is refused. It is read the same way on a Schedules IV to VI resource row. |
| `assetData[].propertyIdentityIsProvisional` | array \| boolean \| null \| number \| object \| string |  | Whether the row's Property Identity is provisional, as set when an imported register row has no unique source asset ID (true, false or null). Yes holds the class with no allowance until propertyIdentityConfirmed is Yes and the ID no longer starts with provisional:, because a description does not prove continuity of a statutory property. It is checked the same way on a Schedules IV to VI resource row. |
| `assetData[].purposeBuiltResidentialRentalThroughoutYear` | boolean \| null \| string |  | For a new purpose-built residential rental in its own Reg 1101(1ac.1) class: whether it qualified throughout this taxation year (true, false or null). Yes allows the Reg 1100(1)(a.4) additional allowance; No leaves only the basic rate; blank holds the class. Answer it each year. |
| `assetData[].railwayCommonCarrierOwnedAndOperatedThroughoutYear` | boolean \| null \| string |  | For a railway class under Reg 1101(5d.1), (5d.2), (5e.1) or (5e.2): whether the corporation was, throughout the year, a common carrier that owned and operated a railway (true, false or null). Yes allows that class's Reg 1100(1)(z.1b), (z.1c), (za.1) or (za.2) additional allowance; No denies only that allowance; blank holds the class with no allowance; other text is refused. The Reg 1101(5e) class's paragraph (za) allowance does not depend on this answer. |
| `assetData[].railwayReg1101SeparateClass` | array \| boolean \| null \| number \| object \| string |  | The Reg 1101 railway separate class: 1101(5d)(c) to (f), (5d.1) or (5d.2) for Class 35 cars, (5e) or (5e.1) for Class 1 track, (5e.2) or (5f) for Class 3 trestles; blank when none. A selection must match the CCA class or it is refused. It puts the property in that railway pool and adds the Reg 1100(1)(z) to (zb) additional allowance when its conditions are met. Where another answer on the row puts the property in a different separate class first (isSeparateClassUnderITA37_6, isFormerPropertyDeemedOwnedUnder13_4_3 or isNewPurposeBuiltResidentialRental Yes), the property stays in that class, gets no railway allowance, and the class is held with no allowance until one answer is cleared. A selection also needs the Schedule 8 coverage answer otherPrescribedSeparateClassRuleApplies to be Yes; No holds filing readiness and keeps the claim. A Class 3 trestle row is not asked the Class 3 paragraph (k) addition-and-alteration question. |
| `assetData[].railwayReg1101_5dAnnualClassConditionsMet` | boolean \| null \| string |  | For Class 35 railway cars in a Reg 1101(5d)(c) to (f) separate class: whether this year's Reg 1101(5d) conditions are met, including more than one qualifying car rented, leased or used in Canada (true, false or null). No or blank holds the class with no allowance, including the Reg 1100(1)(z) or (z.1a) additional allowance; other text is refused. |
| `assetData[].reg1100_0_3And2_02ExcludedExpenditureOverlapAmount` | null \| number \| string |  | For property that is both DIEP and AIIP with costs excluded under Reg 1100(0.3) and Reg 1100(2.02): the part excluded under both, as an amount. The engine bounds it from the excluded amounts, the row's additions and the incurrence dates. Where the bounds meet, it derives the amount and refuses any other stated value; on an addition without both exclusions only 0 is accepted. Otherwise it needs this amount: a blank holds the class, and an amount outside the bounds is refused. A negative amount is refused. |
| `assetData[].reg1100_0_3InventoryTransferExceptionApplies` | boolean \| null \| string |  | Asked on a DIEP addition when isDiepSolelyBecauseOfReg1104_3_1_c_i is Yes and preApril19_2021ExpenditureAmount is positive: whether the Reg 1100(0.3) inventory-transfer exception applies (true, false or null). Yes keeps that pre-April 19, 2021 cost eligible for immediate expensing; No excludes it from the immediate-expensing pool; blank holds the class. |
| `assetData[].reg1100_16SpecifiedLeasingPropertyThroughoutYear` | boolean \| null \| string |  | Whether the addition is specified leasing property throughout the year (Reg 1100(2) element F(b)(iii)), as true, false or null. Yes takes it out of the half-year reduction and the 50% Class 13 first-year amount. On a Canadian vessel that is neither AIIP nor RIIP and first available for use this year, Yes gives the one-third Reg 1100(1)(v) rate instead of one-sixth, and a blank holds the class. Yes also makes the Schedule 8 leasing-property coverage reviews required, so blank coverage answers then hold filing readiness. Elsewhere a blank counts as not excluded, so the half-year reduction, or the 50% Class 13 first-year amount, stays. On an addition with no AIIP or RIIP enhancement this comes with a disclosed note; on an accelerated addition it applies without a note to the part Reg 1100(2.02) or (2.021) moves to element F. |
| `assetData[].reg1100_2_021InventoryTransferExceptionApplies` | boolean \| null \| string |  | Asked when isRiipSolelyBecauseOfReg1104_4_01_b_i is Yes, postTwentyTwentyFourDeemedDeductionAmount is entered and preTwentyTwentyFiveExpenditureAmount is positive: whether the Reg 1100(2.021)(a)(i) inventory-transfer exception applies (true, false or null). Yes keeps that pre-2025 cost in the accelerated element D.1; No moves it to element F; blank holds the class. |
| `assetData[].reg1100_2_02InventoryTransferExceptionApplies` | boolean \| null \| string |  | Asked on an addition acquired before 2025 outside Classes 54 to 56 when isAiipSolelyBecauseOfReg1104_4_b_i is Yes, postNovember20_2018DeemedDeductionAmount is entered and preNovember21_2018ExpenditureAmount is positive: whether the Reg 1100(2.02)(a)(i) inventory-transfer exception applies (true, false or null). Yes keeps that pre-November 21, 2018 cost in the accelerated element D; No moves it to element F; blank holds the class. |
| `assetData[].reg1100_2_2NonArmsLengthContinuityApplies` | boolean \| null \| string |  | Whether Reg 1100(2.2) applies to a non-arm's-length or paragraph 55(3)(b) acquisition of property the transferor held continuously for at least 364 days (true, false or null). Yes keeps the addition out of the half-year element F and gives Class 13 the full Schedule III amount in the first year. The engine does not check a Yes against the acquisition-route answers. On a row with current-year additions, other than a Schedules IV to VI resource row, a blank is refused when acquiredFromNonArmsLengthPerson or acquiredInParagraph55_3_bReorganization is Yes. |
| `assetData[].reg1101IncomeSourceType` | array \| boolean \| null \| number \| object \| string |  | Income source the property serves, for the Reg 1101(1) and (1ac) separate-class rules: Business, Property, Not applicable or blank, in any letter case; other text is refused. It is checked only on rows whose pool no other prescribed or per-property class keys. Property with a separateClassBusinessId, or with no isSeparateClassRentalPropertyReg1101_1ac answer, holds the class, and so do two different stated sources in one pool. Once any row of the class number keys a Reg 1101(1) business pool or a Reg 1101(1ac) rental pool, or a prior-year pool of either kind carries UCC, a blank, or Business without separateClassBusinessId, also holds the class. Not applicable holds the class unless acquiredForIncomePurpose is Yes and another prescribed class keys the pool. Property also brings in the Schedule 8 rental coverage reviews, whose blank answers hold filing readiness and keep the claim. |
| `assetData[].reg1102_14Class41SpecialRulesApply` | boolean \| null \| string |  | For a Reg 1102(14) acquisition of transferor Class 41 property: whether Reg 1102(14.11) or (14.12) applies, true/false/null. True splits a positive current-year acquisition: Class 41 takes the lesser of the transferor's Class 41 UCC before the disposition and the reduction in it, and the rest goes to Class 41.1 or 41.2. A row that also reports a disposition is refused. With no current-year addition, the row carries whichever prior-filed Class 41 and 41.1 or 41.2 split pools exist, and is refused when neither exists. False keeps it all in Class 41; null holds the class. |
| `assetData[].reg1102_14Class41SplitRole` | array \| boolean \| null \| number \| object \| string |  | Marks a row already carried as one portion of a Reg 1102(14.11)/(14.12) Class 41 split: class41 for the lesser-of portion, remainder for the Class 41.1 or 41.2 portion; any other text is refused. It counts only where reg1102_14ClassContinuityApplies is true, reg1102_14TransferorCcaClass is 41 and reg1102_14Class41SpecialRulesApply is true: there the engine keeps the row in its own ccaClass instead of splitting it again, and a class that does not fit the role and subsection (41 for class41; 41.1 under 1102(14.11) or 41.2 under 1102(14.12) for remainder) holds the class. Anywhere else the role does not change the pool, which Reg 1102(14) sets as if the role were blank, and on a property row where continuity is false, the transferor class is not 41 or the special rules are false it holds the class with no allowance. |
| `assetData[].reg1102_14Class41SplitSubsection` | array \| boolean \| null \| number \| object \| string |  | Which Class 41 split rule applies when reg1102_14Class41SpecialRulesApply is true: 1102(14.11), the oil-sands rule with the remainder in Class 41.1, or 1102(14.12), the other-property rule with the remainder in Class 41.2. Any other value is refused when the engine runs the split. On a row already carried with reg1102_14Class41SplitRole, a blank or other value holds the class instead of being refused, and so does a class that does not fit the role and subsection. |
| `assetData[].reg1102_14ClassContinuityApplies` | boolean \| null \| string |  | Whether Reg 1102(14) keeps the property in the transferor's prescribed class or separate class, as on a related-party or qualifying reorganization acquisition; true/false/null. It is asked on every Schedule II row that holds property (positive additions, opening UCC, opening or closing cost, or a non-zero assetCount), and null there holds the class with no allowance. It is not asked on a Schedules IV to VI resource row. With true, the engine pools the property in reg1102_14TransferorCcaClass, subject to that field's Class 41 and Classes 54 to 56 rules, and a row carrying reg1102_14Class41SplitRole pools in its own ccaClass. A blank reg1102_14TransferorCcaClass or reg1102_14TransferorPropertyWasSeparateClass then holds the class. |
| `assetData[].reg1102_14TransferorCcaClass` | array \| boolean \| null \| number \| object \| string |  | The transferor's CCA class number as text, read when reg1102_14ClassContinuityApplies is true; Reg 1102(14) pools the property in that class. Blank holds the class. A class different from ccaClass is computed in the transferor's class but holds filing readiness, except on a completed Class 41 split; the hold names the class the engine computed in. A reg1102_14Class41SplitRole on a row whose transferor class is not 41 does not change the pool and holds the class with no allowance. Classes 54 to 56 hold the class (Reg 1102(14.13)), and Class 41 also needs reg1102_14Class41SpecialRulesApply. |
| `assetData[].reg1102_14TransferorClass41UccImmediatelyBeforeDisposition` | null \| number \| string |  | Amount: the transferor's Class 41 UCC immediately before it disposed of the property, for the Reg 1102(14.11)/(14.12) split. The Class 41 portion is the lesser of this and reg1102_14TransferorClass41UccReductionOnDisposition, and the rest goes to Class 41.1 or 41.2; both amounts are required when the split applies, or the input is refused. |
| `assetData[].reg1102_14TransferorClass41UccReductionOnDisposition` | null \| number \| string |  | Amount: the reduction in the transferor's Class 41 UCC caused by its disposition of the property, for the Reg 1102(14.11)/(14.12) split. The Class 41 portion is the lesser of this and the transferor's UCC immediately before the disposition; both amounts are required when the split applies, and a blank, or a Class 41 portion above the acquisition cost, is refused. |
| `assetData[].reg1102_14TransferorPropertyWasSeparateClass` | boolean \| null \| string |  | Whether the transferor held the property in a separate prescribed class, true/false/null, asked when reg1102_14ClassContinuityApplies is true. True keeps that separate class under Reg 1102(14), keyed by reg1102_14TransferorSeparateClassId; null holds the class, and false for a per-property class is held as a contradiction. |
| `assetData[].reg1102_14TransferorSeparateClassId` | array \| boolean \| null \| number \| object \| string |  | Identity of the transferor's separate prescribed class, as text, used as the pool key when reg1102_14TransferorPropertyWasSeparateClass is true (Reg 1102(14)). Blank holds the class. When the engine runs the Class 41 split, a blank is refused. On a row already carried with reg1102_14Class41SplitRole, a blank holds the class unless propertyId is also blank, which is refused. A different propertyId is replaced by this identity and holds filing readiness. |
| `assetData[].reg1102_1_eListedArtOrAntiqueExclusionApplies` | boolean \| null \| string |  | Whether the Reg 1102(1)(e) exclusion for listed art and antiques applies to the property, true/false/null. True holds the class, since the property is then in no CCA class. Null is read as false with a disclosed note, unless the row's class label, descriptions, account fields or GIFI description mention art, artwork, a painting, sculpture, antique, tapestry, engraving, lithograph, etching or drawing; then null holds the class. This applies to a Schedules IV to VI resource row too. |
| `assetData[].reg1102_5Or5_1BuildingLeaseholdApplies` | boolean \| null \| string |  | For a Class 13 leasehold addition: whether Reg 1102(5) or (5.1) treats the leasehold interest as a building or other structure in another class, true/false/null. True or null holds Class 13 with no allowance, because Schedule II Class 13(b) excludes that cost; answer false for an ordinary leasehold improvement. |
| `assetData[].replacementPropertyElection` | array \| boolean \| null \| number \| object \| string |  | Whether a replacement-property election applies to this row's disposition. True, or the text yes, true or y in any case, reads as Yes; any other value reads as No. A Yes on any row or cohort makes the Schedule 8 coverage review ask whether a replacement-property or other special disposition rule applies: blank there, or Yes, holds filing readiness, because Schedule 8 does not compute the deferral. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].resourceAllowancePreviouslyGranted` | boolean \| null \| string |  | Schedules V and VI: whether an allowance was granted on this resource property for a previous taxation year, true/false/null. False computes the section 2 first-allowance rate from resourceOriginalQuantity; true moves to the section 3 rate; null holds the class. It is not used once the section 4 election is made with its sale proceeds entered. With the election made but the sale proceeds blank, the class is held and this answer is still read. Text other than true, false or blank is refused on any row. |
| `assetData[].resourceAllowanceSchedule` | array \| boolean \| null \| number \| object \| string |  | Routes the row to the unit-of-production allowance under Reg 1100(1)(e), (f) and (g): IV (Class 15 timber property), V (industrial mineral mine or right) or VI (timber limit or cutting right). ccaClass must be 15, V or VI to match, propertyId is required because the engine keys each resource property its own pool (a separate class under Reg 1101(3) for each timber limit and cutting right, and under Reg 1101(4) for each industrial mineral mine and right where the taxpayer has more than one), and every row of the pool must carry the same schedule; any other value or a breach is refused. Each resource row is also checked for a provisional Property Identity, the Reg 1102(1)(b) to (e) exclusions and, on a current-year addition, ITA 13(7)(e); a failing check holds the pool with no allowance. |
| `assetData[].resourceCapitalCost` | null \| number \| string |  | Amount: the resource property's capital cost for the Schedules IV to VI allowance. It is the base of the Schedules V and VI section 2 rate and of the section 3(a)(i) recomputation of that rate, before residual value and survey costs come off. Schedule IV and the section 3(a)(ii) and 3(b) rates do not use it. A blank holds the class in every case (enter 0 only when the cost is nil). It must agree across the pool's rows, or the input is refused. It feeds the Schedule 27 Part 4 gross-cost check, where a mismatch holds filing readiness and keeps the claim. A negative amount is refused. On a Schedule V or VI pool taking the section 2 rate with no opening UCC and no disposition, where ITA 13(7)(e)(i) or (ii) changed an addition's cost, a value other than the pool's additions after that deeming holds the pool. |
| `assetData[].resourceEstimateOrCapitalCostChanged` | boolean \| null \| string |  | Schedules V and VI section 3: whether the remaining quantity or the capital cost differs from what the preceding rate used, true/false/null. True computes the section 3(b) revised rate from resourceHypotheticalOpeningUccWithoutEnhancement less residual value, over resourceQuantityAtStart; false applies section 3(a); null holds the class. |
| `assetData[].resourceHypotheticalOpeningUccWithoutEnhancement` | null \| number \| string |  | Amount: opening UCC recomputed with factor A set to 1 in every prior year. Schedule IV section 2 sets the per-unit rate on it whenever opening UCC is positive (enter the actual opening UCC if no enhanced allowance was ever claimed); a blank there holds the class and a value below the actual opening UCC is refused. Schedules V and VI use it for the section 3(b) revised rate, where a blank holds the class and a value below residual value is refused. |
| `assetData[].resourceMostRecentRatePerUnit` | null \| number \| string |  | Schedules V and VI section 3(a)(ii): the most recent per-unit rate used for this property, applied to resourceQuantityCutOrMined when an allowance was granted before, neither estimate nor cost changed, and the previous rate did not come from section 2. Blank in that case holds the class. |
| `assetData[].resourceOriginalQuantity` | null \| number \| string |  | The original estimated quantity of the property (cruise or mineable quantity), in resourceQuantityUnit, used as the Schedules V and VI section 2 rate denominator and to recompute a prior section 2 rate under section 3(a)(i). Where it is read, zero is refused and a blank holds the class. A negative amount is refused on any row; elsewhere zero is accepted and not used. |
| `assetData[].resourcePartHypotheticalUccBeforeAllowance` | array \| boolean \| null \| number \| object \| string |  | Schedule IV section 3, on a pool with more than one part: this part's share of the UCC before allowance, recomputed as though the subparagraph 1(a)(i) enhancement never applied. Needed only when that pre-enhancement UCC differs from the actual UCC, and then a blank holds the class; the parts must total the pool's pre-enhancement UCC or the input is refused. |
| `assetData[].resourcePartUccBeforeAllowance` | null \| number \| string |  | Schedule IV section 3, on a pool with more than one part (one row per limit or section): this part's UCC before the allowance. Its per-unit rate is computed on it as if it were the only Class 15 property, unless the pool's pre-enhancement UCC differs, when resourcePartHypotheticalUccBeforeAllowance is used instead. The parts must total the pool's UCC before CCA or the input is refused; a blank holds the class. |
| `assetData[].resourcePreviousRateUsedFirstClaimFormula` | boolean \| null \| string |  | Schedules V and VI section 3(a), where an allowance was granted before and neither estimate nor cost changed: whether section 2 set the previous year's rate, true/false/null. True recomputes that rate as capital cost less residual value (and, for Schedule VI, survey costs) over resourceOriginalQuantity, with factor A of 1; false uses resourceMostRecentRatePerUnit; null holds the class. |
| `assetData[].resourcePriorSurveyCruiseMapDeductions` | null \| number \| string |  | Schedule VI: survey, cruise, print, map and plan costs already deducted in prior years (enter 0 when none). The section 1(a)(ii) addition is the lesser of one tenth of the lifetime cost and the lifetime cost less this amount; more than resourceSurveyCruiseMapCosts is refused, and a blank holds the class. It is not used once the section 4 election is made with its sale proceeds entered. With the election made but the sale proceeds blank, it is still read and can be refused. A negative or non-numeric amount is refused on any row. |
| `assetData[].resourceQuantityAtStart` | null \| number \| string |  | Quantity on hand at the start of the year, in resourceQuantityUnit. Schedule IV divides each part's pre-enhancement UCC by it to get the per-unit rate. Once resourceQuantityCutOrMined is entered, zero, or less than the cut quantity, is refused there. Schedules V and VI section 3(b) use it as the quantity remaining for the revised rate. Once resourceHypotheticalOpeningUccWithoutEnhancement is entered, zero is refused there. A blank where it is needed, or a blank paired operand, holds the class. A negative amount is refused on any row. |
| `assetData[].resourceQuantityCutOrMined` | null \| number \| string |  | Quantity cut or mined in the year, in resourceQuantityUnit, multiplied by the per-unit rate to give the Schedules IV to VI allowance. Required, with 0 when nothing was cut or mined: a blank holds the class, except under a Schedule V or VI section 4 election, which does not use it. Under Schedule IV more than resourceQuantityAtStart is refused. |
| `assetData[].resourceQuantityUnit` | array \| boolean \| null \| number \| object \| string |  | Text naming the unit every resource quantity on the row uses, for example cords, board feet, cubic metres or the mineable unit of the estimate. Required for a Schedules IV to VI property unless the Schedule V/VI section 4 election is made; a blank holds the class. |
| `assetData[].resourceResidualValue` | null \| number \| string |  | Amount: the estimated residual value of a Schedule V or VI property (enter 0 when nil). It comes off capital cost in the section 2 rate and its section 3(a)(i) recomputation, and off resourceHypotheticalOpeningUccWithoutEnhancement in the section 3(b) revised rate. Section 2 refuses residual value plus survey costs above capital cost, and section 3(b) refuses a hypothetical opening UCC below it. A blank holds the class unless the section 4 election is made. Schedule IV does not use it and ignores a blank, but every row of a pool that states it must agree or the input is refused. A negative amount is refused. |
| `assetData[].resourceSaleProceedsForSection4Election` | null \| number \| string |  | For a Schedule V or VI resource pool whose resourceSection4AlternativeElection is true: the amount received in the year from the sale of mineral (Schedule V) or timber (Schedule VI), as a non-negative amount, 0 when none; a negative amount is refused. The elected deduction is the lesser of $100 and this amount. One amount for the pool: values on its rows and cohorts must agree, or the request is refused. Blank holds the pool. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].resourceSection4AlternativeElection` | boolean \| null \| string |  | For a Schedule V or VI resource pool: whether the corporation elects the section 4 deduction, the lesser of $100 and the year's sale receipts, in lieu of the sections 1 to 3 computation, as true, false or null; another value is refused. One answer for the pool: values on its rows and cohorts must agree, or the request is refused. Blank holds the pool. True takes that lesser amount, capped by the pool's UCC, and needs resourceSaleProceedsForSection4Election; false keeps sections 1 to 3. Not read for Schedule IV or another class. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].resourceSurveyCruiseMapCosts` | null \| number \| string |  | Schedule VI: lifetime survey, cruise, print, map and plan costs included in the property's cost (enter 0 when none). They come off capital cost in the section 2 rate and its section 3(a)(i) recomputation, and are allowed separately under section 1(a)(ii) at one tenth a year, capped at the cost not yet deducted. A blank is refused where the section 2 or section 3(a)(i) rate needs it and otherwise holds the class. Under a section 4 election with its sale proceeds entered it is not read, so a blank neither holds nor is refused. A negative amount is refused. |
| `assetData[].rolloverElectionApplies` | array \| boolean \| null \| number \| object \| string |  | Whether a rollover election applies to this row's disposition. True, or the text yes, true or y in any case, reads as Yes; any other value reads as No. A Yes on any row or cohort makes the Schedule 8 coverage review ask whether a replacement-property or other special disposition rule applies: blank there, or Yes, holds filing readiness, because Schedule 8 does not compute the rollover. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].s247CapitalCost` | null \| number \| string |  | Amount: the identified property's capital cost as stated on this row, checked against an ITA 247(2.1) transfer-pricing capital-cost adjustment. It must equal that adjustment's before or after basis, matching its stated input state, or the input is refused. On a fixed-assets workpaper row that states a nil openingUCC, it also keeps the property's pool on the schedule at that nil opening UCC. |
| `assetData[].section110_6_21CapitalCostReduction` | null \| number \| string |  | Amount: the ITA 110.6(21) capital-cost reduction, for a current-year ITA 13(7)(e)(i) non-arm's-length acquisition (not a passenger vehicle) from a Canadian-resident individual or qualifying partnership that cost more than the transferor's capital cost. It is subtracted from the transferor's gain before one half of that gain is added to the transferor's cost; enter 0 when nil, as a blank holds the class. A negative amount is refused. It is read the same way on a Schedules IV to VI resource row. |
| `assetData[].section13_21_1BuildingCostAmount` | null \| number \| string |  | The building's cost amount immediately before the disposition, as a non-negative amount, for ITA 13(21.1). Schedule 8 reads it on a building-class disposition whose section13_21_1LandRelationshipExists is true. The subsection applies only when proceedsOfDisposition is below the lesser of this amount and disposedPropertyOriginalCost. The deemed building proceeds then come from paragraph (a), using the Schedule 6 land row linked by propertyGroupId, or from paragraph (b), which adds one half of the excess of the greater of this amount and section13_21_1BuildingFairMarketValue over the proceeds. Without a linked land row, Schedule 8 reads section13_21_1LandDisposedInYearByTaxpayerOrNonArmsLengthPerson and section13_21_1HistoricalNecessaryLandOwnership from this row. The lesser of the deemed proceeds net of outlays and the capital cost replaces taxUccReductionOnDisposition. That usually raises the class's UCC reduction and cuts the terminal loss, and it can lower it. Deemed proceeds above the capital cost hold filing readiness until the excess gain is routed to Schedule 6. Under paragraph (a), Schedule 6 replaces the linked land row's proceeds with the deemed land proceeds. A blank here, or in proceedsOfDisposition, disposedPropertyOriginalCost or section13_21_1BuildingFairMarketValue, holds filing readiness and keeps the claim, except that a blank disposedPropertyOriginalCost beside a positive UCC reduction is refused. A negative amount is refused. Schedule 6 also reads it from any row or cohort whose propertyGroupId matches a Schedule 6 land row, unless section13_21_1LandRelationshipExists is false. There a blank holds Schedule 6 readiness, and so does a blank linkage answer when the proceeds are below the lesser of this amount and the capital cost. On a row with several additionCohorts it is refused unless every cohort states the same value: state it on the cohort that disposes of the building. |
| `assetData[].section13_21_1BuildingFairMarketValue` | null \| number \| string |  | The building's fair market value immediately before the disposition, as a non-negative amount, for ITA 13(21.1). Schedule 8 reads it on a building-class disposition whose section13_21_1LandRelationshipExists is true. It matters only when proceedsOfDisposition is below the lesser of section13_21_1BuildingCostAmount and disposedPropertyOriginalCost. It then sets the deemed building proceeds: under paragraph (a) it enters both limits of the lesser-of test with the figures of the Schedule 6 land row linked by propertyGroupId, and under paragraph (b) the proceeds rise by one half of the excess of the greater of this value and the cost amount over them. Without a linked land row, Schedule 8 reads section13_21_1LandDisposedInYearByTaxpayerOrNonArmsLengthPerson and section13_21_1HistoricalNecessaryLandOwnership from this row. The lesser of the deemed proceeds net of outlays and the capital cost replaces taxUccReductionOnDisposition. That usually raises the class's UCC reduction and cuts the terminal loss, and it can lower it. Deemed proceeds above the capital cost hold filing readiness until the excess gain is routed to Schedule 6. Under paragraph (a), Schedule 6 replaces the linked land row's proceeds with the deemed land proceeds. A blank here, or in proceedsOfDisposition, disposedPropertyOriginalCost or section13_21_1BuildingCostAmount, holds filing readiness and keeps the claim, except that a blank disposedPropertyOriginalCost beside a positive UCC reduction is refused. A negative amount is refused. Schedule 6 also reads it from any row or cohort whose propertyGroupId matches a Schedule 6 land row, unless section13_21_1LandRelationshipExists is false, and there a blank holds Schedule 6 readiness. On a row with several additionCohorts it is refused unless every cohort states the same value: state it on the cohort that disposes of the building. |
| `assetData[].section13_21_1HistoricalNecessaryLandOwnership` | boolean \| null \| string |  | Where ITA 13(21.1) reaches a building disposition (relationship true, proceeds below the lesser of cost amount and capital cost) and the same-year land answer is false: whether the corporation or a non-arm's-length person owned the subjacent or necessary contiguous land at any time before the disposition, as true, false or null; another value is refused. A linked Schedule 6 land row answers first; this row fills its blank. Blank holds filing readiness. True applies paragraph (b): proceeds rise by half the excess of the greater of cost amount and FMV over them. On a row with several additionCohorts it is refused unless every cohort states the same value: state it on the cohort that disposes of the building. |
| `assetData[].section13_21_1LandDisposedInYearByTaxpayerOrNonArmsLengthPerson` | boolean \| null \| string |  | For a building disposition ITA 13(21.1) reaches (relationship true, proceeds below the lesser of cost amount and capital cost): whether the corporation or a non-arm's-length person disposed of the subjacent or necessary contiguous land in the year, as true, false or null; another value is refused. A Schedule 6 land row with the same propertyGroupId answers first; this row fills its blank. Blank holds filing readiness. True applies paragraph (a), which needs that land row's amounts; false applies paragraph (b) if section13_21_1HistoricalNecessaryLandOwnership is true. On a row with several additionCohorts it is refused unless every cohort states the same value: state it on the cohort that disposes of the building. |
| `assetData[].section13_21_1LandRelationshipExists` | array \| boolean \| null \| number \| object \| string |  | For a disposition from a building class (1, 1-NRB, 1-MP, 1-LNG, 3, 6, 31 or 32): whether related subjacent or contiguous land brings in ITA 13(21.1), true/false/null. True applies that subsection using this row's proceedsOfDisposition, disposedPropertyOriginalCost, section13_21_1BuildingCostAmount and section13_21_1BuildingFairMarketValue and the Schedule 6 land row linked by propertyGroupId. Without a linked land row, Schedule 8 reads section13_21_1LandDisposedInYearByTaxpayerOrNonArmsLengthPerson and section13_21_1HistoricalNecessaryLandOwnership from this row. False turns the reallocation off in both schedules. Null holds Schedule 8 filing readiness when the class shows a terminal loss. Where a Schedule 6 land row carries this row's propertyGroupId, a null also holds Schedule 6 readiness when the building facts are incomplete or the proceeds are below the lesser of the cost amount and the capital cost, terminal loss or not. On a row with several additionCohorts it is refused unless every cohort states the same value: state it on the cohort that disposes of the building. |
| `assetData[].section13_4Election` | array \| boolean \| null \| number \| object \| string |  | Whether the ITA 13(4) replacement-property election applies to this row's disposition. True, or the text yes, true or y in any case, reads as Yes; any other value reads as No. A Yes on any row or cohort makes the Schedule 8 coverage review ask whether a replacement-property or other special disposition rule applies: blank there, or Yes, holds filing readiness, because Schedule 8 does not compute the deferral. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].section13_4_1Election` | array \| boolean \| null \| number \| object \| string |  | Whether the ITA 13(4.1) election applies to this row's disposition. True, or the text yes, true or y in any case, reads as Yes; any other value reads as No. A Yes on any row or cohort makes the Schedule 8 coverage review ask whether a replacement-property or other special disposition rule applies: blank there, or Yes, holds filing readiness, because Schedule 8 does not compute the deferral. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].section149DispositionOfEveryPropertyInClass` | array \| boolean \| null \| number \| object \| string |  | True where ITA 149(10)(b) deems every property of the class disposed of on a change of tax-exempt status; the class is then treated as holding no property at year end, unless an ITA 13(21.2) stop-loss suspension is still outstanding. The engine sets it on the rows it builds from section 149 events; only a literal true has effect. |
| `assetData[].section37DeductionAllowedForAcquisitionExpenditure` | boolean \| null \| string |  | Whether an ITA section 37 deduction is allowed for the expenditure that acquired the property, true/false/null. True holds the class, since Reg 1102(1)(d) then puts the property in no CCA class. Null is read as false with a disclosed note, unless the row's class label, descriptions, account fields or GIFI description mention SR&ED, SRED, R&D, research, scientific or experimental development; then null holds the class. This applies to a Schedules IV to VI resource row too. |
| `assetData[].section44Election` | array \| boolean \| null \| number \| object \| string |  | Whether the ITA 44(1) replacement-property election applies to this row's disposition. True, or the text yes, true or y in any case, reads as Yes; any other value reads as No. A Yes on any row or cohort makes the Schedule 8 coverage review ask whether a replacement-property or other special disposition rule applies: blank there, or Yes, holds filing readiness, because Schedule 8 does not compute the deferral. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].separateClassBusinessId` | array \| boolean \| null \| number \| object \| string |  | Text identifying the business whose property this row is, for Reg 1101(1) (each business's property forms its own class). On a class number that no other prescribed or per-property class keys, rows with different values become separate pools; different values inside a pool that another rule keys hold the class. It assigns Class 14.1 history by business. Matching the business of a Reg 1101(4a) to (4d) mine pool that has an additional allowance this year puts this pool's ordinary CCA in the mine-income attribution. That needs mineOrdinaryCcaAllocation on every row unless every row names one mineId, and an allocation on a row with no mineId counts as the share outside the mines. Mine income comes from mineIncomeBeforeCca or mineCcaSources. On a pool no other separate class keys, a row may not also claim a Reg 1101(1ac) rental class; that is refused. |
| `assetData[].similarPropertyAcquiredWithin24MonthsAndStillOwned` | boolean \| null \| string |  | Asked when isFormerPropertyDeemedOwnedUnder13_4_3 is true and the class would otherwise take a terminal loss: whether a similar property at the same fixed place was acquired within 24 months and is still owned, true/false/null. True keeps the pool with no terminal loss under ITA 20(16.1)(b) and holds filing readiness for review of the carried-over Reg 1100(1)(c) life; null holds the class. |
| `assetData[].storageEnergyConditionMet` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property whose claimsClass431ElectricalStorage is true: whether the energy source or efficiency condition of Class 43.1(d)(xviii) is met, as true, false, Yes or No. Only true or Yes passes the test; false, any other value or blank holds the class. A value stated while that claim is blank also holds the class. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].storageExcludedCategory` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property claiming claimsClass431ElectricalStorage: the storage exclusion that applies, as text: none, building, pumped_hydroelectric_storage, hydroelectric_dam_or_reservoir, backup_only, motor_vehicle_battery, steam_methane_fuel_cell, class_10_or_17, other_vehicle_battery, other_automotive_equipment_battery or vehicle_or_automotive_charging_property. The last three exclude only property acquired and available for use on or after November 17, 2025. An exclusion that applies, other text or blank holds the class. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].storageFixedLocation` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property whose claimsClass431ElectricalStorage is true: whether it is fixed location energy storage property, as true, false, Yes or No. Only true or Yes passes the test; false, any other value or blank holds the class. A value stated while that claim is blank also holds the class. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].storagePrimaryPurposeConfirmed` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property whose claimsClass431ElectricalStorage is true: whether the corporation or its lessee uses it primarily to store and discharge electrical energy, as true, false, Yes or No. Only true or Yes passes the test; false, any other value or blank holds the class. A value stated while that claim is blank also holds the class. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].subsection39ExcludedDispositionApplies` | array \| boolean \| null \| number \| object \| string |  | For a Class 14.1 disposition: whether one of ITA 24(2), 70(5.1), 73(3.1), 85(1), 88(1), 98(3), 98(5), 107(2) or 107.4(3) applies, true/false/null. True skips the ITA 13(39) deemed acquisition; false lets the engine compute it; null leaves the deemed acquisition at nil and holds filing readiness. |
| `assetData[].taxUccReductionOnDisposition` | null \| number \| string |  | Amount the row's dispositions take off the class's UCC under ITA 13(21): the sum, per property, of the lesser of net proceeds and capital cost (element F), or for timber resource property the full net proceeds (element G), which it must equal. A blank on a row with disposition evidence is refused (enter 0 for nil proceeds). It is also refused above gross or net proceeds and, outside timber, above disposedPropertyOriginalCost or when positive without it. On a Class 10.1 or Class 54 vehicle within ITA 13(7)(i), it is also refused above element F computed on the deemed capital cost and, on an arm's-length disposition, on proceeds scaled by the deemed capital cost over the actual cost. The engine replaces the stated amount with the ITA 13(21.1) deemed building amount where that subsection applies, and with the ITA 13(21.2) deemed proceeds net of outlays where the stop-loss applies. |
| `assetData[].transferorCapitalCostImmediatelyBefore` | null \| number \| string |  | Amount: the transferor's capital cost immediately before it disposed of the property, required on a current-year addition acquired non-arm's-length that is not a passenger vehicle (ITA 13(7)(e)). If the corporation's cost does not exceed it, the capital cost becomes this amount and the excess is deemed prior CCA; otherwise the gain rule applies. Blank holds the class, and a negative amount is refused. On a Schedules IV to VI resource row the deemed cost replaces the addition and the deemed prior allowance reduces the pool's UCC; on a Schedule V or VI pool that deemed allowance holds the pool until resourceAllowancePreviouslyGranted is Yes with the section 3 rate facts. |
| `assetData[].transferorProceedsOfDisposition` | null \| number \| string |  | Amount: the transferor's proceeds of disposition, for a current-year non-arm's-length acquisition (not a passenger vehicle) that cost the corporation more than the transferor's capital cost. ITA 13(7)(e)(i) or (ii) then sets the capital cost at the transferor's cost plus one half of the transferor's gain; a blank holds the class, and a negative amount is refused. It is read the same way on a Schedules IV to VI resource row. |
| `assetData[].transferorSection110_6Deductions` | null \| number \| string |  | Amount: the transferor's section 110.6 deductions, for a current-year ITA 13(7)(e)(i) acquisition (not a passenger vehicle) from a Canadian-resident individual or qualifying partnership that cost more than the transferor's capital cost. Twice this amount is subtracted from the transferor's gain before one half of it is added to the transferor's cost; enter 0 when nil, as a blank holds the class. A negative amount is refused. It is read the same way on a Schedules IV to VI resource row. |
| `assetData[].transferorWasCanadianResidentIndividualOrQualifyingPartnership` | boolean \| null \| string |  | For a current-year non-arm's-length acquisition (not a passenger vehicle) costing more than the transferor's capital cost: whether the transferor was a Canadian-resident individual or a qualifying partnership, true/false/null. True applies ITA 13(7)(e)(i), which takes the section 110.6 amounts off the transferor's gain; false applies (e)(ii); null holds the class. It is read the same way on a Schedules IV to VI resource row. |
| `assetData[].transmittedEnergyFromEligibleGenerationPct` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property whose claimsEligibleTransmissionEquipment is true: the share of the electrical energy this equipment transmits on an annual basis that the eligible generation equipment generated, as a percentage. The test needs more than 75; 75 or less, a value outside 0 to 100, a value that is not a number, or blank holds the class. A value stated while that claim is blank also holds the class. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].usedWithEligibleGenerationEquipment` | array \| boolean \| null \| number \| object \| string |  | For a Class 43.1 or 43.2 property whose claimsEligibleTransmissionEquipment is true: whether it is used in connection with the corporation's eligible electrical generation equipment, as true, false, Yes or No. Only true or Yes passes the test; false, any other value or blank holds the class. A value stated while that claim is blank also holds the class. Not read otherwise. On a row with several additionCohorts it is refused unless every cohort states the same value. |
| `assetData[].vesselConstructedInCanada` | array \| boolean \| null \| number \| object \| string |  | For a Class 7 vessel (isVessel true): whether it was constructed in Canada, true/false/null, one of the Reg 1101(2a) conditions. With registration in Canada, no use before acquisition and no structured financing facility, the vessel gets its own class and the Reg 1100(1)(v) allowance; false rules that out, and null otherwise holds Class 7. |
| `assetData[].vesselNotUsedBeforeAcquisition` | array \| boolean \| null \| number \| object \| string |  | For a Class 7 vessel (isVessel true): whether it was never used before the corporation acquired it, true/false/null, one of the Reg 1101(2a) conditions for a per-vessel class with the Reg 1100(1)(v) allowance. False rules that class out; null holds Class 7 unless another answer already rules it out. |
| `assetData[].vesselRegisteredInCanada` | array \| boolean \| null \| number \| object \| string |  | For a Class 7 vessel (isVessel true): whether it is registered in Canada, true/false/null, one of the Reg 1101(2a) conditions for a per-vessel class with the Reg 1100(1)(v) allowance. False rules that class out; null holds Class 7 unless another answer already rules it out. |
| `assetData[].vesselStructuredFinancingFacilityApplies` | array \| boolean \| null \| number \| object \| string |  | For a Class 7 vessel (isVessel true): whether a structured financing facility applies, true/false/null. True switches off the Reg 1101(2a) per-vessel class under Reg 1101(2c), leaving ordinary Class 7; false, with the three Reg 1101(2a) conditions true, gives the separate class and the Reg 1100(1)(v) allowance; null holds Class 7 unless a Reg 1101(2a) condition is already false. |
| `assetData[].wasDIEP` | boolean \| null \| string |  | Whether the property was designated immediate expensing property in an earlier year (Reg 1104(3.1)), true/false/null. True counts its disposition proceeds as DIEP proceeds, applies the ITA 13(7)(i) proceeds rule to a Class 10.1 vehicle and keeps its recapture taxable. Where a Class 10.1 class has recapture and no DIEP addition, false lets ITA 13(2) shield it and a blank is refused; conflicting answers within one Class 10.1 class are refused. |
| `assetData[].wouldHaveBeenClass53IfAcquiredIn2025` | array \| boolean \| null \| number \| object \| string |  | For a Class 43 addition with isAIIP true acquired after 2025: whether it would have been Class 53 had it been acquired in 2025, true/false/null. True gives it the Reg 1100(2) element A.1(f) factor for Class 43 property: 2 1/3 where it became available for use before 2030 (with the 30% rate, the full cost in the first year), 1 1/2 in 2030 or 2031, and 5/6 in 2032 or 2033. False gives the general factor, and null holds Class 43 with no allowance. On any other row the answer is not used, but a value other than true, false, Yes, No or blank is refused on every row. |
| `assetData[].wouldOtherwiseBeClass16` | boolean \| null \| string |  | For a Class 55 property: whether the zero-emission vehicle would otherwise be included in Class 16, as true, false or null; another value is refused. Anything but true on a property in the class holds Class 55 with no allowance. Not read in another class. |
| `associatedCorporationPropertyPayments` | array \| boolean \| null \| number \| object \| string |  | Rows of amounts paid or payable by an associated corporation under ITA s.129(6). Each row carries payerName, payerBusinessNumber, propertyClass, deductiblePortion, relatedExpenses, payerIsCCPC and payerElectedSubsection256_2. |
| `associatedCorporationPropertyPayments[]` | array \| boolean \| null \| number \| object \| string |  | Rows of amounts paid or payable by an associated corporation under ITA s.129(6). Each row carries payerName, payerBusinessNumber, propertyClass, deductiblePortion, relatedExpenses, payerIsCCPC and payerElectedSubsection256_2. |
| `associatedGroupAII` | array \| boolean \| null \| number \| object \| string |  | Preceding-calendar-year group adjusted aggregate investment income for the SBD grind (s.125(5.1)(b)). Enter zero for nil. Omission leaves the grind unresolved; it does not erase independently available current-year Schedule 7 amounts. Supplied AAII is reconciled to held history when available. |
| `associatedGroupTCEC` | array \| boolean \| null \| number \| object \| string |  | Sum of taxable capital employed in Canada across the associated group, for the current-year grind scenario. Reference only: it feeds no filing-grade small business deduction input, and supplying it marks the Schedule 33 result as not authoritative for prior-year grinds. |
| `basicHerdPresent` | array \| boolean \| null \| number \| object \| string |  | Whether an accepted 1971 basic herd exists. Yes requires a computed class continuity under ITA 29 before final Schedule 1 totals. |
| `bcManufacturingProcessingItc` | object |  | Entered provincial credit eligibility and expenditure facts. |
| `bcManufacturingProcessingItc.allocatedExpenditureLimit` | array \| boolean \| null \| number \| object \| string |  | Entered allocated expenditure limit. |
| `bcManufacturingProcessingItc.allocationAgreementFiled` | array \| boolean \| null \| number \| object \| string |  | Entered allocation agreement filed. |
| `bcManufacturingProcessingItc.associatedGroupTotalAllocated` | array \| boolean \| null \| number \| object \| string |  | Entered associated group total allocated. |
| `bcManufacturingProcessingItc.associatedWithOtherQualifyingCorporations` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.controlledByTaxExemptPersons` | array \| boolean \| null \| number \| object \| string |  | Entered controlled by tax exempt persons. |
| `bcManufacturingProcessingItc.creditFormFilingDate` | array \| boolean \| null \| number \| object \| string |  | Entered credit form filing date. A repayment-only year claims no credit, so the s.110.6(2) date is not tested there. |
| `bcManufacturingProcessingItc.eligibleExpenditures` | array |  | Entered eligible expenditures. An empty list asserts no current claim; with valid recapture events the s.110.2 credit is a disclosed nil. If the corporation does not qualify in this taxation year under s.110.1(1), both credit and s.110.5 repayment are disclosed nil. |
| `bcManufacturingProcessingItc.eligibleExpenditures[]` | object |  | Eligible expenditure record. |
| `bcManufacturingProcessingItc.eligibleExpenditures[].acquisitionDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].amount` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].availableForUseDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].claimedAmount` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].designatedAssistance` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].eligiblePropertyCategory` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].excludedFederalActivityUnderS127_11` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].expenditureNotClaimedUnderPart7_1OrPart6` | array \| boolean \| null \| number \| object \| string |  | Confirm the expenditure was not claimed under Part 7.1 in a preceding taxation year or as a BC qualified expenditure under Part 6 (Form T666) in this or a preceding year (s.110.1(1) 'eligible expenditure'(c)). Required only where the return does not settle it: no Form T666 on the return, an expenditure incurred before this year outside the years the filed continuity covers, or a predecessor's expenditure. A No disqualifies the row. |
| `bcManufacturingProcessingItc.eligibleExpenditures[].incurredByAmalgamationPredecessor` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].incurredDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].leasedForAtLeast72Months` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].lesseeExpectedUsePrimarilyForManufacturingOrProcessingInBc` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].lesseeIsQualifyingCorporation` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].liquefactionOfNaturalGas` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].predecessorQualifyingWhenIncurred` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].propertyIsExcludedPropertyUnderS110_1` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].propertyNotPreviouslyUsedOrAcquiredForUseOrLease` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].reg1101_5b1ElectionFiled` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].relatedEntityDesignatedAssistanceIncluded` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.eligibleExpenditures[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | The expenditure's source record (asset register or invoice), the same sourceRecordId its T661 work-location attribution row carries when it is also SR&ED capital. This return's Form T666 and the preceding claims are compared by it, never by name. Required when this return's Form T666 claims British Columbia expenditure. |
| `bcManufacturingProcessingItc.eligibleExpenditures[].usedPrimarilyForManufacturingOrProcessingInBc` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.employeeVentureCapitalCorporation` | array \| boolean \| null \| number \| object \| string |  | Entered employee venture capital corporation. |
| `bcManufacturingProcessingItc.exemptFromTaxUnderSection27` | array \| boolean \| null \| number \| object \| string |  | Entered exempt from tax under section27. |
| `bcManufacturingProcessingItc.priorClaimedExpenditures` | array |  | Expenditures the corporation claimed in a preceding taxation year under Part 6 (Form T666 BC qualified expenditure) or Part 7.1. An eligible expenditure row with the same sourceRecordId is left out of the credit with a disclosure (s.110.1(1) 'eligible expenditure'(c)). The roll-forward seeds the list from the filed prior year. It only removes expenditures; on its own it opens no claim. |
| `bcManufacturingProcessingItc.priorClaimedExpenditures[]` | object |  | One expenditure a preceding taxation year claimed. |
| `bcManufacturingProcessingItc.priorClaimedExpenditures[].claimedTaxYearEnd` | array \| boolean \| null \| number \| object \| string |  | The last day, as YYYY-MM-DD, of the preceding taxation year that claimed it. It must end before this taxation year begins. |
| `bcManufacturingProcessingItc.priorClaimedExpenditures[].claimedUnder` | array \| boolean \| null \| number \| object \| string |  | part_6 for a Form T666 BC qualified expenditure, part_7_1 for this credit. |
| `bcManufacturingProcessingItc.priorClaimedExpenditures[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | The claimed expenditure's source record identity. |
| `bcManufacturingProcessingItc.recaptureEvents` | array |  | Disposals, changes of use or removals from B.C. under s.110.5. Repayment applies only if the corporation qualifies under s.110.1(1) in the event year. Each stated event needs a date in this taxation year even when the corporation does not qualify. Known non-qualification excludes the events with a disclosed nil repayment; unresolved qualification gives no repayment amount. A Schedule 5 that flags no permanent establishment anywhere, or a T2 box 040 value that is not a code from 1 to 5, leaves qualification unresolved. Repayment of assistance alone is not an event. |
| `bcManufacturingProcessingItc.recaptureEvents[]` | object |  | Credit recapture event. |
| `bcManufacturingProcessingItc.recaptureEvents[].armsLengthDisposition` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.recaptureEvents[].capitalCost` | array \| boolean \| null \| number \| object \| string |  | Capital cost at the end of the property's available-for-use year, on the s.110.1(2) basis: exclude federal s.21 additions and determine it without s.13(7.1) or (7.4) reductions. This is the s.110.5(3) denominator, not current UCC. |
| `bcManufacturingProcessingItc.recaptureEvents[].claimedInYearOrPrecedingFiveTaxationYears` | array \| boolean \| null \| number \| object \| string |  | Confirm the property generated a Part 7.1 credit in this taxation year or one of the five preceding taxation years under s.110.5(1)(a). Count actual fiscal periods, including short years and applicable s.110.4 predecessor continuity, not five calendar years. |
| `bcManufacturingProcessingItc.recaptureEvents[].creditPreviouslyClaimed` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.recaptureEvents[].eventDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.recaptureEvents[].eventType` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.recaptureEvents[].fairMarketValue` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.recaptureEvents[].proceedsOfDisposition` | array \| boolean \| null \| number \| object \| string |  |  |
| `bcManufacturingProcessingItc.smallBusinessVentureCapitalCorporation` | array \| boolean \| null \| number \| object \| string |  | Entered small business venture capital corporation. |
| `bc_manufacturing_processing_itc` | array \| boolean \| null \| number \| object \| string |  |  |
| `britishColumbiaFarmerQualifyingAmount` | array \| boolean \| null \| number \| object \| string |  |  |
| `businessCarriedOnThroughout` | array \| boolean \| null \| number \| object \| string |  |  |
| `businessCarriedOnThroughoutByBusiness` | array \| boolean \| null \| number \| object \| string |  | ITA 111(5)(a)(i) conclusion for each named pre-event business. False is a completed No answer; omit an unanswered business. |
| `businessNumber` | array \| boolean \| null \| number \| object \| string |  |  |
| `capitalCost` | array \| boolean \| null \| number \| object \| string |  |  |
| `capitalGainsDividends` | array \| boolean \| null \| number \| object \| string |  | Capital gains dividend rows for Schedule 6 line 875, carrying an amount, provision, and foreign-source and review facts. Enter the full capital gain amount. Omission or null supplies no direct rows; unresolved dividend evidence still raises a filing error. |
| `capitalGainsDividends[]` | array \| boolean \| null \| number \| object \| string |  | Capital gains dividend rows for Schedule 6 line 875, carrying an amount, provision, and foreign-source and review facts. Enter the full capital gain amount. Omission or null supplies no direct rows; unresolved dividend evidence still raises a filing error. |
| `capitalGainsOnGifts` | array \| boolean \| null \| number \| object \| string |  |  |
| `carrybackRequests` | array \| boolean \| null \| number \| object \| string |  |  |
| `carrybackRequests[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `ccaOverrides` | object |  |  |
| `ccaRecaptureOnGifts` | array \| boolean \| null \| number \| object \| string |  |  |
| `charitableCarryforwardYears` | array \| boolean \| null \| number \| object \| string |  |  |
| `charitableCarryforwardYears[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `claimMaximumDonations` | array \| boolean \| null \| number \| object \| string |  | Whether to claim the maximum allowable Schedule 2 donation deduction for categories without an explicit donationClaimOverrides amount. Only true elects the maximum; when omitted or false, a positive available deduction requires a stated category claim before filing. |
| `claimMaximumLosses` | array \| boolean \| null \| number \| object \| string |  | Instruction to claim the maximum ITA 111(1) loss deductions available: Yes builds the loss elections greedily from the deductible pools. Stated lossElections rows alongside it contradict the instruction; the rows are applied and the return is held. |
| `class14_1Transitional` | array \| boolean \| null \| number \| object \| string |  | The Class 14.1 transitional facts block of the W08 fixed-assets workpaper header, carried at the request root. When a persisted fixed-assets workpaper is present its own block governs and a differing root copy is refused; without one the root value is read. |
| `combinedAdjustments` | array \| boolean \| null \| number \| object \| string |  | Posted adjusting journal entries, as a map from account id to the net amount posted against that account. Each amount may be a number or a numeric string. It is added to the trial-balance balance before the account is measured, and an unreadable entry is reported as an error rather than filed as zero. |
| `companionEifelRecords` | array \| boolean \| null \| number \| object \| string |  |  |
| `companionIssuerResourceRecords` | array \| boolean \| null \| number \| object \| string |  |  |
| `companionMediaCredits` | array \| boolean \| null \| number \| object \| string |  |  |
| `companionResourceEvents` | array \| boolean \| null \| number \| object \| string |  |  |
| `compute` | array \| boolean \| null \| number \| object \| string |  |  |
| `cooperativeCorporation136_2ThroughoutYear` | boolean \| null |  | Whether the corporation met the cooperative-corporation definition throughout the year, used for the Part I full-rate taxable-income calculation. A ready Schedule 24 box 100 operation code 05 supplies a positive answer; a contradictory false answer is rejected. Otherwise omission remains unresolved. Send a boolean; 0/1 and true/false text are also accepted. |
| `corporationName` | array \| boolean \| null \| number \| object \| string |  | Filing corporation name used for Schedule 511 and other filing headers when the jacket name is blank. Send the legal name. If neither source supplies a name, this reader returns no name and the consuming form applies its identity checks. |
| `corporationStatusChangeInAccrualPeriod` | array \| boolean \| null \| number \| object \| string |  | Whether disposed property accrued in value while the corporation lacked an eligible corporation status for the Schedule 7 eligible-portion calculation. True calls for the ineligible accrued portions affecting lines 002/012, 705/710 and 001/009. If omitted with gains or losses and both total ineligible portions unanswered, the engine reports a blocking missing-fact finding and retains the full amounts in its preview. |
| `creditUnionAllocation` | boolean \| null \| number \| string |  | T2 box 340, taxable capital gains or taxable dividends allocated to the corporation from a central credit union and deductible by the member under ITA s.137(5.2)(c). The engine subtracts it before the taxable-income zero floor. |
| `culturalCarryforwardYears` | array \| boolean \| null \| number \| object \| string |  |  |
| `culturalCarryforwardYears[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `currentYearCapitalLoss` | array \| boolean \| null \| number \| object \| string |  |  |
| `currentYearTCEC` | array \| boolean \| null \| number \| object \| string |  | Taxable capital employed in Canada for the current taxation year. It must be finite and non-negative. |
| `currentYearTCECMeta` | array \| boolean \| null \| number \| object \| string |  | Optional period and source details for currentYearTCEC. When supplied, basis must be current_tax_year and asOf must match the current year-end. Source labels and confirmation do not authorize the amount or replace association facts. |
| `daysInYear` | null \| number \| string | strict | Number of days in the taxation year, as a positive whole number, driving the ITA s.125(5)(b) short-year proration of the business limit. The third member of the canonical taxation-period trio with fiscalStart and fiscalEnd: all three are mandatory whenever the request reaches Part I through its dependency closure, which most targets do. A missing member is refused before any computation, and a day count that disagrees with the two dates is an error. |
| `deductibleDividendRelatedExpenses` | array \| boolean \| null \| number \| object \| string |  | Expenses related to deductible dividends, as an object with total, foreign and reviewed. Schedule 7 lines 062 and 049 back out deductible dividends net of these expenses. Send reviewed true once the amounts are confirmed: an unreviewed packet blocks, and a total with no matching Schedule 3 dividend deduction to back out blocks as well. |
| `deemedForeignExchange` | array \| boolean \| null \| number \| object \| string |  | Schedule 6 deemed foreign-exchange gain or loss rows, with signed amount and transaction-character facts. Omission uses the dedicated foreign-exchange workpapers, or no rows when none exist. Supply one source only; use an empty array for no direct rows, since an explicit null is rejected by the batch reader. |
| `deemedForeignExchange[]` | array \| boolean \| null \| number \| object \| string |  | Schedule 6 deemed foreign-exchange gain or loss rows, with signed amount and transaction-character facts. Omission uses the dedicated foreign-exchange workpapers, or no rows when none exist. Supply one source only; use an empty array for no direct rows, since an explicit null is rejected by the batch reader. |
| `deemedYearEndEvents` | array \| boolean \| null \| number \| object \| string |  | Array of already-proved deemed year-end event objects (eventType plus its ISO event date). The engine projects s.149 status-change events onto post-event basis continuity and reads s.40(3.4)(b)(ii)/(iii) suspended-loss revival events. An emigration event also carries allPropertiesIncluded, propertyRegisterEvidence and propertyRows for the s.128.1(4)(b)/(c) departure-year computation. Each property states its identity, ownership, tax character, FMV, tax cost and valuation source; capital/depreciable rows carry Schedule 6 facts, depreciable rows carry capital cost, class UCC and Schedule 8 facts, and resource rows identify their Schedule 12 pool. Missing facts hold the return and post no partial register. An entry records a proved filing event; it does not establish one. Members are read under these camelCase names only: an event or row member stated under another spelling (for example event_date, date or property_rows) is refused, naming the member to send. |
| `deemedYearEndEvents[]` | array \| boolean \| null \| number \| object \| string |  | One already-proved deemed year-end event. An emigration event carries the complete s.128.1(4)(b)/(c) property register; its departure-year dispositions reach Schedules 6, 8, 12 and 1 and its FMV total supplies Schedule 97's s.219.1 element A. Reacquisition belongs to the following period. Missing character, cost, valuation or pool facts hold the return. |
| `dispositions` | array |  | Current-year property dispositions for Schedule 8. |
| `dispositions[]` | object |  | Current-year property dispositions for Schedule 8. |
| `dispositions[]._rowKey` | null \| string |  |  |
| `dispositions[].acb` | null \| number \| string |  | Adjusted cost base of the property immediately before the disposition, in dollars. Required on every row. A negative entry is refused: reconcile the prior ITA 40(3) deemed gain first (ITA 54, adjusted cost base). |
| `dispositions[].acquisitionWithin61DaysWasRightToAcquireOnly` | array \| boolean \| null \| number \| object \| string |  | Whether that acquisition inside the 61-day window was only a right to acquire the property rather than the property itself. |
| `dispositions[].affiliatedAcquisitionWithin61Days` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation or an affiliated person acquired the same or an identical property in the 61-day period beginning 30 days before the disposition. |
| `dispositions[].affiliatedOwnershipAtEndOfPeriod` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation or an affiliated person still owned the substituted property at the end of that 61-day period, which suspends rather than denies the loss. |
| `dispositions[].allSharesFmvAfterDisposition` | null \| number \| string |  | Total fair market value of all shares of that class held immediately after the disposition, in dollars. |
| `dispositions[].assetClass` | array \| boolean \| null \| number \| object \| string |  | The preparer's own asset grouping label for the row. It is carried for display and reconciliation and does not route the row; propertyType does that. |
| `dispositions[].bilArmsLengthOrSubsection50_1` | array \| boolean \| null \| number \| object \| string |  | Confirms the Part 7 condition that the disposition was one to which subsection 50(1) applies or was made to a person with whom the corporation dealt at arm's length. |
| `dispositions[].bilDebtorDealsAtArmsLength` | array \| boolean \| null \| number \| object \| string |  | For a ccpcDebt row, whether the debtor corporation dealt at arm's length with the corporation. Required by ITA 39(1)(c)(iv). |
| `dispositions[].bilDebtorSbcOrQualifyingFormerSbc` | array \| boolean \| null \| number \| object \| string |  | For a ccpcDebt row, whether the debtor was a small business corporation or a corporation that qualified as one in the preceding twelve months, as ITA 39(1)(c)(iv) requires. |
| `dispositions[].bilQualification` | array \| boolean \| null \| number \| object \| string |  | Which business investment loss property the Part 7 row is. Send sbcShare for a share of a small business corporation or ccpcDebt for a debt owing by a Canadian-controlled private corporation. |
| `dispositions[].bookGainLoss` | null \| number \| string |  | Signed gain or loss already recorded in the financial statements for this disposition, in dollars. It drives the book-to-tax reconciliation. Null means unanswered and blocks the filing projection; enter 0 to confirm none. |
| `dispositions[].ccaClass` | array \| boolean \| null \| number \| object \| string |  | Capital cost allowance class of the disposed depreciable property, such as 1 or 10.1. It links the row to its Schedule 8 class. |
| `dispositions[].changeOfUseEventId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the change-of-use event whose post-change basis this disposition continues. A manual row must not reuse an event the workpapers already derived. |
| `dispositions[].classOfShares` | array \| boolean \| null \| number \| object \| string |  | Class of the shares disposed of, as it prints in the Part 1 shares grid. |
| `dispositions[].controlledCorporationAtAnyTimeInYear` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation whose share was disposed of was controlled by the filer at any time in the year, which engages the paragraph 40(2)(h) loss reduction. |
| `dispositions[].cusipIsin` | array \| boolean \| null \| number \| object \| string |  | CUSIP or ISIN of the security disposed of. With the description and settlement date it identifies the lot, so a duplicated or amended slip is caught. |
| `dispositions[].dateAcquired` | string |  | Date of acquisition of the property, as YYYY-MM-DD. It prints in the date of acquisition column and sets the holding period the loss rules measure. |
| `dispositions[].dateOfDisposition` | string |  | Date of the disposition, as YYYY-MM-DD. It dates the gain in the year, the capital dividend account event, and every rule measured from the disposition. |
| `dispositions[].debtAcquiredAsArmsLengthCapitalPropertyConsideration` | array \| boolean \| null \| number \| object \| string |  | Whether the debt was received as consideration for the disposition of capital property to an arm's-length person, the other way out of the paragraph 40(2)(g)(ii) denial. |
| `dispositions[].debtAcquiredForIncomePurpose` | array \| boolean \| null \| number \| object \| string |  | Whether the debt was acquired for the purpose of gaining or producing income from a business or property. Without it, paragraph 40(2)(g)(ii) denies the loss. |
| `dispositions[].description` | array \| boolean \| null \| number \| object \| string |  | Name or description of the disposed property, as it prints in the grid: the corporation whose shares were held, the municipal address, the bond issuer, or the description of other, personal-use or listed personal property. |
| `dispositions[].disposedToDesignatedInstitution` | array \| boolean \| null \| number \| object \| string |  | Whether the certified cultural property was disposed of to a designated institution or public authority. Both this and isCertifiedCulturalProperty are needed for the ITA 39(1)(a)(i.1) exclusion. |
| `dispositions[].dispositionReconciliationId` | array \| boolean \| null \| number \| object \| string |  | Foreign key to the current-year capital disposition workpaper row this disposition reconciles to. |
| `dispositions[].distressPreferredShareIssueDate` | string |  | Date the distress preferred share was issued, as YYYY-MM-DD. It settles whether the share was outstanding at the settlement. |
| `dispositions[].faceValue` | null \| number \| string |  | Face value of the bonds disposed of, as it prints in the Part 3 bonds grid. |
| `dispositions[].fairMarketValue` | null \| number \| string |  | Fair market value of the property at the time of the disposition, in dollars. It becomes the proceeds where ITA 69(1)(b) applies. |
| `dispositions[].flowThroughShareClass` | array \| boolean \| null \| number \| object \| string |  | Identifier of the flow-through share class the donated property belongs to, so the exemption threshold is applied to the right class. |
| `dispositions[].flowThroughShareExemptionThreshold` | null \| number \| string |  | Exemption threshold of the flow-through share class at the time of the disposition, in dollars. It is the first of the two amounts the subsection 40(12) deemed gain is the lesser of. |
| `dispositions[].foreignCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency the row's amounts are stated in, as a three-letter ISO 4217 code. A row in a currency other than the reporting currency is held for review until it is converted. |
| `dispositions[].fxConverted` | array \| boolean \| null \| number \| object \| string |  | Confirms the row's amounts have already been converted to the reporting currency at the rate for the day of the transaction. |
| `dispositions[].fxReviewReason` | array \| boolean \| null \| number \| object \| string |  | Short reason the row is held for foreign exchange review, shown beside the hold. |
| `dispositions[].giftEligibleAmount` | null \| number \| string |  | Eligible amount of the gift, in dollars. Where an advantage was received, only the part of the gain attributable to the eligible amount is zero rated. |
| `dispositions[].giftKind` | array \| boolean \| null \| number \| object \| string |  | Which zero inclusion rate the donation claims. Send 38(a.1) for a listed security donated to a qualified donee or 38(a.2) for ecologically sensitive land. |
| `dispositions[].inclusionRate` | array \| boolean \| null \| number \| object \| string |  | Declared inclusion character of the row. Schedule 6 accepts capital-property rows only, so a value naming a 100% or income-account treatment is refused: route ordinary income through a business-income workpaper instead. |
| `dispositions[].interveningAcbAdjustment` | array \| boolean \| null \| number \| object \| string |  | Signed net adjustment to the adjusted cost base between the prior change-of-use event and this disposition, in dollars. Send it with its dated ledger reference; it needs a preceding change event. |
| `dispositions[].interveningAcbAdjustmentReference` | array \| boolean \| null \| number \| object \| string |  | Reference to the supporting basis ledger for the intervening adjustment. It is required whenever an intervening adjustment is entered. |
| `dispositions[].interveningAcbAdjustmentThroughDate` | array \| boolean \| null \| number \| object \| string |  | Date through which that intervening basis ledger runs, as YYYY-MM-DD. |
| `dispositions[].isActiveAsset` | array \| boolean \| null \| number \| object \| string |  | Whether the property was used in an active business. It splits the taxable capital gain between active-business and investment character for the small business deduction and aggregate investment income. |
| `dispositions[].isBusinessInvestmentLoss` | array \| boolean \| null \| number \| object \| string |  | Whether the row is a business investment loss. It routes the row to the Part 7 allowable business investment loss grid (ITA 39(1)(c)). |
| `dispositions[].isCertifiedCulturalProperty` | array \| boolean \| null \| number \| object \| string |  | Whether the property is certified cultural property. A gain on its disposition to a designated institution is excluded from capital gains. |
| `dispositions[].isDebtOrRightToReceive` | array \| boolean \| null \| number \| object \| string |  | Whether the property is a debt or other right to receive an amount. It engages the ITA 40(2)(g)(ii) loss denial unless the debt was acquired for an income purpose or as arm's-length consideration. |
| `dispositions[].isDepreciableProperty` | array \| boolean \| null \| number \| object \| string |  | Whether the disposed property is depreciable property. A loss on depreciable property is not a capital loss: recapture and terminal loss are computed on Schedule 8 instead (ITA 39(1)(b)(i)). |
| `dispositions[].isDispositionToAffiliatedIssuer` | array \| boolean \| null \| number \| object \| string |  | Whether the share was disposed of to the issuing corporation and the filer was affiliated with it immediately after, in which case the loss is deemed nil. |
| `dispositions[].isDistressPreferredShare` | array \| boolean \| null \| number \| object \| string |  | Whether the share qualified as a distress preferred share at the time of settlement, which is part of the commercial obligation definition in subsection 80(1). |
| `dispositions[].isExcludedGift` | array \| boolean \| null \| number \| object \| string |  | Whether the personal-use property was disposed of as a charitable, cultural or ecological gift, which takes the row out of the ITA 46(1) $1,000 floor. |
| `dispositions[].isFlowThroughShareClass` | array \| boolean \| null \| number \| object \| string |  | Whether the donated property is included in a flow-through share class of property. Subsection 40(12) restores a deemed capital gain above the exemption threshold. |
| `dispositions[].isForeignAffiliateShare` | array \| boolean \| null \| number \| object \| string |  | Whether the disposed share is a share of a foreign affiliate. It opens the ITA 92(2) adjusted cost base reduction and the ITA 93 election path. |
| `dispositions[].isForeignSource` | array \| boolean \| null \| number \| object \| string |  | Whether the gain or loss is foreign source. It splits the row into the foreign stream for the foreign tax credit and for aggregate investment income. |
| `dispositions[].isGiftDisposition` | array \| boolean \| null \| number \| object \| string |  | Whether the property was disposed of by way of gift. Proceeds are then the fair market value of the property. |
| `dispositions[].isListedPersonalProperty` | array \| boolean \| null \| number \| object \| string |  | Whether the property is listed personal property. A listed personal property row is siloed: its losses may be applied only against listed personal property gains (ITA 41). |
| `dispositions[].isNonArmsLengthDisposition` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation disposed of the property to a person it does not deal with at arm's length (ITA 69(1)(b)(i)); proceeds below fair market value are deemed to be fair market value. |
| `dispositions[].isOptionWithRespectToDepreciableOrRealProperty` | array \| boolean \| null \| number \| object \| string |  | Whether the disposed capital property is an option with respect to depreciable or real property, which engages the subsection 13(5.3) deemed recapture. |
| `dispositions[].isPartDisposition` | array \| boolean \| null \| number \| object \| string |  | Whether only part of a personal-use property was disposed of while another part was retained, so the $1,000 floor is apportioned (ITA 46(2)). |
| `dispositions[].isPartOfSet` | array \| boolean \| null \| number \| object \| string |  | Whether the personal-use property disposed of is part of a set that is ordinarily disposed of as a set, so ITA 46(3) treats each disposition as a disposition of a part. |
| `dispositions[].isPrescribedClassDepreciableProperty` | array \| boolean \| null \| number \| object \| string |  | Whether the depreciable property belongs to a prescribed class. It settles which Schedule 8 class receives the disposition. |
| `dispositions[].isPrivateFoundationDonee` | array \| boolean \| null \| number \| object \| string |  | Whether the donee is a private foundation. Paragraph 38(a.2) expressly excludes a gift of ecologically sensitive land to a private foundation. |
| `dispositions[].isRelatedSegregatedFundTrustInterest` | array \| boolean \| null \| number \| object \| string |  | Whether the property is an interest in a related segregated fund trust. A gift of such an interest to a qualified donee is zero rated under ITA 38(a.1)(i). |
| `dispositions[].isSubsection50_2Debt` | array \| boolean \| null \| number \| object \| string |  | Whether the debt is one to which subsection 50(2) applies: a debt that is personal-use property of the corporation, owed by a person it deals with at arm's length, and established to have become a bad debt in the year. The corporation is then deemed to have disposed of it at the end of the year for proceeds equal to its adjusted cost base less the gain, if any, already reported on the personal-use property whose proceeds of disposition included the debt, and to have reacquired it immediately after the end of the year at that same cost. |
| `dispositions[].isTrustDispositionWithoutBeneficialOwnershipChange` | array \| boolean \| null \| number \| object \| string |  | Whether the transfer is to a trust with no change in beneficial ownership, which is outside the ITA 69(1)(b) deemed proceeds rule. |
| `dispositions[].maturityDate` | string |  | Maturity date of the bonds disposed of, as YYYY-MM-DD. It prints in the Part 3 bonds grid. |
| `dispositions[].needsFxReview` | array \| boolean \| null \| number \| object \| string |  | Marks the row for a foreign exchange review, which holds the filing projection until fxConverted is confirmed. |
| `dispositions[].numberOfShares` | null \| number \| string |  | Number of shares disposed of. It prints in the Part 1 shares grid and is the denominator for the ITA 40(3.3) and 40(3.4) split when only part of the identical shares were reacquired. |
| `dispositions[].obligationPayableToTransfereeImmediatelyAfterDisposition` | array \| boolean \| null \| number \| object \| string |  | Whether the transferred obligation was payable to the transferee immediately after the disposition. With a related transferor, transferee and debtor, the loss is deemed nil. |
| `dispositions[].outlays` | null \| number \| string |  | Outlays and expenses made or incurred for the purpose of making the disposition, in dollars. Required on every row; enter 0 for reviewed nil (ITA 40(1)(a)(i)). |
| `dispositions[].paragraph40_2_dApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the loss is on a bond, debenture or other debt obligation whose interest was exempt under paragraph 81(1)(m), so paragraph 40(2)(d) reduces the loss. |
| `dispositions[].paragraph40_2_dExemptInterest` | null \| number \| string |  | Interest excluded from income under paragraph 81(1)(m) that reduces the loss, in dollars. |
| `dispositions[].paragraph40_2_e_2Applies` | array \| boolean \| null \| number \| object \| string |  | Whether the loss is on a commercial obligation settled in the year, so paragraph 40(2)(e.2) reduces it by the statutory settlement ratio. |
| `dispositions[].paragraph40_2_e_2ReplacementObligationsFmv` | null \| number \| string |  | Amount C of paragraph 40(2)(e.2): fair market value of the replacement commercial obligations included in amount B, in dollars. |
| `dispositions[].paragraph40_2_e_2SettlementConsiderationFmv` | null \| number \| string |  | Amount B of paragraph 40(2)(e.2): fair market value of all consideration given to settle the obligation, in dollars. |
| `dispositions[].paragraph40_2_e_3ForeignAffiliateExceptionApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the paragraph 40(2)(e.3) foreign affiliate exception takes the settlement out of paragraph 40(2)(e.2). |
| `dispositions[].paragraph40_2_fApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the gain or loss arises on a chance to win a prize or bet, or a right to receive an amount as a prize or as winnings on a bet, in which case it is nil. |
| `dispositions[].paragraph40_2_iApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the share loss is reduced by prescribed assistance received in respect of, or for the acquisition of, the share. |
| `dispositions[].paragraph40_2_iAssistanceAlreadyApplied` | null \| number \| string |  | The part of that prescribed assistance already reflected in the computed loss, in dollars, so it is not deducted twice. |
| `dispositions[].paragraph40_2_iPrescribedAssistance` | null \| number \| string |  | Prescribed assistance received in respect of, or for the acquisition of, the share, in dollars. |
| `dispositions[].paragraph53_1_f_1AdditionsDuringControl` | null \| number \| string |  | Additions to the adjusted cost base of the share under paragraph 53(1)(f.1) made while the corporation was controlled, in dollars. |
| `dispositions[].priorSubsection40_2_hLossReductions` | null \| number \| string |  | Loss reductions already taken under paragraph 40(2)(h) in prior years in respect of the same additions, in dollars, so the same amount is not deducted twice. |
| `dispositions[].proceeds` | null \| number \| string |  | Proceeds of disposition for the row, in dollars. Required on every row and never blank: it is the first operand of the gain under ITA 40(1)(a)(i). Enter 0 for a nil-proceeds disposition. |
| `dispositions[].propertyGroupId` | array \| boolean \| null \| number \| object \| string |  | Identifier that groups the building and the land it sits on, so subsection 13(21.1) can measure the two dispositions together. |
| `dispositions[].propertyId` | array \| boolean \| null \| number \| object \| string |  | Stable identifier for the disposed property. It links the row to a change-of-use event, an acquisition-of-control designation, a section 55 receiver, a transfer pricing basis record and a suspended loss. |
| `dispositions[].propertyType` | null \| string |  | Which Schedule 6 grid the row prints in. Send one of shares, realEstate, bonds, other, personalUse, listedPersonalProperty or businessInvestment. Blank leaves the row unrouted, which blocks the filing projection once the row carries amounts. |
| `dispositions[].propertyUseDeductionByTaxpayerOrNonArmsLengthPerson` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation or a non-arm's-length person deducted an amount paid for the use of, or the right to use, the underlying property. Subsection 13(5.3) needs the answer. |
| `dispositions[].quantity` | array \| boolean \| null \| number \| object \| string |  | Quantity of the security disposed of, used with the security identity and settlement date to match a slip lot. |
| `dispositions[].reacquiredQuantity` | null \| number \| string |  | How many of the disposed identical properties were reacquired inside the 61-day window. It cannot exceed numberOfShares; subsections 40(3.3) and 40(3.4) operate per particular property. |
| `dispositions[].reportCode` | array \| boolean \| null \| number \| object \| string |  | Slip report code for a row sourced from a securities disposition slip. Send O for original, A for amended or C for cancelled. An amendment replaces the lot it supersedes and a cancelled row never reaches Schedule 6. |
| `dispositions[].retainedSharesFmvAfterDisposition` | null \| number \| string |  | Fair market value of the shares of that class retained immediately after the disposition, in dollars. It apportions the denied loss to the retained shares. |
| `dispositions[].rightToAcquireSubstitutedPropertyAtEndOfPeriod` | array \| boolean \| null \| number \| object \| string |  | Whether a right to acquire the substituted property was held at the end of the 61-day period, which is enough for the section 54 superficial loss test. |
| `dispositions[].rolloverElectionApplies` | array \| boolean \| null \| number \| object \| string |  | Whether a rollover election governs the transfer, so an elected amount rather than fair market value is the proceeds. |
| `dispositions[].sbcSharePre1972Status` | array \| boolean \| null \| number \| object \| string |  | Pre-1972 history of the small business corporation share for the business investment loss. Send notPre1972, pre1972, or pre1972AcquiredArmsLengthAfter1971. |
| `dispositions[].section13_21_1HistoricalNecessaryLandOwnership` | boolean \| null \| string |  | Whether the land was necessary for the use of the building and was owned as such. Answer yes or no. |
| `dispositions[].section13_21_1LandDisposedInYearByTaxpayerOrNonArmsLengthPerson` | boolean \| null \| string |  | Whether the corporation or a non-arm's-length person also disposed of that land in the year. Answer yes or no; paragraph 13(21.1)(b) turns on it. |
| `dispositions[].section13_21_1LandFairMarketValue` | null \| number \| string |  | Fair market value of the subjacent and immediately contiguous land at the time of the disposition, in dollars. |
| `dispositions[].section13_21_1PriorThreeYearNonArmsLengthLandCapitalGains` | null \| number \| string |  | Capital gains on that land realised by the corporation or a non-arm's-length person in the three preceding years, in dollars, which paragraph 13(21.1)(b) brings into the terminal loss limit. |
| `dispositions[].section13_5_3OptionCost` | array \| boolean \| null \| number \| object \| string |  | The corporation's cost in respect of the option, in dollars. Adjusted cost base is not proof of it, so the row must state it. The excess of proceeds over this cost is deemed recapture. |
| `dispositions[].section149PropertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `dispositions[].section92_2AcbBeforeReductionCAD` | null \| number \| string |  | Adjusted cost base of the foreign affiliate share before the subsection 92(2) reduction, in Canadian dollars. |
| `dispositions[].section92_2ForeignIncomeOrProfitsTaxCAD` | null \| number \| string |  | Foreign income or profits tax paid in respect of those dividends, in Canadian dollars, which is added back under subsection 92(2). |
| `dispositions[].section92_2PreAcquisitionSurplusDividendsCAD` | null \| number \| string |  | Pre-acquisition surplus dividends received on the share, in Canadian dollars, which reduce its adjusted cost base under subsection 92(2). |
| `dispositions[].section93ElectionId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the subsection 93(1) election filed for this share disposition. It links the row to the elected dividend amount, which reduces the proceeds. |
| `dispositions[].setAcb` | null \| number \| string |  | Adjusted cost base of the SET, in dollars, when the row is part of a set. It replaces wholePropertyAcb as the ITA 46(3) denominator for the apportioned floor. |
| `dispositions[].stopLossAllNewSharesAcbImmediatelyAfterExchange` | null \| number \| string |  | Total adjusted cost base of ALL shares received on the exchange immediately after it, in dollars. It apportions the old share dividends to this row. |
| `dispositions[].stopLossDividendsDeducted` | null \| number \| string |  | Dividends received on the share and deducted under section 112 or 113, in dollars. They reduce the share loss under subsection 112(3). |
| `dispositions[].stopLossExchangedShareStatus` | array \| boolean \| null \| number \| object \| string |  | Whether the share disposed of was received on an exchange, so the subsection 112(5.5) and 112(5.6) substituted share rules apply. |
| `dispositions[].stopLossNewShareAcbImmediatelyAfterExchange` | null \| number \| string |  | Adjusted cost base of this new share immediately after the exchange, in dollars. |
| `dispositions[].stopLossOldShareAcbImmediatelyBeforeExchange` | null \| number \| string |  | Adjusted cost base of the old share immediately before the exchange, in dollars. It is the denominator of the old share allocation. |
| `dispositions[].stopLossOldShareDividendsDeducted` | null \| number \| string |  | Dividends deducted on the OLD share given up on the exchange, in dollars. |
| `dispositions[].stopLossOldShareQualifiedDividends` | null \| number \| string |  | The part of the old share dividends that are qualified dividends, in dollars. |
| `dispositions[].stopLossOldShareQualifiedDividendsFivePercentTestAmount` | null \| number \| string |  | Old share qualified dividends measured for the five per cent ownership test, in dollars. |
| `dispositions[].stopLossOwnedThroughout365Days` | array \| boolean \| null \| number \| object \| string |  | Whether the share was owned throughout the 365 days before the disposition, one limb of the qualified dividend definition. |
| `dispositions[].stopLossOwnershipPercentage` | null \| number \| string |  | Percentage of the issued shares of that class owned by the corporation and non-arm's-length persons, for the five per cent test. |
| `dispositions[].stopLossQualifiedDividends` | null \| number \| string |  | The part of those dividends that are qualified dividends for subsection 112(3), in dollars. |
| `dispositions[].stopLossQualifiedDividendsFivePercentTestAmount` | null \| number \| string |  | Qualified dividends measured for the five per cent ownership test in the subsection 112(6) definition, in dollars. |
| `dispositions[].subsection100ExceptionKind` | array \| boolean \| null \| number \| object \| string |  | Which subsection 100 exception is claimed. Send 1.2 for the de minimis interest exception or 1.3 for the Canadian permanent establishment property exception. |
| `dispositions[].subsection100PortionAt100Percent` | null \| number \| string |  | Portion of the capital gain on the partnership interest that is subject to a 100 per cent inclusion rate, in dollars. It prints as the amount doubled at line 902. |
| `dispositions[].subsection100_1_2RequirementsMet` | array \| boolean \| null \| number \| object \| string |  | Confirms every requirement of the subsection 100(1.2) de minimis exception is met. |
| `dispositions[].subsection100_1_3AllPartnershipPropertyFmv` | null \| number \| string |  | Fair market value of all partnership property, in dollars. It is the denominator of the 100(1.3) ratio test and must be positive. |
| `dispositions[].subsection100_1_3PeReviews` | array \| boolean \| null \| number \| object \| string |  | The Regulation 8201 permanent establishment reviews immediately before and immediately after the disposition, one row each with timing set to before or after, carrying the fixed place of business, agent authority and the other tests that regulation lists. |
| `dispositions[].subsection100_1_3PropertyUsedThroughCanadianPeAfter` | array \| boolean \| null \| number \| object \| string |  | Whether that property continued to be used in a business carried on through a Canadian permanent establishment immediately after the disposition. |
| `dispositions[].subsection100_1_3PropertyUsedThroughCanadianPeBefore` | array \| boolean \| null \| number \| object \| string |  | Whether the partnership property was used in a business carried on through a Canadian permanent establishment immediately before the disposition. |
| `dispositions[].subsection100_1_3QualifyingPropertyFmv` | null \| number \| string |  | Fair market value of the qualifying partnership property, in dollars. It is the numerator of the 100(1.3) ratio test. |
| `dispositions[].subsection100_1_3TransfereeIs100_1_1_bNonresident` | array \| boolean \| null \| number \| object \| string |  | Whether the acquirer of the partnership interest is the non-resident person described in paragraph 100(1.1)(b), the case the 100(1.3) exception is written for. |
| `dispositions[].subsection112_3Pre1995AgreementExceptionApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the pre-1995 written agreement exception takes the share out of the subsection 112(3) loss reduction. |
| `dispositions[].subsection112_5_5Applies` | array \| boolean \| null \| number \| object \| string |  | Whether subsection 112(5.5) applies to carry the old share dividends onto the substituted share. |
| `dispositions[].subsection112_5_6Applies` | array \| boolean \| null \| number \| object \| string |  | Whether subsection 112(5.6) applies to the substituted share. |
| `dispositions[].subsection39_1Exclusion` | array \| boolean \| null \| number \| object \| string |  | Which ITA 39(1) excluded property the row is, when it is one. Send none, canadianResourceProperty, foreignResourceProperty, timberResourceProperty, insurancePolicy, qualifyingEnvironmentalTrustInterest or section142DispositionApplies. |
| `dispositions[].subsection39_1_c_viTaxableDividends` | null \| number \| string |  | Taxable dividends received on the share that reduce the business investment loss, in dollars. |
| `dispositions[].subsection40_3_3DispositionExclusion` | array \| boolean \| null \| number \| object \| string |  | Which section 54 superficial loss carve-out the disposition falls in, when one applies. Send none or one of superficialLoss54c through superficialLoss54g. |
| `dispositions[].subsection46_4Applies` | array \| boolean \| null \| number \| object \| string |  | Whether the underlying personal-use property depreciated while used to gain income, so subsection 46(4) reduces the gain or loss by that decline. |
| `dispositions[].subsection46_4GainLossWithoutDecrease` | null \| number \| string |  | Signed gain or loss computed without the ITA 46(4) decline in value, in dollars. Required when subsection46_4Applies is answered yes. |
| `dispositions[].subsection85_4AcbIncrease` | null \| number \| string |  | Increase in the adjusted cost base of the share under subsection 85.1(4), in dollars, which reduces the business investment loss. |
| `dispositions[].superficialLossSubstitutedPropertyAcquirer` | array \| boolean \| null \| number \| object \| string |  | Who acquired the substituted property. Send taxpayer or affiliatedPerson. |
| `dispositions[].superficialLossSubstitutedPropertyId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the substituted property acquired inside the 61-day window, so the suspended loss is tracked against it. |
| `dispositions[].suspensionId` | array \| boolean \| null \| number \| object \| string |  | Identifier the corporation carries the suspended loss under, so a later revival can be matched to this row. It defaults to propertyId when blank. |
| `dispositions[].transferorTransfereeAndDebtorRelated` | array \| boolean \| null \| number \| object \| string |  | Whether the transferor, the transferee and the debtor were related at the time of the transfer, the other condition of paragraph 40(2)(e.1). |
| `dispositions[].wholePropertyAcb` | null \| number \| string |  | Adjusted cost base of the WHOLE personal-use property, in dollars. It is the denominator ITA 46(2)(a)(ii) uses to apportion the $1,000 floor to the part disposed of. Required on a part disposition. |
| `dispositions[].yearAcquired` | array \| boolean \| null \| number \| object \| string |  | Year of acquisition, as a four-digit year, for a row whose exact acquisition date is not available. A full date in dateAcquired governs whenever it is present. |
| `donationClaimOverrides` | array \| boolean \| null \| number \| object \| string |  | Schedule 2 donation deductions claimed, keyed by gift category, with finite non-negative numbers or numeric strings. Enter zero to claim nil. Omitted or blank category amounts require claimMaximumDonations to be true when a positive deduction is available. |
| `ecoLandPost2014CarryforwardYears` | array \| boolean \| null \| number \| object \| string |  |  |
| `ecoLandPost2014CarryforwardYears[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `ecoLandPre2014CarryforwardYears` | array \| boolean \| null \| number \| object \| string |  |  |
| `ecoLandPre2014CarryforwardYears[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `emigrationForeignIncomeAlreadyIncluded` | array \| boolean \| null \| number \| object \| string |  | S12 foreign-source income basis for an emigration return. True means sourceIncome and foreignResourceIncomeBeforeDeductions already include the deemed foreign-resource proceeds; False adds the computed s.59(1) amounts to the supplied pre-emigration source income. A missing answer holds the foreign claim. It may also be saved in schedule12.emigrationForeignIncomeAlreadyIncluded. |
| `engagementPeriods` | array \| null |  | Taxation-period history as an array of objects containing id, periodStart and yearEnd, with dates in YYYY-MM-DD form. Schedule 31 uses it to order prior periods, and Schedule 54 and pool tracking use it to find a prior period start from its year-end. Omitted, empty or malformed history does not establish a usable period sequence; dependent history checks remain unresolved. A period superseded by an amendment states amendedByTaxYearId and is not read as a second period. A period stating taxYearId, period_start or fiscalStart, year_end or fiscalEnd, or amended_by_tax_year_id is refused, naming id, periodStart, yearEnd or amendedByTaxYearId. |
| `engagementPeriods[]` | object |  | Taxation-period history as an array of objects containing id, periodStart and yearEnd, with dates in YYYY-MM-DD form. Schedule 31 uses it to order prior periods, and Schedule 54 uses it to find a prior period start from its year-end. Omitted, empty or malformed history does not establish a usable period sequence; dependent history checks remain unresolved. A period superseded by an amendment states amendedByTaxYearId and is not read as a second period. A period stating taxYearId, period_start or fiscalStart, year_end or fiscalEnd, or amended_by_tax_year_id is refused, naming id, periodStart, yearEnd or amendedByTaxYearId. |
| `entityId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the filing corporation, used by Schedule 42 and predecessor-continuity checks to match authenticated evidence, and to identify statutory proration periods. The identifier does not authorize access to another corporation. Omission prevents predecessor evidence from matching; proration labels may fall back to the filing BN or tax-year identifier. |
| `fapiInclusions` | array \| boolean \| null \| number \| object \| string |  | Foreign accrual property income rows for Schedule 1 line 217 and related foreign accrual tax deductions. Each row may supply a reviewed inclusionCAD or exactly one fapiComputation statutory-components record to derive the inclusion; entered components must be complete, reviewed and tied to an affiliate year ending in this corporation year. When omitted, the engine reads the dedicated FAPI inclusion workpapers. Supplying null or an empty array supplies no direct rows and suppresses that fallback; independent foreign-affiliate checks still apply. |
| `fapiInclusions[]` | array \| boolean \| null \| number \| object \| string |  | Foreign accrual property income rows for Schedule 1 line 217 and related foreign accrual tax deductions. Each row may supply a reviewed inclusionCAD or exactly one fapiComputation statutory-components record to derive the inclusion; entered components must be complete, reviewed and tied to an affiliate year ending in this corporation year. When omitted, the engine reads the dedicated FAPI inclusion workpapers. Supplying null or an empty array supplies no direct rows and suppresses that fallback; independent foreign-affiliate checks still apply. |
| `farmingBusinessLossLine485` | array \| boolean \| null \| number \| object \| string |  | Non-negative farming business loss for Schedule 4 line 485, used in the shared restricted-farm-loss determination feeding Schedule 1 line 233. When farming is present and farmingChiefSourceStatus is notChiefSource, omission leaves the calculation unresolved and blocks filing. |
| `farmingChiefSourceStatus` | array \| boolean \| null \| number \| object \| string |  | Farming chief-source conclusion for the Schedule 4 restricted-farm-loss worksheet: notChiefSource, chiefSourceOrCombination, or farmingAndManufacturingCombination. The engine validates the stated conclusion; omission leaves the determination unresolved when farming is present. |
| `farmingIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `farmingOrFishingBusinessLoss` | array \| boolean \| null \| number \| object \| string |  |  |
| `federalLoggingTaxCredit` | array \| boolean \| null \| number \| object \| string |  | Federal logging tax credit for T2 line 640. When no Schedule 21 result is present, supply a finite non-negative JSON number; omission or null contributes zero. A supported Schedule 21 result owns the amount and reconciles manual numbers or numeric strings, disclosing conflicts. An unsupported present result blocks the credit instead of accepting a manual amount. |
| `fiscalEnd` | null \| string | strict | The last day of the taxation year in ISO YYYY-MM-DD form, which bounds every disposition date. Send it with fiscalStart and daysInYear: the three are the canonical taxation-period trio, and all three are mandatory whenever the request reaches Part I through its dependency closure. Strict YYYY-MM-DD, and not before fiscalStart. |
| `fiscalStart` | null \| string | strict | The first day of the taxation year (ISO YYYY-MM-DD). With fiscalEnd and daysInYear it is the canonical taxation-period trio, and all three are mandatory whenever the request reaches Part I through its dependency closure — the request is refused before any computation when one is missing. The bounds also drive Schedule 8's Reg 1100(3) short-year CCA proration and the Reg 1104(3.5)(b) immediate-expensing limit proration. |
| `fishingIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `foreignAccrualPropertyIncomeElections` | array \| boolean \| null \| number \| object \| string |  | Rows for each ITA s.93.4(2) election made for the year. Each row carries propertyClass, fabiIncludedUnderSubsection91_1, subsection91_4DeductionPortion and accountsCarryFabiNetOfSubsection91_4Deduction. |
| `foreignAccrualPropertyIncomeElections[]` | array \| boolean \| null \| number \| object \| string |  | Rows for each ITA s.93.4(2) election made for the year. Each row carries propertyClass, fabiIncludedUnderSubsection91_1, subsection91_4DeductionPortion and accountsCarryFabiNetOfSubsection91_4Deduction. |
| `foreignIneligiblePortionAllowableCapitalLosses` | array \| boolean \| null \| number \| object \| string |  | Finite non-negative foreign-source share of the ineligible portion of allowable capital losses, used in Schedule 7 line 009. Send a JSON number; numeric strings are rejected. Omission lets the engine derive the share only when the total and character split determine it; an indeterminate mixed-disposition split produces a blocking finding requiring the per-disposition share. |
| `foreignIneligiblePortionTaxableCapitalGains` | array \| boolean \| null \| number \| object \| string |  | Finite non-negative foreign-source share of the ineligible portion of taxable capital gains, used in Schedule 7 line 001. Send a JSON number; numeric strings are rejected. Omission lets the engine derive the share only when the total and character split determine it; an indeterminate mixed-disposition split produces a blocking finding requiring the per-disposition share. |
| `foreignTaxCredits` | object |  | Manual foreign tax credits for T2 lines 632/636 and the small-business-deduction limit. Supply nonBusiness, business, nonBusinessWithoutS123_3AndS123_4 and businessWithoutS123_4 as finite non-negative amounts, including explicit zeros. Omission contributes no manual credits; explicit null or an incomplete object fails the manual path. A present Schedule 21 result owns its credit amounts. |
| `foreignTaxCredits.business` | array \| boolean \| null \| number \| object \| string |  |  |
| `foreignTaxCredits.businessWithoutS123_4` | array \| boolean \| null \| number \| object \| string |  |  |
| `foreignTaxCredits.nonBusiness` | array \| boolean \| null \| number \| object \| string |  |  |
| `foreignTaxCredits.nonBusinessWithoutS123_3AndS123_4` | array \| boolean \| null \| number \| object \| string |  |  |
| `functionalCurrencyContext` | null \| object |  | The functional-currency election sidecar for the taxation year, used to restate statutory dollar thresholds under ITA s.261(5)(b). Send it only for a functional-currency filer; it carries reportingCurrency, periodStart and a firstDayRate object with rate, spotRateSource and firstDayDate. Statutory comparisons use the unrounded conversion. |
| `functionalCurrencyContext.firstDayRate` | null \| object |  |  |
| `functionalCurrencyContext.firstDayRate.firstDayDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `functionalCurrencyContext.firstDayRate.rate` | number \| string |  |  |
| `functionalCurrencyContext.firstDayRate.spotRateSource` | string |  |  |
| `functionalCurrencyContext.periodStart` | array \| boolean \| null \| number \| object \| string |  |  |
| `functionalCurrencyContext.reportingCurrency` | null \| string |  |  |
| `functionalCurrencyIso` | array \| boolean \| null \| number \| object \| string |  | T2 jacket box 079 ISO-4217 currency code for an ITA s.261 functional-currency election. Send it only when the return is reported in a currency other than CAD, in which case Schedule 100 will not compute until schedule100.functionalCurrencyT1296OnFile is true and the T1296 acceptance letter is on file. |
| `gifiAssignments` | array \| boolean \| null \| number \| object \| string |  | Map of account id to the accepted GIFI code, folded onto accounts before consumers read them. An assignment overrides an account's embedded gifiCode and an empty string clears it. The merged view drives statutory paths including Schedule 1's lines 239/347 OCI treatment and Schedule 4's farming-presence signal, as well as Schedule 33's reference panel and prefill. |
| `gifiStatementCoverage` | array \| boolean \| null \| number \| object \| string |  | Statement-coverage evidence for the GIFI financial statements. The engine's coverage check reads it on every computation and answers a finding when it is not the expected object. |
| `glDisposals` | array \| boolean \| null \| number \| object \| string |  |  |
| `grossRevenueNilConfirmed` | boolean \| null |  | Reg 402(3)(b): whether the corporation's gross revenue for the year is nil. Yes allows the salary-only Schedule 5 allocation when the gross-revenue column is entirely zero; No or unanswered holds the allocation. A Reg 406(2) special-industry segment states its own answer at specialIndustryWorkpaper.grossRevenueNilConfirmed. |
| `hasRelatedEmployers` | array \| boolean \| null \| number \| object \| string |  | Whether apprentices have related employers, used for Schedule 31 Part 19 and the box 611 single-claimer agreement. Omission falls back to schedule31.hasRelatedEmployersForApprentices. If neither is answered and apprentice rows are material, the claim is blocked; conflicting answers are rejected. |
| `historicalCrownGifts` | null \| object |  | Independent former S2 Crown-gift pool for 2007–2015. Original origins and actual taxation-year clocks survive expiry, transfers, control restrictions and claims. |
| `historicalCrownGifts.acquisitionOfControlDate` | null \| string | strict | Actual current-year control date, or explicit null for none; must agree with the canonical federal event. |
| `historicalCrownGifts.claim` | string | strict | Exact decimal-text elected Crown deduction, bounded by the independently calculated available pool; the modern charitable 75% ceiling is not substituted. |
| `historicalCrownGifts.complete` | boolean | strict | Confirm the complete Crown gift/transfer roster and actual taxation-year clocks, including empty sources. |
| `historicalCrownGifts.confirmed` | boolean | strict | Confirm after reviewing receipts, the pre-1997 written agreement, assessed openings and control restrictions. |
| `historicalCrownGifts.currentGifts` | array |  | Current qualifying former Crown-category gifts; do not also put them in ordinary charitable rows. |
| `historicalCrownGifts.currentGifts[]` | object |  | One identified source record; no positional joining. |
| `historicalCrownGifts.currentGifts[].amount` | string | strict | Exact decimal-text unclaimed eligible gift amount for the opening/transfer, or current eligible amount evidenced by the prescribed receipt. |
| `historicalCrownGifts.currentGifts[].donee` | string | strict | Crown donee class: Canada, province or territory. |
| `historicalCrownGifts.currentGifts[].doneeIsAcquirer` | boolean | strict | Whether the qualified donee receiving the gift is the control acquirer. |
| `historicalCrownGifts.currentGifts[].donorControlChangeDate` | null \| string | strict | Relevant predecessor control date, or explicit null; denied donor amounts cannot be transferred. |
| `historicalCrownGifts.currentGifts[].giftDate` | string | strict | Actual or statutory deemed gift date; must belong to the original taxation period. |
| `historicalCrownGifts.currentGifts[].id` | string | strict | Unique stable gift identity across all three sources. |
| `historicalCrownGifts.currentGifts[].originYearEnd` | string | strict | Actual original gift taxation-year end; never reset on transfer. |
| `historicalCrownGifts.currentGifts[].predecessorId` | string | strict | Required predecessor identity for a transfer. |
| `historicalCrownGifts.currentGifts[].propertyArrangedForControl` | boolean | strict | Whether property was acquired under an arrangement expecting the control acquisition and gift. |
| `historicalCrownGifts.currentGifts[].receiptRef` | string | strict | Prescribed receipt reference under 110.1(2). |
| `historicalCrownGifts.currentGifts[].subsequentYearEnds` | array |  | Complete ordered actual taxation-year ends after origin through the current end, including short/deemed years. |
| `historicalCrownGifts.currentGifts[].subsequentYearEnds[]` | string | strict | One actual subsequent taxation-year end in ISO format. |
| `historicalCrownGifts.currentGifts[].transferDate` | string | strict | Actual current-period transfer date. |
| `historicalCrownGifts.currentGifts[].writtenAgreementDate` | null \| string | strict | Written agreement date before 1997-02-19 for a later gift; explicit null only for an earlier gift. |
| `historicalCrownGifts.evidenceRef` | string | strict | Supporting historical assessments, receipts, continuity and agreement reference. |
| `historicalCrownGifts.openingVintages` | array |  | Unclaimed opening Crown gifts, separate from modern charitable gifts. |
| `historicalCrownGifts.openingVintages[]` | object |  | One identified source record; no positional joining. |
| `historicalCrownGifts.openingVintages[].amount` | string | strict | Exact decimal-text unclaimed eligible gift amount for the opening/transfer, or current eligible amount evidenced by the prescribed receipt. |
| `historicalCrownGifts.openingVintages[].donee` | string | strict | Crown donee class: Canada, province or territory. |
| `historicalCrownGifts.openingVintages[].doneeIsAcquirer` | boolean | strict | Whether the qualified donee receiving the gift is the control acquirer. |
| `historicalCrownGifts.openingVintages[].donorControlChangeDate` | null \| string | strict | Relevant predecessor control date, or explicit null; denied donor amounts cannot be transferred. |
| `historicalCrownGifts.openingVintages[].giftDate` | string | strict | Actual or statutory deemed gift date; must belong to the original taxation period. |
| `historicalCrownGifts.openingVintages[].id` | string | strict | Unique stable gift identity across all three sources. |
| `historicalCrownGifts.openingVintages[].originYearEnd` | string | strict | Actual original gift taxation-year end; never reset on transfer. |
| `historicalCrownGifts.openingVintages[].predecessorId` | string | strict | Required predecessor identity for a transfer. |
| `historicalCrownGifts.openingVintages[].propertyArrangedForControl` | boolean | strict | Whether property was acquired under an arrangement expecting the control acquisition and gift. |
| `historicalCrownGifts.openingVintages[].receiptRef` | string | strict | Prescribed receipt reference under 110.1(2). |
| `historicalCrownGifts.openingVintages[].subsequentYearEnds` | array |  | Complete ordered actual taxation-year ends after origin through the current end, including short/deemed years. |
| `historicalCrownGifts.openingVintages[].subsequentYearEnds[]` | string | strict | One actual subsequent taxation-year end in ISO format. |
| `historicalCrownGifts.openingVintages[].transferDate` | string | strict | Actual current-period transfer date. |
| `historicalCrownGifts.openingVintages[].writtenAgreementDate` | null \| string | strict | Written agreement date before 1997-02-19 for a later gift; explicit null only for an earlier gift. |
| `historicalCrownGifts.transferredVintages` | array |  | Identified predecessor transfers preserving original eligibility and origin. |
| `historicalCrownGifts.transferredVintages[]` | object |  | One identified source record; no positional joining. |
| `historicalCrownGifts.transferredVintages[].amount` | string | strict | Exact decimal-text unclaimed eligible gift amount for the opening/transfer, or current eligible amount evidenced by the prescribed receipt. |
| `historicalCrownGifts.transferredVintages[].donee` | string | strict | Crown donee class: Canada, province or territory. |
| `historicalCrownGifts.transferredVintages[].doneeIsAcquirer` | boolean | strict | Whether the qualified donee receiving the gift is the control acquirer. |
| `historicalCrownGifts.transferredVintages[].donorControlChangeDate` | null \| string | strict | Relevant predecessor control date, or explicit null; denied donor amounts cannot be transferred. |
| `historicalCrownGifts.transferredVintages[].giftDate` | string | strict | Actual or statutory deemed gift date; must belong to the original taxation period. |
| `historicalCrownGifts.transferredVintages[].id` | string | strict | Unique stable gift identity across all three sources. |
| `historicalCrownGifts.transferredVintages[].originYearEnd` | string | strict | Actual original gift taxation-year end; never reset on transfer. |
| `historicalCrownGifts.transferredVintages[].predecessorId` | string | strict | Required predecessor identity for a transfer. |
| `historicalCrownGifts.transferredVintages[].propertyArrangedForControl` | boolean | strict | Whether property was acquired under an arrangement expecting the control acquisition and gift. |
| `historicalCrownGifts.transferredVintages[].receiptRef` | string | strict | Prescribed receipt reference under 110.1(2). |
| `historicalCrownGifts.transferredVintages[].subsequentYearEnds` | array |  | Complete ordered actual taxation-year ends after origin through the current end, including short/deemed years. |
| `historicalCrownGifts.transferredVintages[].subsequentYearEnds[]` | string | strict | One actual subsequent taxation-year end in ISO format. |
| `historicalCrownGifts.transferredVintages[].transferDate` | string | strict | Actual current-period transfer date. |
| `historicalCrownGifts.transferredVintages[].writtenAgreementDate` | null \| string | strict | Written agreement date before 1997-02-19 for a later gift; explicit null only for an earlier gift. |
| `historicalInsurer` | null \| object |  | Former ITA 149(1)(t)/(4.1) facts. The exemption is calculated from canonical Division C taxable income; no keyed exemption amount is accepted. |
| `historicalInsurer.complete` | boolean | strict | Confirm the premium group and facts are complete. |
| `historicalInsurer.confirmed` | boolean | strict | Confirm after reviewing the opinion, premiums, relationships and prior basis reconciliation. |
| `historicalInsurer.evidenceRef` | string | strict | Supporting premium ledgers, opinion and assessed prior-year basis reference. |
| `historicalInsurer.insuranceOnlyThroughout` | boolean | strict | Whether it carried on only insurance business throughout the relevant period. |
| `historicalInsurer.isInsurer` | boolean | strict | Whether the filer is an insurer. |
| `historicalInsurer.members` | array |  | Filer and other premium group members, included by the statutory relationships rather than row position. |
| `historicalInsurer.members[]` | object |  | One identified source record; no positional joining. |
| `historicalInsurer.members[].grossPremiumIncome` | string | strict | Exact total gross premium income earned, net of reinsurance ceded. |
| `historicalInsurer.members[].id` | string | strict | Unique insurer identity. |
| `historicalInsurer.members[].isFiler` | boolean | strict | Identify exactly one filing insurer. |
| `historicalInsurer.members[].mutualControlGroup` | boolean | strict | Whether this insurer is in the mutual filer control group described by former 149(1)(t). |
| `historicalInsurer.members[].qualifyingPremiumIncome` | string | strict | Exact qualifying farm/fishing-property and farmer/fisher residence premium income, net of reinsurance ceded, covered by the Minister opinion. |
| `historicalInsurer.members[].related` | boolean | strict | Whether this insurer is related to the filer. |
| `historicalInsurer.members[].specifiedShareholder` | boolean | strict | Whether this insurer is a specified shareholder of the filer. |
| `historicalInsurer.ministerOpinionConfirmed` | boolean | strict | Whether the Minister has given the required qualifying-premium opinion on the statutory superintendent advice. |
| `historicalInsurer.ministerOpinionRef` | string | strict | Reference to that opinion; a preparer guess does not establish it. |
| `historicalInsurer.mutualCorporation` | boolean | strict | Whether the filer is mutual, for the statutory control-group inclusion. |
| `historicalInsurer.openingBalancesReflectDeemedDeductions` | boolean | strict | Confirm current opening bases reflect the producer-calculated deemed prior deductions under former 149(4.3). |
| `historicalInsurer.prescribedInsurer` | boolean | strict | Whether the statutory prescribed-insurer exception excludes other insurers from the premium denominator. |
| `historicalInsurer.priorYears` | array |  | Combined claimed, maximum available and pre-deduction income facts for prior 20(1)(a), 20(7)(c), 138(3)(a) and 140 deductions. |
| `historicalInsurer.priorYearsComplete` | boolean | strict | Confirm the complete prior years to which former 149(1)(t) applied. |
| `historicalInsurer.priorYears[]` | object |  | One identified source record; no positional joining. |
| `historicalInsurer.priorYears[].claimed` | string | strict | Exact combined deductions actually claimed/deducted under the listed provisions. |
| `historicalInsurer.priorYears[].incomeBeforeDeductions` | string | strict | Exact taxable income of that year before any of those deductions. |
| `historicalInsurer.priorYears[].maximumAvailable` | string | strict | Exact greatest combined deductions available under those provisions before the income cap. |
| `historicalInsurer.priorYears[].paragraph149Applied` | boolean | strict | Whether former 149(1)(t) applied in that year. |
| `historicalInsurer.priorYears[].yearEnd` | string | strict | Actual unique preceding taxation-year end. |
| `immediateExpensingAgreement` | array \| boolean \| null \| number \| object \| string |  | The immediate-expensing agreement block of the W08 fixed-assets workpaper header, carried at the request root. When a persisted fixed-assets workpaper is present its own block governs and a differing root copy is refused; without one the root value is read. For a taxation period wholly after 2023 the agreement is ignored, because Reg 1104(3.1)(b)(ii) requires a CCPC's property to become available for use before 2024. |
| `incomeStatementFlags` | object |  |  |
| `industryCode` | array \| boolean \| null \| number \| object \| string |  | The corporation's NAICS industry code or special-industry text tag, used to screen whether a Regulation 403 to 411 special allocation rule applies instead of the general Regulation 402 formula. |
| `ineligiblePortionAllowableCapitalLosses` | array \| boolean \| null \| number \| object \| string |  | Finite non-negative portion of allowable capital losses excluded from the eligible portion on Schedule 7 line 012. Send a JSON number; numeric strings are rejected. Omission contributes zero to the preview, but if both total ineligible portions are unanswered and accrual-period status is adverse or remains unknown with gains or losses, the engine raises a blocking missing-fact finding. |
| `ineligiblePortionTaxableCapitalGains` | array \| boolean \| null \| number \| object \| string |  | Finite non-negative portion of taxable capital gains excluded from the eligible portion on Schedule 7 line 002. Send a JSON number; numeric strings are rejected. Omission contributes zero to the preview, but if both total ineligible portions are unanswered and accrual-period status is adverse or remains unknown with gains or losses, the engine raises a blocking missing-fact finding. |
| `investmentCorporationThroughoutYear` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation was an investment corporation throughout the year, one of the ITA 123.4(1) paragraph (c) corporation classes. Reconciled against the class Schedule 510 and Schedule 18 state; a conflict is refused. |
| `investmentDeductionsOverride` | array \| boolean \| null \| number \| object \| string |  | Aggregate investment-deduction estimate subtracted from the GIFI taxable-capital base. Reference panel only: it posts to no form line and does not affect the grind. Omitted or null reads as zero. |
| `investmentTaxCredits` | array \| boolean \| null \| number \| object \| string |  |  |
| `isCCPC` | boolean \| null |  | The corporation was a Canadian-controlled private corporation (ITA s.125(7) definition) throughout the taxation year. |
| `isFinancialInstitution` | boolean \| null |  | Whether the filer is a financial institution, used to select the Schedule 33, 34 or 35 taxable-capital calculation. The root answer must agree with the same fact in Schedule 100, Schedule 101 and Schedule 125. Omission uses those other answers; Schedule 33 can also use its own scope answer when none of them is available, otherwise the classification remains unresolved. Prefer true or false; numeric 0/1 and text true/false are also accepted. |
| `isInsuranceCorp` | boolean \| null |  | Whether the filer is a insurance corporation, used to select the Schedule 33, 34 or 35 taxable-capital calculation. The root answer must agree with the same fact in Schedule 100, Schedule 101 and Schedule 125. Omission uses those other answers; Schedule 33 can also use its own scope answer when none of them is available, otherwise the classification remains unresolved. Prefer true or false; numeric 0/1 and text true/false are also accepted. |
| `issuedObligationRepurchases` | array \| boolean \| null \| number \| object \| string |  | Schedule 6 repurchases of the corporation's issued obligations, with issue amount, purchase price, principal and open-market and income-treatment facts. Omission uses dedicated repurchase workpapers, or no rows when none exist. Supply one source only; use an empty array for no direct rows, since explicit null is rejected. |
| `issuedObligationRepurchases[]` | array \| boolean \| null \| number \| object \| string |  | Schedule 6 repurchases of the corporation's issued obligations, with issue amount, purchase price, principal and open-market and income-treatment facts. Omission uses dedicated repurchase workpapers, or no rows when none exist. Supply one source only; use an empty array for no direct rows, since explicit null is rejected. |
| `itcCapitalCostReductions` | array \| boolean \| null \| number \| object \| string |  | Allocations, by property or class, of the investment tax credits deducted that reduce the capital cost or UCC of depreciable property in the following year under ITA 13(7.1). Each row names its source credit (Schedule 31 line 185, Schedules 74 to 78, or capital SR&ED); read by the Schedule 31 rollforward and Schedule 8 nodes. |
| `lifeInsurancePolicyIncome` | array \| boolean \| null \| number \| object \| string |  | Current-year life-insurance policy income for Schedule 7. Enter zero for nil; omission leaves the applicable amount unresolved. |
| `limitedPartnershipClaimDeniedUnder18_2_2` | array \| boolean \| null \| number \| object \| string |  | Portion of the current-year limited-partnership loss claim denied under ITA 18.2(2). Omit while unanswered; 0 confirms that no claimed amount was denied. The full claim still reduces the loss balance under s.111(3)(a). |
| `lossElections` | array \| null |  | Claims under s.111(1), with one row per loss pool. |
| `lossElections[]` | object |  | One entry in the stated collection. |
| `lossElections[].poolId` | array \| boolean \| null \| number \| object \| string |  |  |
| `lossElections[].requestedAmount` | array \| boolean \| null \| number \| object \| string |  | Amount of this loss type claimed in the current year (Schedule 4 lines 130, 330, 430, 530 and 675). Omit it to leave the claim unstated; an unstated claim is never read as nil. |
| `lossElections[].type` | array \| boolean \| null \| number \| object \| string |  | Which loss continuity the current-year claim is drawn from. Send non_capital, net_capital, farm, restricted_farm or limited_partnership. |
| `lossElections[].yearOfOrigin` | array \| boolean \| null \| number \| object \| string |  | Tax year the claimed loss arose, as the four-digit year. For each type of loss the oldest is deducted first. |
| `lossRestrictionEventConfirmedAbsent` | boolean \| null |  | Reviewed return-level confirmation that no loss restriction event occurred, used in Schedule 130 loss-pool survival. True supplies confirmed-absent event facts only when the schedule has no structured event-facts object. False, null or omission does not prove absence; the event assessment uses any supplied structured facts or remains unproved. Prefer true or false; numeric 0/1 and text true/false are also accepted. |
| `lpAccounts` | array \| null |  |  |
| `lpAccounts[]` | object |  | One entry in the stated collection. |
| `lpAccounts[].accountNumber` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].appliedLPLoss` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].atRiskAmount` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].atRiskReducersCurrent` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].atRiskReducersPrior` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].fiscalYearEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].incomeWorkpaper` | null \| object |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Actual source facts, supporting evidence and source review; an incomplete active producer holds its receivers. |
| `lpAccounts[].incomeWorkpaper.accountNumber` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field accountNumber. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals` | array |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field classTotals. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotalsComplete` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field classTotalsComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals[]` | object |  |  |
| `lpAccounts[].incomeWorkpaper.classTotals[].cca` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field cca. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals[].ccaClass` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field ccaClass. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals[].confirmed` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals[].evidenceRef` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals[].propertyId` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field propertyId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals[].recapture` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field recapture. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.classTotals[].terminalLoss` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field terminalLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.confirmed` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.currency` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field currency. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.evidenceRef` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.fiscalEnd` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field fiscalEnd. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.fiscalStart` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field fiscalStart. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sourceCcaRef` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field sourceCcaRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sourceReturnRef` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field sourceReturnRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources` | array |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field sources. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sourcesComplete` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field sourcesComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[]` | object |  |  |
| `lpAccounts[].incomeWorkpaper.sources[].allocationReasonableUnder103Confirmed` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field allocationReasonableUnder103Confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations` | array |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field ccaAllocations. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocationsComplete` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field ccaAllocationsComplete. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[]` | object |  |  |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[].cca` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field cca. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[].ccaClass` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field ccaClass. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[].confirmed` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[].evidenceRef` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[].propertyId` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field propertyId. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[].recapture` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field recapture. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].ccaAllocations[].terminalLoss` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field terminalLoss. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].confirmed` | boolean |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field confirmed. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].evidenceRef` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field evidenceRef. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].id` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field id. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].incomeBeforeCca` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field incomeBeforeCca. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].kind` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field kind. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].shareDenominator` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field shareDenominator. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].incomeWorkpaper.sources[].shareNumerator` | string |  | ITA13(1),20(1)(a),20(16),96(1)(c)/(2.1),103: canonical federal partnership source income. Reconcile actual class CCA/terminal loss/recapture to source attributions, then actual member fractions; positive income and source losses remain separate before the native S4 cap. Source field shareNumerator. Its actual period, legal character and evidence bind this source, with complete rosters and reviewed facts required at computation. |
| `lpAccounts[].lpLossEligibleCurrentYearBox109` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].noPartnershipAccountNumber` | array \| boolean \| null \| number \| object \| string |  | true when the partnership has no CRA partnership account number, for example a partnership with no T5013 filing duty under Reg 229(1). Only true lets a Part 7 row with amounts and a blank accountNumber pass the line 600 check; false or omitted keeps the error. An accountNumber entered on the row is still validated. |
| `lpAccounts[].openingLPLoss` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].shareOfLoss` | array \| boolean \| null \| number \| object \| string |  |  |
| `lpAccounts[].transferredInLPLoss` | array \| boolean \| null \| number \| object \| string |  |  |
| `lppLossCarryforward` | array \| boolean \| null \| number \| object \| string |  |  |
| `lppLossCarryforward[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `manualPoolDenialReasons` | array \| boolean \| null \| number \| object \| string |  | Reasons for permanent Schedule 2 donation-pool write-downs, keyed by the same gift categories as manualPoolDenials, with text values. A reason is attached to each applied denial; omitted reasons leave that explanation blank. |
| `manualPoolDenials` | array \| boolean \| null \| number \| object \| string |  | Permanent Schedule 2 donation-pool write-downs by gift category, entered as finite non-negative numbers or numeric strings. Each denial reduces both the claimable pool and its carryforward and is limited to the remaining pool. Omitted or blank category amounts apply no manual denial. |
| `medicineCarryforwardYears` | array \| boolean \| null \| number \| object \| string |  |  |
| `medicineCarryforwardYears[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `mortgageInvestmentCorporationThroughoutYear` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation was a mortgage investment corporation throughout the year, one of the ITA 123.4(1) paragraph (c) corporation classes. Reconciled against the class Schedule 510 states; a conflict is refused. |
| `mutualFundCorporationThroughoutYear` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation was a mutual fund corporation throughout the year, one of the ITA 123.4(1) paragraph (c) corporation classes. Reconciled against the class Schedule 510 and Schedule 18 state; a conflict is refused. |
| `netIncomeWithout137_2` | array \| boolean \| null \| number \| object \| string |  |  |
| `nonQualifyingSecurityCapGain` | array \| boolean \| null \| number \| object \| string |  |  |
| `novaScotiaFarmerQualifyingAmount` | array \| boolean \| null \| number \| object \| string |  |  |
| `nqSecurityEmployerDeduction` | boolean \| null \| number \| string |  | T2 box 352, the employer deduction for non-qualified securities under ITA s.110(1)(e). It is subtracted before the taxable-income zero floor and is not a patronage amount. |
| `nqsGiftDeferrals` | array \| boolean \| null \| number \| object \| string |  |  |
| `nqsGiftDeferrals[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `ontarioFarmerQualifyingAmount` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit` | object |  | Entered provincial credit eligibility and expenditure facts. |
| `ontarioShortlineRailwayCredit.certifiedTrackMilesInOntario` | array \| boolean \| null \| number \| object \| string |  | Entered certified track miles in ontario. |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures` | array \| null |  | Entered eligible capital expenditures. |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[]` | object |  | Eligible capital expenditure record. |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[].amount` | null \| number \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[].attributableToOntarioTrackMaintenance` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[].creditPreviouslyClaimedOnProperty` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[].directlyAttributableToOntarioTrackMaintenance` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[].incurredDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[].isEligibleProperty` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleCapitalExpenditures[].ontarioBasedIndividual` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures` | array \| null |  | Entered eligible labour expenditures. |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[]` | object |  | Eligible labour expenditure record. |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[].amount` | null \| number \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[].attributableToOntarioTrackMaintenance` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[].creditPreviouslyClaimedOnProperty` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[].directlyAttributableToOntarioTrackMaintenance` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[].incurredDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[].isEligibleProperty` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.eligibleLabourExpenditures[].ontarioBasedIndividual` | array \| boolean \| null \| number \| object \| string |  |  |
| `ontarioShortlineRailwayCredit.exemptFromTaxUnderPartIII` | array \| boolean \| null \| number \| object \| string |  | Entered exempt from tax under part i i i. |
| `ontarioShortlineRailwayCredit.includesNonQualifyingPredecessorExpenditures` | array \| boolean \| null \| number \| object \| string |  | Entered includes non qualifying predecessor expenditures. |
| `ontarioShortlineRailwayCredit.oneEntityGroupInputsAreGroupAggregate` | boolean \| null |  | Entered one entity group inputs are group aggregate. |
| `ontarioShortlineRailwayCredit.oneEntityGroupMember` | array \| boolean \| null \| number \| object \| string |  | Entered one entity group member. |
| `ontarioShortlineRailwayCredit.qualifyingCorporation` | array \| boolean \| null \| number \| object \| string |  | Entered qualifying corporation. |
| `ontarioShortlineRailwayCredit.qualifyingCorporationBasis` | array \| boolean \| null \| number \| object \| string |  | Entered qualifying corporation basis. |
| `ontarioShortlineRailwayCredit.transportationCertificateOnFile` | array \| boolean \| null \| number \| object \| string |  | Entered transportation certificate on file. |
| `otherAdjustments` | array \| boolean \| null \| number \| object \| string |  |  |
| `otherAdjustments[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `outsourcedServiceFeesPaid` | boolean \| null |  | Whether the corporation paid fees for services that Reg 402(7) deems salaries and wages for Schedule 5 column B. Yes requires the fee amounts on the allocation rows; an entered fee the engine cannot read is refused rather than discarded. |
| `paragraph123_4_1_cStatus` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation falls under paragraph 123.4(1)(c), used to determine the Part I full-rate taxable-income treatment. If omitted, an affirmative jacket investmentOrMutualFundCorp answer supplies true; otherwise the status remains unresolved. Send a boolean; numeric 0/1 and true/false text are also accepted. |
| `part4ExclusionAmounts` | object |  | Schedule 3 Part 4 exclusion amounts keyed by capitalGainsDividends (line 520), dividends129_1_2 (line 530), bankruptControllingCorporation (line 540), and eligiblePortion. Use numbers or numeric strings. Omission uses held coverage-review amounts if available; otherwise no transported exclusions are applied and applicable coverage holds remain. |
| `part4ExclusionAmounts.bankruptControllingCorporation` | array \| boolean \| null \| number \| object \| string |  |  |
| `part4ExclusionAmounts.capitalGainsDividends` | array \| boolean \| null \| number \| object \| string |  |  |
| `part4ExclusionAmounts.dividends129_1_2` | array \| boolean \| null \| number \| object \| string |  |  |
| `part4ExclusionAmounts.eligiblePortion` | array \| boolean \| null \| number \| object \| string |  |  |
| `part4Table1Rows` | array \| boolean \| null \| number \| object \| string |  | Disclosure rows for the Schedule 7 Part 4 Table 1 grid, keyed name200, activeIncome300, share310, services311, adjustments315, adjustments315ForeignS34_2Portion, partnershipPeriods, assignedToYou335, assignedByYou336 and s125_7DescriptionAParagraphCApplies. adjustments315ForeignS34_2Portion is the signed foreign part of the section 34.2 amount the row includes in box 315; it is a reviewed determination, not a CRA box, and a non-blank box 315 beside a foreign Schedule 73 line 270 part is held until it is stated, nil included. partnershipPeriods is a list of owner-qualified statutory periods (periodOwner partnership, ownerId, source, prorationPolicy schedule7_specified_partnership_limit, dayCountPolicy, periodStart, periodEnd); box 325 (column G1) is derived from those bounds and a supplied days325 only reconciles against the derived count. The reviewed Part 4 line totals stay the authoritative filed lines. Optional id retains the ordinary row identity through edits and reordering and does not supply a statutory period. |
| `part4Table1Rows[]` | array \| boolean \| null \| number \| object \| string |  | Disclosure rows for the Schedule 7 Part 4 Table 1 grid, keyed name200, activeIncome300, share310, services311, adjustments315, partnershipPeriods, assignedToYou335, assignedByYou336 and s125_7DescriptionAParagraphCApplies. partnershipPeriods is a list of owner-qualified statutory periods (periodOwner partnership, ownerId, source, prorationPolicy schedule7_specified_partnership_limit, dayCountPolicy, periodStart, periodEnd); box 325 (column G1) is derived from those bounds and a supplied days325 only reconciles against the derived count. The reviewed Part 4 line totals stay the authoritative filed lines. |
| `part4Table2Rows` | array \| boolean \| null \| number \| object \| string |  | Disclosure rows for the Schedule 7 Part 4 Table 2 grid, keyed name405, memberName406, memberBn410, memberSin411, memberTrust412, yearStart415, yearEnd416 and assigned420. The two year fields are YYYY-MM-DD strings. Optional id retains the ordinary row identity through edits and reordering and does not supply a statutory period. |
| `part4Table2Rows[]` | array \| boolean \| null \| number \| object \| string |  | Disclosure rows for the Schedule 7 Part 4 Table 2 grid, keyed name405, memberName406, memberBn410, memberSin411, memberTrust412, yearStart415, yearEnd416 and assigned420. The two year fields are YYYY-MM-DD strings. |
| `part4Table3Rows` | array \| boolean \| null \| number \| object \| string |  | Disclosure rows for the Schedule 7 Part 4 Table 3 grid, keyed name425, memberName426, memberBn430, yearStart435, yearEnd436 and assigned440. The two year fields are YYYY-MM-DD strings. Optional id retains the ordinary row identity through edits and reordering and does not supply a statutory period. |
| `part4Table3Rows[]` | array \| boolean \| null \| number \| object \| string |  | Disclosure rows for the Schedule 7 Part 4 Table 3 grid, keyed name425, memberName426, memberBn430, yearStart435, yearEnd436 and assigned440. The two year fields are YYYY-MM-DD strings. |
| `partIVLossClaims` | object |  | Elective Schedule 3 Part IV loss claims keyed by currentYearNonCapital (line 330), priorYearNonCapital (line 335), currentYearFarm (line 340), and priorYearFarm (line 345). Use non-negative numbers or numeric strings. Omission uses held coverage-review claims if available; otherwise claims are not maximized and applicable coverage holds remain. |
| `partIVLossClaims.currentYearFarm` | array \| boolean \| null \| number \| object \| string |  |  |
| `partIVLossClaims.currentYearNonCapital` | array \| boolean \| null \| number \| object \| string |  |  |
| `partIVLossClaims.priorYearFarm` | array \| boolean \| null \| number \| object \| string |  |  |
| `partIVLossClaims.priorYearNonCapital` | array \| boolean \| null \| number \| object \| string |  |  |
| `partVI1TaxPaid` | null \| number \| string |  | Part VI.1 tax payable for the ITA 110(1)(k) deduction, stated directly when Schedule 43 is not computed. When Schedule 43 is computed, its line 270 is the amount used: a stated value must equal it exactly and is refused otherwise, and a stated value beside a Schedule 43 whose form revision is unsupported is refused. A stated value is a finite non-negative amount; omitted, no amount is stated. |
| `partnershipFiscalPeriods` | array |  | The Reg 402(6) partnership workpaper: one row per partnership fiscal period ending in the taxation year, with the corporation's share and the partnership's total income or loss and its gross revenue and salaries by jurisdiction that Schedule 5 columns B and D include in the corporation's proportion (Reg 402(6)(c) to (f)). It is the only place Schedule 5 reads partnership amounts; a share, total income or per-row partnership amount stated elsewhere is refused by name. |
| `partnershipFiscalPeriods[]` | object |  |  |
| `partnershipFiscalPeriods[].fiscalPeriodEnd` | null \| string |  |  |
| `partnershipFiscalPeriods[].grossRevenueByJurisdiction` | object |  |  |
| `partnershipFiscalPeriods[].incomeShare` | null \| number \| string |  |  |
| `partnershipFiscalPeriods[].partnershipId` | array \| boolean \| null \| number \| object \| string |  |  |
| `partnershipFiscalPeriods[].salariesWagesByJurisdiction` | object |  |  |
| `partnershipFiscalPeriods[].totalIncome` | null \| number \| string |  |  |
| `partnershipNegativeAcb` | array \| boolean \| null \| number \| object \| string |  | Schedule 6 partnership-interest negative adjusted-cost-base facts and related gain or loss-election rows. Omission derives rows from partnership-slip-income workpapers when present, otherwise supplies no direct rows. A non-empty direct array alongside those workpapers is rejected. |
| `partnershipNegativeAcb[]` | array \| boolean \| null \| number \| object \| string |  | Schedule 6 partnership-interest negative adjusted-cost-base facts and related gain or loss-election rows. Omission derives rows from partnership-slip-income workpapers when present, otherwise supplies no direct rows. A non-empty direct array alongside those workpapers is rejected. |
| `partnershipOperations` | boolean \| null |  | Whether the corporation carried on business in partnership in the year, which turns on the Reg 402(6) inclusion of partnership gross revenue and salaries in Schedule 5 columns B and D. Unanswered, the allocation is held. |
| `pinnedFormRevisions` | null \| object |  | Map from form identifiers such as S8 or T2 to nonempty CRA footer revision codes. Each pin selects the form revision for computation; omission leaves selection to the registered year rules. Invalid or unsupported pins fail rather than silently switching revisions. Saved-engagement scenarios reserve this map to the saved return and do not allow caller overrides. |
| `postDispositionAdjustments` | null \| object |  | Complete post-disposition assistance and legally required repayments for S8 221/222. Signed UCC adjustments and Reg 1100(2) elements F/G are computed; no keyed adjustment total is accepted. |
| `postDispositionAdjustments.complete` | boolean | strict | Confirm the complete disposed-property transaction roster. |
| `postDispositionAdjustments.confirmed` | boolean | strict | Confirm the legal treatment, dates, ownership and assistance reconciliation after reviewing source evidence. |
| `postDispositionAdjustments.evidenceRef` | string | strict | Supporting complete post-disposition reconciliation reference. |
| `postDispositionAdjustments.pools` | array |  | Unique existing class/property pools with explicit openings, including zero. |
| `postDispositionAdjustments.pools[]` | object |  | One identified pool and its post-disposition records. |
| `postDispositionAdjustments.pools[].assetCount` | number | strict | Actual remaining tax-property count, including deemed ownership, for terminal-loss and continuing-pool treatment. |
| `postDispositionAdjustments.pools[].businessCeased` | boolean \| null | strict | Actual Class 14.1 business-cessation conclusion when no tax properties remain; null when irrelevant. |
| `postDispositionAdjustments.pools[].ccaClass` | string | strict | Canonical CCA class identity. |
| `postDispositionAdjustments.pools[].propertyId` | string | strict | Canonical separate-pool property ID, or empty text for an ordinary common pool. |
| `postDispositionAdjustments.pools[].transactions` | array |  | Unique source events. A current-year original disposition must also be recorded in W08; this packet does not replace its proceeds. |
| `postDispositionAdjustments.pools[].transactions[]` | object |  | One assistance receipt/entitlement or legally required repayment after the identified disposition. |
| `postDispositionAdjustments.pools[].transactions[].afterDispositionConfirmed` | boolean | strict | Confirm the transaction occurred after disposition, including actual order where both dates are the same. |
| `postDispositionAdjustments.pools[].transactions[].amount` | string | strict | Exact nonnegative decimal text in the return reporting currency. |
| `postDispositionAdjustments.pools[].transactions[].assistanceId` | string | strict | Stable property-specific assistance allocation identity for the repayment ledger. |
| `postDispositionAdjustments.pools[].transactions[].capitalCostTreatmentConfirmed` | boolean | strict | Confirm the amount would have reduced/increased capital cost under the selected provision if received/repaid before disposition. |
| `postDispositionAdjustments.pools[].transactions[].disposedPropertyId` | string | strict | Stable original disposed-property identity. A Class 10.1 vehicle must match its separate-pool ID. |
| `postDispositionAdjustments.pools[].transactions[].dispositionDate` | string | strict | Actual original property disposition date. |
| `postDispositionAdjustments.pools[].transactions[].elementFExclusion` | string | strict | Original-property Reg 1100(2) F(b) treatment: none, exempt class, vessel, listed Class 10/12 paragraph, specified leasing, s.16.1, or deemed available-for-use exclusion. |
| `postDispositionAdjustments.pools[].transactions[].evidenceRef` | string | strict | Source notice, agreement, entitlement and payment reference. |
| `postDispositionAdjustments.pools[].transactions[].id` | string | strict | Unique event identity; one event cannot be applied twice. |
| `postDispositionAdjustments.pools[].transactions[].kind` | string | strict | Assistance or repayment, kept separate for printed 221/222 and first-year allowance arithmetic. |
| `postDispositionAdjustments.pools[].transactions[].legallyRequired` | boolean | strict | Confirm the repayment was made pursuant to its legal obligation; voluntary payments do not establish line 222. |
| `postDispositionAdjustments.pools[].transactions[].originalAssistance` | string | strict | Exact original eligible assistance allocated to this disposed property. |
| `postDispositionAdjustments.pools[].transactions[].priorRepayments` | string | strict | Exact cumulative repayments before this taxation year. Current rows are accumulated once by assistance identity. |
| `postDispositionAdjustments.pools[].transactions[].statutoryBasis` | string | strict | Assistance: 13(7.1)(f); repayment: 13(7.1)(d) or 13(7.4)(b), as used by ITA 13(21) elements C/D/J. |
| `postDispositionAdjustments.pools[].transactions[].transactionDate` | string | strict | Current-period receipt/entitlement or actual repayment date. |
| `postDispositionAdjustments.pools[].transactions[].wasDIEP` | boolean | strict | Whether the disposed property was ever designated immediate-expensing property; controls the Class 10.1 recapture exception. |
| `preAocNonCapitalLossBusinessPortion` | array \| boolean \| null \| number \| object \| string |  | Aggregate business-source portion of pre-control non-capital losses, capping Schedule 4 line 130 claims and populating untagged pool business portions under s.111(5)(a). Supplying it produces a provisional cap finding. If omitted, existing per-pool business portions remain usable, but restricted pools with no business portion produce a blocking finding before a claim. |
| `prescribedLsvccHistory` | object |  | Whether the corporation is or was a prescribed labour-sponsored venture capital corporation (Reg. 6701). Omitted or null means it never was. A saved engagement uses the corporation's record. ITA 131(11) applies from the first prescribed date to every later year-end, after any cessation too. |
| `prescribedLsvccHistory.firstPrescribedDate` | array \| boolean \| null \| number \| object \| string |  | Actual first prescribed date, YYYY-MM-DD. Required for Yes; it applies s.131(11) only to year ends and CDA events after prescription. |
| `prescribedLsvccHistory.wasPrescribed` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation was ever prescribed under Reg. 6701, including a former registration. This is separate from Schedule 18's throughout-current-year answer. |
| `priorFiscalPeriodsComplete` | array \| boolean \| null \| number \| object \| string |  | Whether the supplied preceding taxation periods cover the corporation's complete history, used by the Schedule 31 revenue-based expenditure-limit calculation when fewer than three prior periods exist. Omission falls back to schedule31.priorFiscalPeriodsComplete; without a true answer the shorter-history average is unproved. Send a boolean; numeric 0/1 and true/false text are also accepted. |
| `priorTaxYearEnd` | null \| string |  |  |
| `priorYearApprenticeshipItc` | array \| boolean \| null \| number \| object \| string |  | The prior year's apprenticeship investment tax credit facts, priorYearApprenticeshipItcDeducted or unavailable, that Schedule 1's ITA 12(1)(t) inclusion reads when the linked prior-filed continuity envelope does not carry them. |
| `priorYearGroupTCEC` | array \| boolean \| null \| number \| object \| string |  | Taxable capital employed in Canada for the period required by the association facts (s.125(5.1)(a)). A supplied amount, including zero, is ordinary input. Omission leaves the capital grind unresolved; it is not a nil answer. |
| `priorYearGroupTCECMeta` | array \| boolean \| null \| number \| object \| string |  | Optional period and source details for priorYearGroupTCEC. A supplied basis or asOf date must match the applicable period. A source label and confirmed flag are descriptive and are not prerequisites for using an entered amount. |
| `priorYearS100Closing` | null \| object |  | The prior year's closing balance-sheet GIFI map, keyed by GIFI code with amount values, used to prove this year's GIFI 3660 opening retained earnings against last year's GIFI 3849 closing (RC4088 p.19). Omit it only for a first-year corporation or when priorYearRetainedEarningsEvidence records why no prior-year figure exists. |
| `priorYearS125Closing` | null \| object |  | The prior year's closing income-statement GIFI map, keyed by GIFI code with plain JSON number amounts, for the optional comparative continuity check against schedule125.priorYear. Numeric strings are rejected here, unlike the Schedule 100 twin. It never gates filing readiness. |
| `priorYearS13_7_1UccReduction` | object |  | Schedule 31's prior-year qualified-property investment tax credit grind on undepreciated capital cost under ITA s.13(7.1), as an object with appliesToTaxYear, itcDeductedQp, itcRefundedQp, total, byClass and unattributed. Send it in the year immediately after the credit was claimed. |
| `priorYearS13_7_1UccReduction.appliesToTaxYear` | array \| boolean \| null \| number \| object \| string |  |  |
| `priorYearS13_7_1UccReduction.byClass` | array \| null |  |  |
| `priorYearS13_7_1UccReduction.byClass[]` | object |  |  |
| `priorYearS13_7_1UccReduction.byClass[].ccaClass` | string |  |  |
| `priorYearS13_7_1UccReduction.byClass[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `priorYearS13_7_1UccReduction.byClass[].uccReduction` | number \| string |  |  |
| `priorYearS13_7_1UccReduction.unattributed` | number \| string |  |  |
| `priorYearT661Closing` | null \| object |  | The prior year's T661 closing balances as an object containing line_470_closing_pool_cy, used to pre-fill the opening pool on line 450. Send it for multi-year claims so the indefinite carryforward under ITA s.37(1)(b)(i) stays intact. |
| `proceedsOfDisposition` | array \| boolean \| null \| number \| object \| string |  |  |
| `propertyIncomeActiveBusinessOverrides` | array \| boolean \| null \| number \| object \| string |  | Schedule 7 conclusions treating specified property-income accounts as active-business income, with accountId, provision and basis on each row. The engine validates the conclusions and adds eligible rental-workpaper rows for accounts not explicitly listed. Omission or null uses those workpaper conclusions alone. |
| `propertyIncomeActiveBusinessOverrides[]` | array \| boolean \| null \| number \| object \| string |  | Schedule 7 conclusions treating specified property-income accounts as active-business income, with accountId, provision and basis on each row. The engine validates the conclusions and adds eligible rental-workpaper rows for accounts not explicitly listed. Omission or null uses those workpaper conclusions alone. |
| `prospectorShareDeduction` | boolean \| null \| number \| string |  | T2 box 350, the already-computed ITA s.110(1)(d.2) prospector and grubstaker share deduction. The prescribed box carries the deduction itself; callers may instead send the gross prospectorShareInclusion with its two eligibility facts so Filemark derives the half-rate amount, and when both shapes are present they must reconcile exactly. |
| `prospectorShareInclusion` | boolean \| null \| number \| string |  | The finite, non-negative gross amount included in income under ITA s.35(1)(d) on receipt of a prospector or grubstaker share. Send the full inclusion, not the deduction: the engine halves it itself to produce jacket line 315 under s.110(1)(d.2), so sending the already-halved box 350 figure understates the deduction. |
| `prospectorShareInclusionTreatyExempt` | boolean \| null |  | Whether the s.35(1)(d) prospector-share inclusion is exempt from Canadian income tax under a tax convention or agreement having force of law. ITA s.110(1)(d.2) denies line 315 when true; a positive inclusion fails closed while this fact is unanswered unless the receipt-date condition independently denies the deduction. |
| `prospectorShareReceivedAfterMay22_1985` | boolean \| null |  | Whether the prospector or grubstaker share underlying prospectorShareInclusion was received after May 22, 1985. ITA s.110(1)(d.2) allows the one-half deduction only for such a share; a positive inclusion fails closed while this fact is unanswered unless treaty exemption independently denies the deduction. |
| `provincial_research_credit_vintages` | array \| boolean \| null \| number \| object \| string |  |  |
| `pyLossPools` | array \| null |  | Opening loss pools by type and vintage, including the original and remaining amounts. An explicit empty list supplies nil. Expiry and transfer facts remain necessary where applicable. |
| `pyLossPools[]` | object |  | Opening loss pools by type and vintage, including the original and remaining amounts. An explicit empty list supplies nil. Expiry and transfer facts remain necessary where applicable. |
| `pyLossPools[].abilComponent` | array \| boolean \| null \| number \| object \| string |  | Portion of this non-capital loss that is an allowable business investment loss. Schedule 4 note 14: an unapplied ABIL becomes a net capital loss after 10 tax years while the rest of the non-capital loss expires after 20, so the two limbs have to be tracked apart. |
| `pyLossPools[].applied` | array \| boolean \| null \| number \| object \| string |  | Amounts already applied out of this pool, as an object keyed by the four-digit tax year with the amount applied in that year. Every amount has to be non-negative. |
| `pyLossPools[].businessId` | array \| boolean \| null \| number \| object \| string |  | Your identifier for the business the loss came from. After an acquisition of control ITA 111(5)(a) allows a non-capital loss only against income from the same or a similar business, so a pool with no business identity cannot be applied on that stream. |
| `pyLossPools[].businessPortion` | array \| boolean \| null \| number \| object \| string |  | Portion of the pool attributable to the identified business, when only part of the loss belongs to the same or similar business under ITA 111(5)(a). |
| `pyLossPools[].deemedLossYearEnd` | array \| boolean \| null \| number \| object \| string |  | Deemed tax year-end this pool takes in the parent after a wind-up, as YYYY-MM-DD. Send it only with the 88(1.1) or 88(1.2) continuation it follows, and its year has to match the year of origin. |
| `pyLossPools[].deemedLossYearUnder` | array \| boolean \| null \| number \| object \| string |  | The subsection 88(1.1) or 88(1.2) continuation that gives this pool its deemed year in the parent after a wind-up. Send the paragraph that applies; it has to agree with the deemed loss year-end. |
| `pyLossPools[].deemedYearShiftedUnder` | array \| boolean \| null \| number \| object \| string |  | The election that moves a wound-up subsidiary's loss into the parent's immediately preceding tax year. Schedule 4 Part 9 box 190 ticks the 88(1.1)(f) election. Send the paragraph that applies, otherwise omit it. |
| `pyLossPools[].expiryClock` | array \| boolean \| null \| number \| object \| string |  |  |
| `pyLossPools[].lossRestrictionEventDate` | array \| boolean \| null \| number \| object \| string |  | Date of the loss restriction event that limits this pool, as YYYY-MM-DD. Schedule 4 reports the consequence as an other adjustment for an acquisition of control (lines 150, 250, 350, 450 and 750). |
| `pyLossPools[].lossYearEnd` | array \| boolean \| null \| number \| object \| string |  | Last day of the tax year the loss arose, as YYYY-MM-DD. |
| `pyLossPools[].lossYearEndExclusiveAt` | array \| boolean \| null \| number \| object \| string |  | Exclusive end of the original loss period. Required to distinguish two loss vintages ending on the same date; carry it unchanged from the filed continuity. |
| `pyLossPools[].lossYearStart` | array \| boolean \| null \| number \| object \| string |  | First day of the tax year the loss arose, as YYYY-MM-DD. It fixes the period the loss-restriction and Part IV tests are applied over. |
| `pyLossPools[].originPeriodEndUpperBound` | array \| boolean \| null \| number \| object \| string |  | Statement date bounding an undated net-capital opening, as YYYY-MM-DD: the aggregate's losses arose no later than this date, which keeps the aggregate ordered before later dated pools when the oldest loss is applied first. It is not a loss-year date and is accepted only on an undated net-capital opening; it must fall before the current tax year starts, and left out the day before the tax year start is assumed. |
| `pyLossPools[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | The loss as originally determined for its year of origin, before anything was applied against it. Schedule 4 Part 6 reports the balance by year of origin from this amount. |
| `pyLossPools[].originalInclusionRate` | array \| boolean \| null \| number \| object \| string |  | Capital-gains inclusion rate in force when a net capital loss arose, as a decimal fraction above 0 and at most 1. Schedule 4 note 7 divides an applied capital loss by 2 for a 50% rate, so a pool from a year with a different rate must state its own rate or the amount applied is wrong. |
| `pyLossPools[].originalInclusionRateExact` | array \| boolean \| null \| number \| object \| string |  | The exact inclusion rate, for a year whose rate the rounded figure would misstate. It overrides the rounded rate and must stay above 0 and at most 1. |
| `pyLossPools[].partIVApplied` | array \| boolean \| null \| number \| object \| string |  | Amounts already applied out of this pool against taxable dividends subject to Part IV tax, as an object keyed by the four-digit tax year (Schedule 4 lines 135 and 335). Every amount has to be non-negative. |
| `pyLossPools[].partIVLossYearEnd` | array \| boolean \| null \| number \| object \| string |  | Tax year-end of the loss applied against taxable dividends subject to Part IV tax, as YYYY-MM-DD (Schedule 4 lines 135 and 335). |
| `pyLossPools[].partIVPeriodIdentityProven` | array \| boolean \| null \| number \| object \| string |  | Whether the Part IV period this pool is applied against is proved to be the period the loss itself belongs to. Send true only once it is established; a blank is held, never read as yes. |
| `pyLossPools[].partIVYearOfOrigin` | array \| boolean \| null \| number \| object \| string |  | Year of origin of the loss applied against taxable dividends subject to Part IV tax, as the four-digit year. |
| `pyLossPools[].poolId` | array \| boolean \| null \| number \| object \| string |  | Your own identifier for this pool. It keeps an amended or converted pool matched to the same balance through the continuity and is never printed on the return. |
| `pyLossPools[].preAoC` | array \| boolean \| null \| number \| object \| string |  | Whether this pool arose in the pre-acquisition-of-control stub of the year of the acquisition. s.249(4) splits the year of an acquisition of control into two taxation years, and only a pre-AoC loss is restricted under s.111(5). A pool whose year of origin is earlier than the acquisition year is pre-AoC whatever this says. Leave it out unless the pool arose in the acquisition year itself. |
| `pyLossPools[].predecessorLastTaxYearEnd` | array \| boolean \| null \| number \| object \| string |  | Last tax year-end of the predecessor or wound-up subsidiary that transferred this pool, as YYYY-MM-DD (Schedule 4 lines 105, 205, 305, 405 and 705). |
| `pyLossPools[].predecessorLossRestrictionApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the predecessor's loss restriction event still limits this pool in your hands. Null leaves it unanswered and the pool is held rather than applied. |
| `pyLossPools[].predecessorLossRestrictionEventDate` | array \| boolean \| null \| number \| object \| string |  | Date of the loss restriction event at the predecessor, as YYYY-MM-DD. A pool transferred on an amalgamation or on the wind-up of a subsidiary carries the predecessor's own restriction with it. |
| `pyLossPools[].remainingBalance` | array \| boolean \| null \| number \| object \| string |  | Unapplied balance of this pool at the end of the previous tax year, the opening amount the continuity carries forward (Schedule 4 amount 1N, line 200, amount 3A, amount 4F or line 660 by loss type). Send a number or a plain money string. |
| `pyLossPools[].section88QualificationProven` | array \| boolean \| null \| number \| object \| string |  | Whether the wind-up qualifies under subsection 88(1). Schedule 4 note 2 defines the subsidiary as a taxable Canadian corporation 90% or more of each class of whose issued shares the parent owns, the rest held at arm's length. Send true only once that is established; null is unanswered and the transfer is held, never allowed by default. |
| `pyLossPools[].taxationYearsElapsed` | array \| boolean \| null \| number \| object \| string |  | Number of taxation years that have already elapsed since this pool's year of origin, as a non-negative whole number. It ages the pool towards the carryforward limit when the year-end history alone cannot. Any other value rejects the pool. |
| `pyLossPools[].type` | array \| boolean \| null \| number \| object \| string |  | Which Schedule 4 loss continuity this pool belongs to. Send non_capital, net_capital, farm, restricted_farm or limited_partnership; the pool is carried and applied on the matching Part of Schedule 4. |
| `pyLossPools[].windUpCommencementDate` | array \| boolean \| null \| number \| object \| string |  | Date the wind-up of the subsidiary began, as YYYY-MM-DD. The Schedule 4 Part 9 election reaches only a loss for a tax year starting after that date. |
| `pyLossPools[].yearOfOrigin` | array \| boolean \| null \| number \| object \| string |  | Tax year the loss arose, as the four-digit year. Schedule 4 Part 6 analyses the balance of losses by year of origin, and for each type of loss the oldest is deducted first. A pool with no year cannot be aged or expired, so leave it unstated only when the year is genuinely unknown. |
| `pyUCCPools` | array |  | Opening UCC pools by CCA class and pool identity. An explicit empty list supplies nil; omitted pools remain unanswered. Supplied openings are reconciled to held history. |
| `pyUCCPools[]` | object |  |  |
| `pyUCCPools[].ccaClass` | array \| boolean \| null \| number \| object \| string |  | CCA class of the prior-year pool, as the class number or its label. It matches the opening pool to this year's Schedule 8 class. The engine normalises it with str(...), so a number is read as its digits; true and false are not classes and are refused rather than read as the class True. |
| `pyUCCPools[].closingUCC` | number \| string |  | Undepreciated capital cost of the class at the end of the previous tax year, which becomes this year's opening UCC. State it in the currency the return is computed in: ITA 261(7)(d)(i) converts closing UCC at the spot rate for the last day of the last Canadian-currency year, so an unconverted balance is refused rather than carried in. |
| `pyUCCPools[].containsPurposeBuiltResidentialRentalUcc` | array \| boolean \| null \| number \| object \| string |  |  |
| `pyUCCPools[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `railwayOperatesOtherBusinessLines` | boolean \| null |  | For a railway corporation allocating under Reg 406, whether it also operates other business lines (an airline, ships, hotels, or substantial petroleum or natural gas royalties). It selects the Reg 406 subsection printed in brackets on Schedule 5 box 100 (CRA Note 1); unanswered, box 100 stays blank. |
| `reg1100_11RentalIncomeCeiling` | array \| boolean \| null \| number \| object \| string |  | The Reg 1100(11) rental-income ceiling block of the W08 fixed-assets workpaper header, carried at the request root. When a persisted fixed-assets workpaper is present its own block governs and a differing root copy is refused; without one the root value is read. |
| `reg1100_15LeasingIncomeCeiling` | array \| boolean \| null \| number \| object \| string |  | The Reg 1100(15) leasing-income ceiling block of the W08 fixed-assets workpaper header, carried at the request root. When a persisted fixed-assets workpaper is present its own block governs and a differing root copy is refused; without one the root value is read. |
| `reg1100_24SpecifiedEnergyIncomeCeiling` | array \| boolean \| null \| number \| object \| string |  | The Reg 1100(24) specified-energy income ceiling block of the W08 fixed-assets workpaper header, carried at the request root. When a persisted fixed-assets workpaper is present its own block governs and a differing root copy is refused; without one the root value is read. |
| `reg402_1CentralPaymasterArrangement` | boolean \| null |  | Whether a central-paymaster salary arrangement applies to Schedule 5 provincial allocation. Accepts true/false, numeric 0/1 or text true/false. Omission or null uses the Schedule 5 answer; an unanswered applicable salary-allocation fact holds the allocation. When true, supply the deemed and deducted salaries by jurisdiction. |
| `reg402_4_1ForeignMerchandiseSale` | boolean \| null |  | Reg 402(4.1)(a): whether any merchandise sale had a shipment destination to a customer outside Canada, or a customer-directed shipment to another person where the customer's negotiating office is outside Canada. Required once the Outside Canada permanent establishment carries gross revenue; the allocation is held until Yes or No is recorded. |
| `reg402_4_1ForeignPeSalariesDeemedNil` | null \| number \| string |  | The salaries and wages of the permanent establishments in the qualifying other country that Reg 402(4.1)(e) deems nil: not negative, and not more than the Outside Canada salaries. |
| `reg402_4_1ForeignSaleRevenue` | null \| number \| string |  | The total qualifying foreign-sale gross revenue that Reg 402(4.1) throws back from the Outside Canada row: positive, and not more than that row's remaining gross revenue. |
| `reg402_4_1MatchingForeignPermanentEstablishment` | boolean \| null |  | Reg 402(4.1)(b): whether the corporation has a permanent establishment in the same foreign country as the qualifying sale. The allocation is held until Yes or No is recorded. |
| `reg402_4_1UntaxedBecauseOfForeignLawOrTreaty` | boolean \| null |  | Reg 402(4.1): whether the corporation or the sale is outside the other country's income-tax base because of its law or a Canadian tax treaty, the condition that throws the sale's gross revenue back to the Canadian permanent establishments. |
| `reg403AttributionRulesApplied` | boolean \| null |  | Confirmation that Reg 403(3) and (4) attribution was applied: premiums for a jurisdiction with no permanent establishment were attributed to the permanent establishment they reasonably belong to. The Reg 403 insurer allocation requires Yes. |
| `reg403NetPremiumsByJurisdiction` | object |  | Net premiums by jurisdiction code from the completed insurance-premium workpaper, the single Reg 403 allocation factor. Gross revenue is not a proxy. |
| `reg403TotalNetPremiumsIncludedInPartI` | null \| number \| string |  | The total net premiums included in computing Part I income, which Reg 403(1) requires alongside the by-jurisdiction workpaper. |
| `reg404CanadianBankingBusinessReview` | null \| object |  | The Reg 404 Canadian-banking-business review an authorized foreign bank supplies for Schedule 5: the same review Schedule 21 reads (the Reg 8201 permanent-establishment facts and the authorized-foreign-bank answers) plus the loans-and-deposits restriction answer. Omit it or send null when the corporation is not an authorized foreign bank. |
| `reg404CanadianBankingBusinessReview.businessCarriedOnThroughCanadianPe` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.businessConductedThroughRepresentativeOffice` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.isAuthorizedForeignBank` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.measureRestrictedToCanadianBankingBusiness` | array \| boolean \| null \| number \| object \| string |  | Schedule 5 Reg 404 (authorized foreign bank): whether the loans-and-deposits measure is restricted to the Canadian banking business. Only an explicit true keeps the authorized-foreign-bank allocation open; null or absence is no answer and the branch fails closed. |
| `reg404CanadianBankingBusinessReview.reg8201Facts` | null \| object |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.controlledSubsidiaryOnly` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.employeeOrAgentEstablishedAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.fixedPlaceJurisdiction` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.fixedPlaceJurisdiction[]` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.fixedPlaceJurisdiction[][][]` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.generalContractingAuthorityAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.hasFixedPlaceOfBusiness` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.independentAgentOnly` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.insurerRegisteredOrLicensedJurisdictions` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.insurerRegisteredOrLicensedJurisdictions[]` | array \| null \| string |  | One entry in the stated collection. |
| `reg404CanadianBankingBusinessReview.reg8201Facts.insurerRegisteredOrLicensedJurisdictions[][][]` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.isInsurer` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.personOwnedStockAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.principalPlaceOfBusinessAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.purchaseOnlyOfficeOnly` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.regularlyFillsOrdersFromStockAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.substantialMachineryOrEquipmentUsedAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.treatyExists` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.treatyPermanentEstablishmentArticle` | array \| boolean \| null \| number \| object \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Facts.treatyPermanentEstablishmentConclusion` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews` | array \| null |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[]` | object |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].controlledSubsidiaryOnly` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].employeeOrAgentEstablishedAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].fixedPlaceJurisdiction` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].fixedPlaceJurisdiction[]` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].fixedPlaceJurisdiction[][][]` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].generalContractingAuthorityAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].hasFixedPlaceOfBusiness` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].independentAgentOnly` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].insurerRegisteredOrLicensedJurisdictions` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].insurerRegisteredOrLicensedJurisdictions[]` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].insurerRegisteredOrLicensedJurisdictions[][][]` | array \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].isInsurer` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].personOwnedStockAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].principalPlaceOfBusinessAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].purchaseOnlyOfficeOnly` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].regularlyFillsOrdersFromStockAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].substantialMachineryOrEquipmentUsedAtTarget` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].treatyExists` | boolean \| null \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].treatyPermanentEstablishmentArticle` | array \| boolean \| null \| number \| object \| string |  |  |
| `reg404CanadianBankingBusinessReview.reg8201Reviews[].treatyPermanentEstablishmentConclusion` | boolean \| null \| string |  |  |
| `reg404MonthEndLoansAndDeposits` | object |  | Month-end loans and deposits of each permanent establishment, a map from jurisdiction code to the list of month-end balances: the Reg 404(1)(b) factor (Reg 404.1 for a federal credit union). Missing, the allocation cannot be computed and is not reported as nil. |
| `reg412AgreementExists` | boolean \| null |  | Whether the corporation and the Minister have a Reg 412 divided-business agreement. Unanswered while divided-business treatment is indicated, the allocation is held; Yes selects Reg 412, whose agreement-specific segments Filemark does not model, so the general allocation is held and cannot be filed. |
| `research_proxy_income` | array \| boolean \| null \| number \| object \| string |  |  |
| `returnFilingDate` | array \| boolean \| null \| number \| object \| string |  | The date the return for the year was filed, in ISO YYYY-MM-DD form, read at the request root by the dividend-pool and Schedule 97 nodes. The schedule71 and schedule72 blocks carry their own returnFilingDate for the ITA 34.2 designations. |
| `s125AntiAvoidance` | null \| object |  | Additional s.125(6), (6.2) and (9) facts: affected partnership groups, other relevant partnership incomes, controlled partnership names, intermediaryOutsideRows and intermediary amounts keyed by Part 4 partnership name or Part 7 payer BN. Null remains unanswered; explicit empty collections and zero amounts assert none. |
| `s125AntiAvoidance.controlledPartnershipNames` | array \| boolean \| null \| number \| object \| string |  | Complete names of Table 1 partnerships to which s.125(6.2)-(6.3) applies. Multi-period rows also need the control facts by fiscal period. |
| `s125AntiAvoidance.intermediaryCorporateAmounts` | array \| boolean \| null \| number \| object \| string |  | Affected s.125(9) net income keyed by Part 7 payer BN. Enter every row, including 0 when unaffected. The engine caps SCI while retaining actual assignments in 620/625. |
| `s125AntiAvoidance.intermediaryOutsideRows` | array \| boolean \| null \| number \| object \| string |  | Affected Canadian net active-business income remaining in the SBD base after ordinary S7 exclusions, outside the Part 4/7 rows. Enter 0 for none; s.125(9) removes it once. |
| `s125AntiAvoidance.intermediaryPartnershipAmounts` | array \| boolean \| null \| number \| object \| string |  | Affected s.125(9) net income keyed by Part 4 partnership name. Enter every row, including 0 when unaffected. The engine limits SPI without subtracting an already excluded slice twice. |
| `s125AntiAvoidance.multiplePartnershipGroups` | array \| boolean \| null \| number \| object \| string |  | Every affected s.125(6) group: partnershipNames identifies the filer's Table 1 rows; otherPartnershipIncomes lists the relevant other partnership fiscal-period incomes. An empty list confirms none. Amounts use the return reporting currency and periods ending in its tax year. |
| `s125AntiAvoidance.partnershipPeriodAmounts` | array \| boolean \| null \| number \| object \| string |  | Income/share pairs for a Table 1 row spanning short fiscal periods, reconciling to boxes 300/310. controlledRuleApplies records s.125(6.2)-(6.3) separately for each period when needed. Null remains unanswered. |
| `s125_5_2Transfers` | array \| boolean \| null \| number \| object \| string |  | Rows recording loans or transfers of property to a corporation related to but not associated with this one under ITA s.125(5.2). Each row carries transfereeName, transfereeBusinessNumber, precedingYearAAII and the tri-state purposeTestMet. |
| `s125_5_2Transfers[]` | array \| boolean \| null \| number \| object \| string |  | Rows recording loans or transfers of property to a corporation related to but not associated with this one under ITA s.125(5.2). Each row carries transfereeName, transfereeBusinessNumber, precedingYearAAII and the tri-state purposeTestMet. |
| `s125_6MultiplePartnershipAntiAvoidanceApplies` | array \| boolean \| null \| number \| object \| string |  | Reviewed ITA s.125(6) purpose test. True computes the greatest-income exception from s125AntiAvoidance.multiplePartnershipGroups; missing affected identities or amounts hold filing. |
| `s125_6_2ControlledPartnershipRuleApplies` | array \| boolean \| null \| number \| object \| string |  | Reviewed ITA s.125(6.2)-(6.3) control test. True deems partnership income nil for the partnerships named in s125AntiAvoidance.controlledPartnershipNames. |
| `s125_9IntermediaryAntiAvoidanceApplies` | array \| boolean \| null \| number \| object \| string |  | Reviewed ITA s.125(9) purpose test. True excludes the affected income allocated in s125AntiAvoidance, including intermediary income outside Parts 4/7. |
| `s88Election` | array \| boolean \| null \| number \| object \| string |  | The s.88 winding-up election flag Schedule 4's loss continuity reads by this name; a boolean when supplied. |
| `s88InternetPercent` | null \| number \| string |  | Schedule 88 box 282, the percentage of total gross revenue earned from the internet on a 0 to 100 scale, used for the Schedule 125 internet-revenue advisory against the practitioner-tagged GIFI codes. |
| `s88_1_1_gElection` | array \| boolean \| null \| number \| object \| string |  | The s.88(1.1)(g) election flag Schedule 4's loss continuity and Schedule 130 read by this name; a boolean when supplied. |
| `s88_1_2_dElection` | array \| boolean \| null \| number \| object \| string |  | The winding-up election flag Schedule 4's loss continuity reads by this name; a boolean when supplied. |
| `s91TreatyRevenue` | null \| number \| string |  | Schedule 91 Part 1 line 125, total Canadian revenue from the treaty-protected business, checked as an upper bound against GIFI 8299 total revenue on Schedule 125. |
| `salariesNilConfirmed` | boolean \| null |  | Reg 402(3)(c): whether the salaries and wages the corporation paid in the year total nil. Yes allows the revenue-only Schedule 5 allocation when the salary column is entirely zero; No or unanswered holds the allocation. A Reg 406(2) special-industry segment states its own answer at specialIndustryWorkpaper.salariesNilConfirmed. |
| `sameOrSimilarBusinessIncome` | array \| boolean \| null \| number \| object \| string |  | Income from the same or a qualifying similar business used to cap Schedule 4 pre-event non-capital and farm loss deductions after a loss restriction event. This aggregate applies to pools without a business identifier. When required and omitted, those deductions are held at zero with a provisional finding. |
| `sameOrSimilarBusinessIncomeByBusiness` | array \| boolean \| null \| number \| object \| string |  | ITA 111(5)(a)(ii) income ceiling for each named pre-event business. Keys match `businessId` on Schedule 4 loss pools; omit an unanswered business, while 0 confirms a nil ceiling. |
| `schedule10` | null \| object |  |  |
| `schedule10._user_cited_s_20_1_b_for_cec` | boolean \| null |  |  |
| `schedule10._user_cited_s_85_1_d` | boolean \| null |  |  |
| `schedule10.amount_7_para_14_1_b_income_inclusions` | null \| number \| string |  | Part 2 amount 7, income inclusions previously reported under ITA paragraph 14(1)(b). Send it with amount 8 to prove box 409 by itemisation; leaving both blank is not a zero and blocks unless box 409 is proved another way. |
| `schedule10.amount_8_prior_year_amount_T` | null \| number \| string |  | Part 2 amount 8, the prior year's amount T carried forward. Send it with amount 7 to prove box 409 by itemisation. |
| `schedule10.amount_K_cec_balance` | null \| number \| string |  | Part 1 amount K, the cumulative eligible capital balance carried into Parts 2 and 3. It is a check figure, not an input: the engine computes K as amount F minus amount J and reports an error when the supplied value differs by more than one dollar. |
| `schedule10.line_101_elect_13_38_d_iv` | boolean \| null \| string |  |  |
| `schedule10.line_102_elect_13_38_d_iii` | boolean \| null \| string |  |  |
| `schedule10.line_200_cec_opening_balance` | null \| number \| string |  |  |
| `schedule10.line_222_ecp_acquired_before_2017` | null \| number \| string |  |  |
| `schedule10.line_224_amalgamation_transfer` | null \| number \| string |  |  |
| `schedule10.line_226_other_adjustments_before_2017` | null \| number \| string |  |  |
| `schedule10.line_228_nal_gain_half` | null \| number \| string |  |  |
| `schedule10.line_242_proceeds_disposition_before_2017` | null \| number \| string |  |  |
| `schedule10.line_244_s_80_7_forgiven_debt_reduction` | null \| number \| string |  |  |
| `schedule10.line_246_other_adjustments_dispositions` | null \| number \| string |  |  |
| `schedule10.line_249_cec_for_disposed_business` | null \| number \| string |  |  |
| `schedule10.line_250_current_year_deduction` | null \| number \| string |  |  |
| `schedule10.line_300_cec_closing_balance` | null \| number \| string |  |  |
| `schedule10.line_400_total_prior_cec_deductions_post_jun_1988` | null \| number \| string |  |  |
| `schedule10.line_401_total_s_80_7_reductions` | null \| number \| string |  |  |
| `schedule10.line_402_total_cec_deductions_pre_jul_1988` | null \| number \| string |  |  |
| `schedule10.line_408_negative_balances_into_income_pre_jul_1988` | null \| number \| string |  |  |
| `schedule10.line_409_subtotal` | null \| number \| string |  |  |
| `schedule10.line_410_income_inclusion` | null \| number \| string |  |  |
| `schedule10.line_425_prior_cec_deductions_unrecaptured` | null \| number \| string |  | Box 425, amount W: historical amount determined for variable B in s.13(38)(a). Enter the confirmed amount, including zero when applicable. |
| `schedule10.line_435_deemed_capital_cost` | null \| number \| string |  |  |
| `schedule10.line_440_deemed_para_20_1_a_allowance` | null \| number \| string |  |  |
| `schedule10.line_450_post_2016_acquisitions` | null \| number \| string |  |  |
| `schedule10.line_460_lesser_of_12_and_13` | null \| number \| string |  |  |
| `schedule10.transitionIsActiveAsset` | boolean \| null |  | Whether the amount PP deemed capital gain (ITA s.13(38)(d)(ii)) arose on an asset used in an active business. True counts it in the Schedule 6 active-asset gains; unanswered leaves its character open. |
| `schedule10.transitionIsForeignSource` | boolean \| null |  | Whether the amount PP deemed capital gain is from a foreign source. True counts it in the Schedule 6 foreign gains; unanswered leaves its character open. |
| `schedule10.transitionPropertyId` | null \| string |  | Fixed-asset property ID of the Class 14.1 property that carries the s.13(38)(d)(iv) election when several Class 14.1 properties are added; null when only one is added. |
| `schedule100` | null \| object |  |  |
| `schedule100.businessNumber` | null \| string |  | 9-digit BN or 15-char RC account (e.g. "123456789RC0001"). |
| `schedule100.corporationName` | null \| string |  | Corporation legal name (header line in .gfi handoff). |
| `schedule100.currentYear` | null \| object |  | GIFI code → amount map in VALIDATOR-SIGN convention: ordinary assets, liabilities and equity match natural sign, while retained-earnings reductions 3700/3701/3702/3741 are positive magnitudes because S100 subtracts them. |
| `schedule100.currentYearEnd` | null \| string |  | TY-end date YYYY-MM-DD. |
| `schedule100.functionalCurrencyT1296OnFile` | array \| boolean \| null \| number \| object \| string |  | ITA s.261 functional-currency election evidence flag. When the T2 jacket box 079 functionalCurrencyIso is set to any non-CAD currency (USD/GBP/EUR/JPY/AUD), the engine STRICT-BLOCKS S100 / S101 / S125 / S141 compute unless this flag is true AND the practitioner has uploaded the T1296 acceptance letter to the binder. Functional-currency returns are exempt from mandatory e-file per CRA — they must be paper-filed as bar-code returns; the engine therefore also flips the export-mode flag downstream when this gate fires. CAD-functional corps leave this null. |
| `schedule100.insuranceUnderwritingType` | null \| string |  | Narrower underwriter subtype per the 2026-05-24 RC4088 + vendor survey. Only the four underwriter categories trigger the PDF F/S supplement warning; "non_underwriting" (brokerage / MGA / agency sub / non-underwriting HoldCo) gets treated as an ordinary GIFI filer. Null when isInsuranceCorp is null/false. |
| `schedule100.isFinancialInstitution` | boolean \| null |  | Bank / credit union / trust — specialised GIFI codes apply. |
| `schedule100.isInactiveCorp` | array \| boolean \| null \| number \| object \| string |  | T2 line 280 inactive flag. |
| `schedule100.isInsuranceCorp` | boolean \| null |  | RC4088 p.5 insurance carve-out (broad category — does the corp operate in the insurance industry at all?). Combined with insuranceUnderwritingType to determine whether the PDF F/S supplement advisory fires. |
| `schedule100.isPartnership` | array \| boolean \| null \| number \| object \| string |  | Partnership (T5013) — uses 3575/3585 instead of 3620/3640. |
| `schedule100.isWindupSuccessor` | boolean \| null |  |  |
| `schedule100.priorYearClosingManualOverride` | null \| object |  | Optional practitioner-entered prior-year closing balances used only when no carryforward record is available (a new engagement migrated from other tax software, no prior Filemark filing). A linked prior-year Filemark return's carryforward record wins when both are present. Empty record / null = no manual override. Codes map directly to RC4088 (e.g., {"2599": 1500000, "3499": 600000, "3620": 900000, "3849": 850000}). Only the four mandatory anchors (2599 / 3499 / 3620 / 3849) are practically needed for the RE-start continuity check; detail codes are accepted but optional. |
| `schedule100.priorYearRetainedEarningsEvidence` | null \| string |  | Why no prior-year GIFI 3849 reached the engine. Send "linked" when the prior-year Filemark return is linked and supplies the carryforward sidecar, "manual" when there is no linked prior year and the closing anchors are keyed into `priorYearClosingManualOverride` above, or "explicitly-none" to attest there is no prior-year GIFI 3849 to reconcile against. null is unanswered and blocks filing readiness; "linked" and "manual" block too when the named channel then delivers nothing, so only "explicitly-none" leaves the return filable without a prior-year closing balance sheet. |
| `schedule101` | null \| object |  |  |
| `schedule101.businessNumber` | null \| string |  | 9-digit BN or 15-char RC account (e.g. "123456789RC0001"). |
| `schedule101.isFinancialInstitution` | boolean \| null |  | Bank / credit union / trust — specialised GIFI codes apply. |
| `schedule101.isInsuranceCorp` | boolean \| null |  | RC4088 p.5 insurance carve-out — file F/S as PDF instead. |
| `schedule101.isWindupSuccessor` | boolean \| null |  | s.88(1) wind-up successor (opening at wind-up effective date). |
| `schedule12` | object |  |  |
| `schedule12.businessCategories` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.ceasesResidenceImmediatelyAfterYearEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.claimAllocations` | array \| null |  |  |
| `schedule12.claimAllocations[]` | object |  |  |
| `schedule12.claimAllocations[].amount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.claimAllocations[].originalOwnerId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.claimAllocations[].poolId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.claimAllocations[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.dealerInResourceRights` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.emigrationForeignIncomeAlreadyIncluded` | array \| boolean \| null \| number \| object \| string |  | Saved S12 answer for an emigration return: True when sourceIncome and foreignResourceIncomeBeforeDeductions already include the deemed foreign-resource proceeds, False when the engine adds the s.59(1) amounts to the pre-emigration source income. The top-level emigrationForeignIncomeAlreadyIncluded takes precedence. A missing answer holds the foreign claim. |
| `schedule12.foreignResourceIncomeBeforeDeductions` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.foreignTaxAllocations` | array \| null |  |  |
| `schedule12.foreignTaxAllocations[]` | object |  |  |
| `schedule12.foreignTaxAllocations[].amount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.foreignTaxAllocations[].country` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.foreignTaxAllocations[].evidence` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.foreignTaxAllocations[].incomeType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.foreignTaxAllocations[].poolId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.foreignTaxAllocations[].sourceId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.incomeBeforeCeeAndSection65` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances` | array \| null |  |  |
| `schedule12.legacyAllowances[]` | object |  |  |
| `schedule12.legacyAllowances[].allowanceId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].evidence` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].historicalEligibleCost` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].inclusion59_3_3_c_d` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].incurredDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].opening` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].previousDeductions` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].qualifyingIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].regulation` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.legacyAllowances[].requestedClaim` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships` | array \| null |  |  |
| `schedule12.partnerships[]` | object |  |  |
| `schedule12.partnerships[].atRisk66_8` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].farmingLoss` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].fiscalEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].fiscalStart` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].foreignCountryOrder` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].limitedPartner66_8` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].orderFiledOrMinisterDetermined` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].partnershipId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].priorFiscalEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].shares` | array \| null |  |  |
| `schedule12.partnerships[].shares[]` | object |  |  |
| `schedule12.partnerships[].shares[].amount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].shares[].poolId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].shares[].priorDenied` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.partnerships[].taxCredits` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools` | array \| null |  |  |
| `schedule12.pools[]` | object |  |  |
| `schedule12.pools[].acquiredDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].acquisitionYearException` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].allocationChangeReason` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].allocationMethod` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].bookExpense` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].canadianIncomeDesignation` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].character` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].country` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].currentInventoryReserve` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].debtForgiveness80_13` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].deficitDesignation` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events` | array \| null |  |  |
| `schedule12.pools[].events[]` | object |  |  |
| `schedule12.pools[].events[].agreementDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].amount` | array \| boolean \| null \| number \| object \| string |  | Federal statutory pool movement before separately recorded assistance or renunciation events; a current expense is net of the CEE definition's pre-commercial revenue exclusion. |
| `schedule12.pools[].events[].authority` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].bookExpense` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].bookIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].date` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].designated59_1_b_ii` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].dispositionCosts` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].economicExpenseId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].eligibleCategory` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].eventId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].evidence` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].grossAmount` | array \| boolean \| null \| number \| object \| string |  | Source expense before pre-commercial revenue exclusions. S421 applies BC ITA s.25.1 independently to this gross amount; Schedule 12 adds amount. Omit only when amount also equals the gross expense. |
| `schedule12.pools[].events[].incurredDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].kind` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].lookbackDecember2033Exception` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].nonArmsLengthAcquisition` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].originalExpenseDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].relatedEventId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].renouncedUnder66_12_63` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].successorExpense` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].events[].transferId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].foreignIncomeType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].globalLimitDesignation` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].inventoryProceeds` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].kind` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].nonArmsLengthAcquisition` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].opening` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].openingDifferenceResolution` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].openingSource` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].originalOwnerId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].poolId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].predecessorDeductions` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].priorAllocationMethod` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].priorClosing` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].priorInventoryReserve` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].propertyIds` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].recoveryInBookIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].reductionsInBookIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].requestedClaim` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.pools[].sourceIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes` | array \| null |  |  |
| `schedule12.propertyIncomes[]` | object |  |  |
| `schedule12.propertyIncomes[].canadianIncomeDesignatedToForeign` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].country` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].debtForgiveness80_13` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].dispositionIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].evidence` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].originalOwnerId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].otherSuccessorDeductions` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].processingIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].productionIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].reserveAmount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.propertyIncomes[].sharedPropertyIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.relatedPbcInvestmentsAllOrSubstantiallyAll` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.relatedPbcInvestmentsPredominant` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.relatedPbcQualifiesWithoutHI` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.residentThroughoutYear` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits` | object |  |  |
| `schedule12.resourceProfits.cdeRecovery59_3_2_c` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.deductions59_1_a_64_1_1_64_1_2` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.earnedBasePositiveComponents1205` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.earnedBaseReductionComponents1205` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.inclusion59_3_3_a_b` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.inclusion59_3_3_f` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.incomeBeforeSection65And59_3_3_f` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.otherDeductibleResourceExpenses` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.recoveryInclusions59_2_59_3_2_b_59_1_b` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources` | array \| null |  |  |
| `schedule12.resourceProfits.sources[]` | object |  |  |
| `schedule12.resourceProfits.sources[].armsLengthComparator` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].category` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].connectedPartyCharge` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].debtForgiveness80_13` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].evidence` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].grossRevenue` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].nondeductibleComparator` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].railwayWhollyOwnedThroughoutYear` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].resourceClaimPoolIds` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].sourceExpenses` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.sources[].sourceId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.storageRightProceedsPreviouslyUnapplied` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.resourceProfits.successorDepletionAttributableTo59_3_3_a_b` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.revision` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.sections112And113Deductions` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers` | array \| null |  |  |
| `schedule12.transfers[]` | object |  |  |
| `schedule12.transfers[].allOrSubstantiallyAll` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].amount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].antiStuffing66_11_4` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].date` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].designatedAmount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].designationFiledDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].electionFiledDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].evidence` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].fromPoolId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].kind` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].originalOwnerId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].predecessorClaim` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].predecessorRecoveryWithoutRelief` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].predecessorYearEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].purposeTest66_7_11` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].toPoolId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].transferId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].transfereeFilingDueDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].transferorFilingDueDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule12.transfers[].transferorTaxExempt` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule125` | null \| object |  |  |
| `schedule125.businessNumber` | null \| string |  | 9-digit BN or 15-char RC account (e.g. "123456789RC0001"). |
| `schedule125.corporationName` | null \| string |  | Corporation legal name (header line in .gfi handoff). |
| `schedule125.currentYear` | null \| object |  | GIFI 8000-9999 code → validator-sign amount map for the current year. In the S125 range this is numerically identical to natural sign. |
| `schedule125.currentYearEnd` | null \| string |  | CY end date YYYY-MM-DD. |
| `schedule125.insuranceUnderwritingType` | null \| string |  | The insurance underwriting subtype, read with isInsuranceCorp to decide whether the RC4088 Rev.23 p.5 PDF financial statement supplement advisory fires. Send it whenever isInsuranceCorp is true, using non_underwriting for brokerages, MGAs, agency subsidiaries and non-underwriting holding companies. No enum is published because the engine routes every unrecognized string to the ordinary-filer branch rather than rejecting it. |
| `schedule125.internetAttributableGifiCodes` | array \| null |  | Practitioner-tagged GIFI codes deemed internet-attributable, for the S88 cross-feed. Must be revenue-range codes (8000-8299, exclusive of subtotals 8089/8299). Every code is opted in explicitly; nothing is tagged by default. |
| `schedule125.internetAttributableGifiCodes[]` | null \| string |  | One entry in the stated collection. |
| `schedule125.isFarmCorp` | boolean \| null |  | Farm corp — GIFI 9370-9899 farm bands are populated. Advisory. |
| `schedule125.isFinancialInstitution` | boolean \| null |  | Bank / credit union / trust — specialised GIFI codes apply. |
| `schedule125.isInactiveCorp` | boolean \| null |  | T2 line 280 inactive flag. |
| `schedule125.isInsuranceCorp` | boolean \| null |  | RC4088 p.5 insurance carve-out — file F/S as PDF instead. |
| `schedule125.operatingName` | null \| string |  | S125 field 0001 operating name, distinct from the corporation legal name. An explicit empty string means no operating name. |
| `schedule125.priorYear` | null \| object |  | Optional Filemark prior-period comparative map, same validator-sign convention. It is not rendered as a second CRA S125 amount column and never gates readiness. |
| `schedule125.priorYearEnd` | null \| string |  | Optional Filemark comparative period end; not a CRA S125 field. |
| `schedule125.statements` | array |  | Complete supplementary income statements, with disjoint source account identities. The S125 producer combines each filed statement exactly once for S140 and revenue receivers. |
| `schedule125.statementsComplete` | boolean \| null |  | True only for a complete supplementary statement roster. Missing or false refuses aggregate revenue and summary reads. |
| `schedule125.statements[]` | object |  | One supplementary S125 operation. |
| `schedule125.statements[].accountIds` | array |  | Nonempty disjoint source account identities assigned to this statement. |
| `schedule125.statements[].accountIds[]` | string | strict | One source account identity, assigned to one supplementary statement only. |
| `schedule125.statements[].currentYear` | object | strict | GIFI item code to exact decimal text for this operation; consolidated currentYear, if supplied, must reconcile to the statement source amounts. |
| `schedule125.statements[].operatingName` | string | strict | This operation operating name at S125 0001, or an explicit empty name. |
| `schedule125.statements[].sequenceNumber` | string | strict | Unique two-digit printed S125 0003 sequence from 01 to 99. |
| `schedule125.statements[].statementId` | string | strict | Unique stable operation identity; used by the federal operand selector, never the row position. |
| `schedule13` | null \| object |  |  |
| `schedule13.line008TotalOpening` | null \| number \| string |  | Part 1 box 008, the total of the opening column across the capital gains reserve rows. The engine computes it from the rows, so send it only to reconcile an imported figure; a difference over one dollar is reported as an error. |
| `schedule13.line009TotalAmalgamationTransfer` | null \| number \| string |  | Part 1 box 009, the total of the amalgamation or wind-up transfer column across the capital gains reserve rows. Box 008 plus box 009 is what the form footer routes to Schedule 6 line 880. |
| `schedule13.line010TotalClosing` | null \| number \| string |  | Part 1 box 010, the total of the closing column across the capital gains reserve rows, which the form footer routes to Schedule 6 line 885. |
| `schedule13.line270TotalOpening` | null \| number \| string |  | Part 2 box 270, the total opening balance across the six reserve types. The engine sums it from the per-reserve entries, so send it only to reconcile an imported total. |
| `schedule13.line275TotalAmalgamationTransfer` | null \| number \| string |  | Part 2 box 275, the total of the amalgamation or wind-up transfer column across the six reserve types. A difference over one dollar from the computed sum is reported as an error. |
| `schedule13.line280TotalClosing` | null \| number \| string |  | Part 2 box 280, the total closing balance across the six reserve types. |
| `schedule13.part1CapitalGainsReserves` | array \| null |  | Part 1 capital gains reserves (per-row). Empty array is valid for a corp with no capital-gains-reserve continuity. |
| `schedule13.part1CapitalGainsReserves[]` | object |  |  |
| `schedule13.part1CapitalGainsReserves[].amalgamationTransfer` | null \| number \| string |  | Box 003 — Transfer on an amalgamation (ITA s.87(2)(g)/(m)) or the wind-up of a subsidiary (s.88(1)(e.1)). Normally null/zero unless the corp had a successor event in the tax year. |
| `schedule13.part1CapitalGainsReserves[].closingBalance` | null \| number \| string |  | Box 004 — Balance at the end of the year. The fresh CY-end reserve the practitioner claims; tied to S6 per-disposition reserve calc. |
| `schedule13.part1CapitalGainsReserves[].description` | null \| string |  | Box 001 — Description of property. Required when the row has any non-zero amount in boxes 002/003/004. |
| `schedule13.part1CapitalGainsReserves[].dispositionDate` | null \| string |  | ISO date (YYYY-MM-DD) of the sale copied from the originating Schedule 6 disposition. With the property identifier it distinguishes separate sales of one property or under a shared reconciliation reference; a date before the taxation year marks a reserve brought back from an earlier sale (s.40(1)(a)). A ten-year reserve also uses it for the selected provision's commencement rule (ss.40(1.1) to (1.4)). Preserved in reserve continuity. |
| `schedule13.part1CapitalGainsReserves[].dispositionReconciliationId` | null \| string |  | Reconciliation reference copied from Schedule 6, including a W08 Row ID that may cover several sales. Property identifier and disposition date distinguish those sales. Preserved as historical sale evidence through reserve continuity (s.40(1)(a), s.41(2)). |
| `schedule13.part1CapitalGainsReserves[].extendedTenYearReserve` | boolean \| null \| string |  | ITA 40(1.1) to (1.4) — "Yes" when the disposition is one for which s.40(1)(a)(iii) is read with "1/10" and "9": to the taxpayer's child of family farm/fishing property or a QSBC share (1.1), a qualifying intergenerational transfer under s.84.1(2.31)/(2.32) (1.2), a qualifying business transfer to an employee ownership trust (1.3), or a qualifying cooperative conversion (1.4). Read through norm_yes_no; blank is UNANSWERED and blocks, never an implicit "No". |
| `schedule13.part1CapitalGainsReserves[].extendedTenYearReserveEligibilityConfirmed` | boolean \| null \| string |  |  |
| `schedule13.part1CapitalGainsReserves[].extendedTenYearReserveProvision` | null \| string |  |  |
| `schedule13.part1CapitalGainsReserves[].id` | null \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule13.part1CapitalGainsReserves[].isActiveAsset` | boolean \| null \| string |  | Non-printed s.125(7) character of the property whose gain carries the reserve. Blank is unanswered and blocks a non-zero reserve swing. |
| `schedule13.part1CapitalGainsReserves[].isForeignSource` | boolean \| null \| string |  | Non-printed s.129(4) source character of that same property. |
| `schedule13.part1CapitalGainsReserves[].isListedPersonalProperty` | boolean \| null \| string |  | Non-printed ITA 54 listed-personal-property character of the property whose gain carries the reserve. A Yes keeps the reserve inside the s.41 computation (Schedule 6 amount F) instead of lines 880 and 885. Fixed at the sale and carried forward. Blank is unanswered: it blocks a non-zero reserve swing when the year has listed-personal-property activity and is otherwise disclosed as other property. |
| `schedule13.part1CapitalGainsReserves[].openingBalance` | null \| number \| string |  | Box 002 — Balance at the beginning of the year. Must equal the prior-year closing balance per the continuity-of-reserves semantics; the carryforward function auto-rolls PY closing → CY opening. |
| `schedule13.part1CapitalGainsReserves[].originalGain` | null \| number \| string |  | Statutory gain base for clauses (C)/(D): ordinarily the ITA 40(1)(a)(i) gain. On an inherited box-003 reserve, ITA 87(2)(m)(ii) instead deems the predecessor's claimed reserve to be that amount. |
| `schedule13.part1CapitalGainsReserves[].precedingTaxationYearsEndingAfterDisposition` | null \| number \| string |  | OPTIONAL override for N itself — "the number of preceding taxation years of the taxpayer ending after the disposition of the property". Normally derived as (filing year − yearOfDisposition), which is exact while the corporation's taxation years map one-to-one onto year labels. A short year (or two year-ends in one calendar year) makes the derived count too low and the cap too generous, so the practitioner may state the statutory count and it governs. Exception: a proven predecessor reserve in box 003 uses N = 1 under ITA 87(2)(m)(i) (also applied to a qualifying wind-up by 88(1)(e.2)); a… |
| `schedule13.part1CapitalGainsReserves[].proceedsNotDueAfterYearEnd` | null \| number \| string |  | ITA 40(1)(a)(iii)(C) — "such of the proceeds of disposition of the property that are payable to the taxpayer after the end of the year". Measured at EACH year end, so it is re-answered every year and the carryforward resets it. |
| `schedule13.part1CapitalGainsReserves[].proceedsOfDisposition` | null \| number \| string |  | ITA 40(1)(a)(iii)(C) — the property's TOTAL proceeds of disposition, the denominator of the clause (C) portion. Fixed at the sale. |
| `schedule13.part1CapitalGainsReserves[].propertyId` | null \| string |  | Stable property identifier shared with the originating Schedule 6 disposition. Together with the disposition date it distinguishes separate sales. Preserved in reserve continuity; descriptions and amounts are not identity (s.40(1)(a)). |
| `schedule13.part1CapitalGainsReserves[].purchaserControlRelationship` | boolean \| null \| string |  | ITA 40(2)(a)(ii) — the purchaser is a corporation that, immediately after the sale, (A) was controlled by the taxpayer, (B) was controlled by the person or group controlling the taxpayer, or (C) controlled the taxpayer. Fixed at the sale; carried forward. |
| `schedule13.part1CapitalGainsReserves[].purchaserMajorityInterestPartnership` | boolean \| null \| string |  | ITA 40(2)(a)(iii) — the purchaser is a partnership in which the taxpayer was, immediately after the sale, a majority-interest partner. Fixed at the sale; carried forward. |
| `schedule13.part1CapitalGainsReserves[].taxpayerNonResident` | boolean \| null \| string |  | ITA 40(2)(a)(i) — the taxpayer, at the end of the year or at any time in the immediately following year, was not resident in Canada. |
| `schedule13.part1CapitalGainsReserves[].taxpayerTaxExempt` | boolean \| null \| string |  | ITA 40(2)(a)(i) — ... or was exempt from tax under any provision of this Part. |
| `schedule13.part1CapitalGainsReserves[].yearOfDisposition` | null \| number \| string |  | ITA 40(1)(a)(iii)(D) — the taxation year in which the property was disposed of, as the same integer year label the engine files under. N (the preceding taxation years ending after the disposition) is derived from it; nil in the year of disposition. |
| `schedule13.part2DoubtfulDebts` | object |  | Box 110/115/120 — Reserve for doubtful debts (ITA s.20(1)(l)). |
| `schedule13.part2DoubtfulDebts.amalgamationTransfer` | null \| number \| string |  |  |
| `schedule13.part2DoubtfulDebts.closingBalance` | null \| number \| string |  |  |
| `schedule13.part2DoubtfulDebts.openingBalance` | null \| number \| string |  |  |
| `schedule13.part2DoubtfulDebts.statutoryBasis` | null \| string |  |  |
| `schedule13.part2DoubtfulDebts.statutoryProvision` | null \| string |  | Non-printed support for a manually entered reserve. The catchall row cannot be linked to a generic workpaper because its statutory tests vary by provision; absent values remain unanswered and block a non-zero row. |
| `schedule13.part2OtherTaxReserves` | object |  | Box 230/235/240 — Other tax reserves (T4012 catch-all: s.20(1)(o) special shipping surveys, s.20(1)(oo)/(pp) salary-deferral amounts, s.32(1) unearned non-life-insurance commissions, etc.). |
| `schedule13.part2OtherTaxReserves.amalgamationTransfer` | null \| number \| string |  |  |
| `schedule13.part2OtherTaxReserves.closingBalance` | null \| number \| string |  |  |
| `schedule13.part2OtherTaxReserves.openingBalance` | null \| number \| string |  |  |
| `schedule13.part2OtherTaxReserves.statutoryBasis` | null \| string |  |  |
| `schedule13.part2OtherTaxReserves.statutoryProvision` | null \| string |  | Non-printed support for a manually entered reserve. The catchall row cannot be linked to a generic workpaper because its statutory tests vary by provision; absent values remain unanswered and block a non-zero row. |
| `schedule13.part2PrepaidRent` | object |  | Box 150/155/160 — Reserve for prepaid rent (ITA s.20(1)(m)(iii) applied to amounts forced-included under s.12(1)(a) for advance rent or other use-of-property payments). |
| `schedule13.part2PrepaidRent.amalgamationTransfer` | null \| number \| string |  |  |
| `schedule13.part2PrepaidRent.closingBalance` | null \| number \| string |  |  |
| `schedule13.part2PrepaidRent.openingBalance` | null \| number \| string |  |  |
| `schedule13.part2PrepaidRent.statutoryBasis` | null \| string |  |  |
| `schedule13.part2PrepaidRent.statutoryProvision` | null \| string |  | Non-printed support for a manually entered reserve. The catchall row cannot be linked to a generic workpaper because its statutory tests vary by provision; absent values remain unanswered and block a non-zero row. |
| `schedule13.part2ReturnableContainers` | object |  | Box 190/195/200 — Reserve for returnable containers (ITA s.20(1)(m)(iv) for non-bottle deposits; bottle deposits fall outside (m)(iv) by statutory carve-out and are reported under s.20(1)(m.2) per CRA administrative practice). |
| `schedule13.part2ReturnableContainers.amalgamationTransfer` | null \| number \| string |  |  |
| `schedule13.part2ReturnableContainers.closingBalance` | null \| number \| string |  |  |
| `schedule13.part2ReturnableContainers.openingBalance` | null \| number \| string |  |  |
| `schedule13.part2ReturnableContainers.statutoryBasis` | null \| string |  |  |
| `schedule13.part2ReturnableContainers.statutoryProvision` | null \| string |  | Non-printed support for a manually entered reserve. The catchall row cannot be linked to a generic workpaper because its statutory tests vary by provision; absent values remain unanswered and block a non-zero row. |
| `schedule13.part2UndeliveredGoodsAndServices` | object |  | Box 130/135/140 — Reserve for undelivered goods and services not rendered (ITA s.20(1)(m)). |
| `schedule13.part2UndeliveredGoodsAndServices.amalgamationTransfer` | null \| number \| string |  |  |
| `schedule13.part2UndeliveredGoodsAndServices.closingBalance` | null \| number \| string |  |  |
| `schedule13.part2UndeliveredGoodsAndServices.openingBalance` | null \| number \| string |  |  |
| `schedule13.part2UndeliveredGoodsAndServices.statutoryBasis` | null \| string |  |  |
| `schedule13.part2UndeliveredGoodsAndServices.statutoryProvision` | null \| string |  | Non-printed support for a manually entered reserve. The catchall row cannot be linked to a generic workpaper because its statutory tests vary by provision; absent values remain unanswered and block a non-zero row. |
| `schedule13.part2UnpaidAmounts` | object |  | Box 210/215/220 — Reserve for unpaid amounts (ITA s.20(1)(n) instalment-sale reserve; NOT the s.78 unpaid-expense add-back). |
| `schedule13.part2UnpaidAmounts.amalgamationTransfer` | null \| number \| string |  |  |
| `schedule13.part2UnpaidAmounts.closingBalance` | null \| number \| string |  |  |
| `schedule13.part2UnpaidAmounts.openingBalance` | null \| number \| string |  |  |
| `schedule13.part2UnpaidAmounts.statutoryBasis` | null \| string |  |  |
| `schedule13.part2UnpaidAmounts.statutoryProvision` | null \| string |  | Non-printed support for a manually entered reserve. The catchall row cannot be linked to a generic workpaper because its statutory tests vary by provision; absent values remain unanswered and block a non-zero row. |
| `schedule130` | null \| object |  | Schedule 130 (EIFEL) practitioner-entered blob — feeds the schedule130 batch node, whose result posts S1 lines 251/252. |
| `schedule130.allocatedGroupRatioAmount` | null \| number \| string |  | When `groupRatioElectionMade = true`, the practitioner-entered allocated group-ratio amount (line 118 / line 132). The engine uses this as the s.18.2(2) numerator instead of ATI × ratio. |
| `schedule130.borrowingsRows` | array \| null |  |  |
| `schedule130.borrowingsRows[]` | object |  |  |
| `schedule130.borrowingsRows[].relationship` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.borrowingsRows[].totalNotionalDerivatives` | null \| number \| string |  | Box 013 — Total notional of related derivatives. |
| `schedule130.borrowingsRows[].totalPrincipal` | null \| number \| string |  | Box 012 — Total principal of borrowings at any point in the year. |
| `schedule130.borrowingsRows[].variableA_para_a` | null \| number \| string |  | Box 014 — Amounts under para (a) of variable A of IFE in respect of this borrowing. |
| `schedule130.borrowingsRows[].variableA_para_e` | null \| number \| string |  | Box 015 — Amounts under para (e) of variable A of IFE (other than a loss or capital loss). |
| `schedule130.borrowingsRows[].variableB_para_a` | null \| number \| string |  | Box 016 — Amounts under para (a) of variable B of IFE (other than a dividend / exempt IFE / gain). |
| `schedule130.capitalizedIfeRows` | array \| null |  |  |
| `schedule130.capitalizedIfeRows[]` | object |  |  |
| `schedule130.capitalizedIfeRows[].businessCeasedAtYearEnd` | array \| boolean \| null \| number \| object \| string |  | Class 14.1 exception operand under s.20(16.1)(c). |
| `schedule130.capitalizedIfeRows[].classNumber` | array \| boolean \| null \| number \| object \| string |  | Box 046 — CCA class number. |
| `schedule130.capitalizedIfeRows[].ifeCcaClaimed` | null \| number \| string |  | Box 051 — IFE in CCA claimed (capped by box 049). |
| `schedule130.capitalizedIfeRows[].ifeCostAdjustments` | null \| number \| string |  | Box 048 — IFE in cost of acquisitions / adjustments / dispositions. |
| `schedule130.capitalizedIfeRows[].ifeOpeningUcc` | null \| number \| string |  | Box 047 — IFE in opening UCC. |
| `schedule130.capitalizedIfeRows[].ifeTerminalLoss` | null \| number \| string |  | Box 050 — IFE in terminal loss (see form note 2). |
| `schedule130.capitalizedIfeRows[].propertyRemainingStatus` | array \| boolean \| null \| number \| object \| string |  | Off-form s.20(16)(b) fact; `unknown` until answered. |
| `schedule130.capitalizedIfeRows[].section13_4_3FormerPropertyApplies` | array \| boolean \| null \| number \| object \| string |  | Whether ss.13(4.3)/20(16.1)(b) exclude the class. |
| `schedule130.ccpcGroupTaxableCapitalEmployedInCanada` | null \| number \| string |  | Paragraph (a): the amount determined for C in s.125(5.1)(a) — the ASSOCIATED-GROUP taxable capital employed in Canada aggregate, not the filer's own. Must be below the statutory threshold; equal is not excluded ("less than"). |
| `schedule130.cfaDeniedRows` | array \| null |  |  |
| `schedule130.cfaDeniedRows[]` | object |  |  |
| `schedule130.cfaDeniedRows[].affiliateVariableA` | array \| boolean \| null \| number \| object \| string |  | Box 145 — Amount under variable A IFE for the affiliate. |
| `schedule130.cfaDeniedRows[].cfaName` | array \| boolean \| null \| number \| object \| string |  | Box 144 — Name of CFA. |
| `schedule130.cfaDeniedRows[].id` | array \| boolean \| null \| number \| object \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule130.cfaDeniedRows[].specifiedParticipatingPct` | array \| boolean \| null \| number \| object \| string |  | Box 148 — Specified participating percentage (as a fraction 0-1 internally; form prints %). |
| `schedule130.cfaPartnershipInclusionRows` | array \| null |  |  |
| `schedule130.cfaPartnershipInclusionRows[]` | object |  |  |
| `schedule130.cfaPartnershipInclusionRows[].amountFapiInclusion` | array \| boolean \| null \| number \| object \| string |  | Box 152 — Amount under subclause D(II) in CFA's FAPI. |
| `schedule130.cfaPartnershipInclusionRows[].cfaName` | array \| boolean \| null \| number \| object \| string |  | Box 151 — Name of CFA that is a partnership member. |
| `schedule130.cfaPartnershipInclusionRows[].id` | array \| boolean \| null \| number \| object \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule130.cfaPartnershipInclusionRows[].specifiedParticipatingPct` | array \| boolean \| null \| number \| object \| string |  | Box 153 — Specified participating percentage (fraction 0-1). |
| `schedule130.cfaRows` | array \| null |  | Optional complete per-affiliate-year source for lines 041, 081, 082 and Part 2M. ITA 18.2(1) IFE A(j), ATI E(b), and 95(2)(f.11)(ii)(D)/(E). Legacy aggregate inputs remain accepted when this table is absent. |
| `schedule130.cfaRows[]` | object |  |  |
| `schedule130.cfaRows[].affiliateVariableA` | null \| number \| string |  | Gross affiliate variable A after any clause (E) election, for Part 2M box 145. Separate from net RAIFE; never substitute a return-wide total. |
| `schedule130.cfaRows[].amountFapiInclusion` | null \| number \| string |  | For a CFA of the corporation that is itself a partnership member, its clause (D)(II) inclusion, box 152. A CFA owned by a partnership of the corporation is a different case and does not supply this box. |
| `schedule130.cfaRows[].cfaName` | array \| boolean \| null \| number \| object \| string |  | Affiliate name, matched with the year and holding path to its T2229 row. |
| `schedule130.cfaRows[].cfaYearEnd` | array \| boolean \| null \| number \| object \| string |  | Affiliate taxation year end (YYYY-MM-DD). |
| `schedule130.cfaRows[].faplBeforeClauseD` | null \| number \| string |  | Affiliate FAPL after clause (E), determined without clause (D), for ATI variable E(b). Final T2229 line 270 cannot substitute for this amount. |
| `schedule130.cfaRows[].finalFapiOrFapl` | null \| number \| string |  | Final T2229 line 270, negative for FAPL. Retained per affiliate year; not substituted for pre-clause-D FAPL. |
| `schedule130.cfaRows[].heldThrough` | array \| boolean \| null \| number \| object \| string |  | direct_or_indirect or partnership. A partnership holding also identifies its partnership. |
| `schedule130.cfaRows[].id` | array \| boolean \| null \| number \| object \| string |  | Stable affiliate-year row identifier. A T2229 row may explicitly bind this identifier. |
| `schedule130.cfaRows[].partnershipIfeInclusion` | null \| number \| string |  | U in ATI E(b): this affiliate amount included in the corporation IFE through a partnership. Already included in Part 1E; never added to line 041. |
| `schedule130.cfaRows[].partnershipName` | array \| boolean \| null \| number \| object \| string |  | Partnership in the affiliate holding path, when applicable. |
| `schedule130.cfaRows[].raife` | null \| number \| string |  | Affiliate net RAIFE after any clause (E) election; T2229 line 260 supplies only this affiliate year. |
| `schedule130.cfaRows[].raifr` | null \| number \| string |  | Affiliate RAIFR used to determine T under ATI variable E(b). |
| `schedule130.cfaRows[].specifiedParticipatingPct` | null \| number \| string |  | Specified participating percentage as a fraction from zero through one. |
| `schedule130.claim111_1_aNotReducingTaxableIncome` | null \| number \| string |  | Boxless — the part of the year's paragraph 111(1)(a) claim that did NOT reduce taxable income, under paragraph (a.1) of variable E in the ITA 18.2(1) "adjusted taxable income" definition. Nil unless taxable income (line 079) is nil, since every dollar of the claim reduced a positive taxable income. Enter 0 when the whole claim reduced it. The split is a Division C ordering fact and is never inferred, so leaving it blank while line 079 is nil and 111(1)(a) losses are claimed blocks. Applies to taxation years ending after August 15, 2025. |
| `schedule130.commencement` | null \| object |  | Reviewed actual shortening and purpose histories under S.C.2024 c.15 s.7(2)(a)/(b). Required to establish application for a year beginning before and ending after October 1, 2023. Neither an entered percentage nor an altered date replaces these facts. |
| `schedule130.commencement.applicationTransactionRef` | array \| boolean \| null \| number \| object \| string |  | Bounded retained transaction and purpose reference supporting a Yes to early application. Required when that answer is Yes. |
| `schedule130.commencement.confirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm both exact commencement answers and their supporting histories. A changed answer or reference clears this review. |
| `schedule130.commencement.evidenceRef` | array \| boolean \| null \| number \| object \| string |  | Nonblank supporting reference, at most 1000 characters, for the actual period/shortening/purpose history. |
| `schedule130.commencement.precedingYearShortenedForApplicationPurpose` | array \| boolean \| null \| number \| object \| string |  | Whether one of the three preceding years was shortened by an actual transaction/event/series with a purpose of deferring EIFEL application or increasing transitional capacity under s.7(2)(a). Answer Yes or No and retain the history. |
| `schedule130.commencement.rateTransactionRef` | array \| boolean \| null \| number \| object \| string |  | Bounded retained transaction and purpose reference supporting a Yes to rate deferral. Required when that answer is Yes. |
| `schedule130.commencement.year2023ShortenedForRatePurpose` | array \| boolean \| null \| number \| object \| string |  | Separate s.7(2)(b) fact: whether any 2023-start year was shortened with a purpose of deferring the 30% ratio. Yes replaces the transitional 40% with 30%. |
| `schedule130.consolidatedStatementsAudited` | boolean \| null |  |  |
| `schedule130.corpIdentity` | object |  | Corporation identity block carried on the Schedule 130 blob. Its businessNumber and entityId members name the filer on the schedule's filing-activity record. It is the last identity source Filemark reads, after the root entityId and the T2 identification-area business number, so omit it whenever either of those carries the identity. |
| `schedule130.corpIdentity.businessNumber` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.corpIdentity.entityId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.cuecRows` | array \| null |  |  |
| `schedule130.cuecRows[]` | object |  |  |
| `schedule130.cuecRows[].amountsAbsorbed` | null \| number \| string |  | Box 124 — Amounts previously absorbed under s.18.2(2). |
| `schedule130.cuecRows[].amountsAbsorbedCuecRestated` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.cuecRows[].amountsTransferred` | null \| number \| string |  | Box 123 — Amounts previously transferred under s.18.2(4). |
| `schedule130.cuecRows[].amountsTransferredCuecRestated` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.cuecRows[].capacityProvenance` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.cuecRows[].excessCapacity` | null \| number \| string |  | Box 122 — Excess capacity computed for that preceding year. |
| `schedule130.cuecRows[].excessCapacityCuecRestated` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.cuecRows[].label` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.cuecRows[].precedingYearEnd` | array \| boolean \| null \| number \| object \| string |  | End date (yyyy-mm-dd) of the preceding tax year this row covers. When a loss-restriction event date is set, the engine auto-zeroes rows whose precedingYearEnd is on or before the event — the s.18.2(1) "cumulative unused excess capacity" post-LRE reset, picking up the s.251.2 "loss restriction event" defined term. |
| `schedule130.currentYearCapacityProvenance` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.currentYearRifeComponents` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.excludedEntityParagraph` | array \| boolean \| null \| number \| object \| string |  | Which limb of the s.18.2(1) "excluded entity" definition the claim relies on. The flag above cannot carry the exemption on its own: the claim fails closed at error severity until a limb is named AND substantiated by the operands below, because excluded-entity status removes the entire s.18.2(2) denial. |
| `schedule130.excludedInterestElectionMade` | boolean \| null |  | Confirms the excluded interest election under ITA s.18.2(1) was filed on T2227. Setting it records the election as made; the engine reads it only through a truthiness test, so any non-true value reads as not made. |
| `schedule130.exemptIfeRows` | array \| null |  |  |
| `schedule130.exemptIfeRows[]` | object |  |  |
| `schedule130.exemptIfeRows[].amountPaidToArmsLengthPerson` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.exemptIfeRows[].borrowingEnteredInRespectOfAgreement` | array \| boolean \| null \| number \| object \| string |  | Strict per-row s.18.2(1) "exempt interest and financing expenses" (b), (c) and (d) facts. Box 007 answers paragraph (a) alone; the Part 1B face does not collect the other three, and all four are cumulative. |
| `schedule130.exemptIfeRows[].expensesBorneByPublicSectorAuthority` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.exemptIfeRows[].ifeIncurred` | null \| number \| string |  | Box 009 — IFE incurred on the column 2 amount (see form note 1). |
| `schedule130.exemptIfeRows[].incomeFromFundedActivities` | null \| number \| string |  | Box 010 — Income from activities the column 2 borrowing funded. |
| `schedule130.exemptIfeRows[].lossFromFundedActivities` | null \| number \| string |  | Box 011 — Loss from activities the column 2 borrowing funded (entered as positive). |
| `schedule130.exemptIfeRows[].principalAmount` | null \| number \| string |  | Box 008 — Principal amount of the borrowing / other financing. |
| `schedule130.exemptIfeRows[].publicSectorAuthority` | array \| boolean \| null \| number \| object \| string |  | Box 007 — Name of the public-sector authority. |
| `schedule130.fairValueAdjustmentsElectionMade` | boolean \| null |  | Confirms the fair value adjustments election under ITA s.18.21(4) was filed on T2225. Setting it records the election as made. |
| `schedule130.filedT2224TransitionalElection` | boolean \| null |  | Confirms that form T2224, the transitional election under the EIFEL rules that fixes group net excess capacity for the three years before the first EIFEL year, was filed. Read when transitionalGroupCapacityElectionMade is true: until it is set the return is held at error severity, naming this cell in missing_required. A T2224 companion record with a recorded filing sets it; the election is filed separately from the T2. |
| `schedule130.filedT2225FairValueAdjustmentsElection` | boolean \| null |  | Confirms that form T2225 was filed for the fair value adjustments election under ITA subsection 18.21(4). Read when fairValueAdjustmentsElectionMade is true: until it is set the return is held at error severity, naming this cell in missing_required. The group's first-year T2225 companion record with a recorded filing sets it; the election is filed separately from the T2. |
| `schedule130.filedT2225GroupRatioElection` | boolean \| null |  |  |
| `schedule130.filedT2226TransferOfCapacityElection` | boolean \| null |  | Confirms that form T2226, the election under ITA subsection 18.2(4) to transfer cumulative unused excess capacity, was filed by this corporation as transferor. Read when transferredOutCapacity18_2_4 is above nil; a transfer received is attested per Part 1A row (electionT2226FiledByTransferor) instead. Until it is set the return is held at error severity, naming this cell in missing_required. A T2226 companion record with a recorded filing sets it. |
| `schedule130.filedT2227ExcludedInterestElection` | boolean \| null |  | Confirms that form T2227 was filed for the excluded interest election under ITA subsection 18.2(1). Read when excludedInterestElectionMade is true: until it is set the return is held at error severity, naming this cell in missing_required. A T2227 companion record with a recorded filing sets it; the election is filed separately from the T2. |
| `schedule130.filedT2228PreRegimeLossElection` | boolean \| null |  | Whether the practitioner has filed Form T2228 to make the specified-pre-regime-loss election. Gates the line 090 entry per form note 4. |
| `schedule130.filedT2229ForgoFaplElection` | boolean \| null |  | Confirms form T2229 was filed to forgo a foreign accrual property loss under ITA clause 95(2)(f.11)(ii)(E). Required at error severity when forgoFaplElectionMade is true. When it is unset, forgoFaplElectionMade is unanswered and line 150 or line 155 carries an amount, the return is held provisional. A T2229 companion record with a recorded filing sets it. |
| `schedule130.forgoFaplElectionMade` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation elected under ITA clause 95(2)(f.11)(ii)(E) (form T2229) for a controlled foreign affiliate year ending in this year. Separate from the mandatory clause (D) denial on Part 2M. True requires the filed T2229; false answers the Part 2M question; leave it unset only when unknown. |
| `schedule130.groupAdjustedNetBookIncome` | null \| number \| string |  |  |
| `schedule130.groupAggregateIfeAndExemptIfe` | null \| number \| string |  | Paragraph (b) variable A: IFE + exempt IFE of the taxpayer AND of every Canadian-resident eligible group entity. A GROUP total — the filer's own IFE can never satisfy the limb. |
| `schedule130.groupAggregateIfrExcludingFinancialInstitutionGroup` | null \| number \| string |  | Paragraph (b) variable B: the corresponding interest and financing REVENUE total, excluding a financial-institution group entity's IFR. The entity is excluded when A − B is at or below the de minimis amount. |
| `schedule130.groupMemberAtiTotal` | null \| number \| string |  |  |
| `schedule130.groupMemberAtiTotalPre257` | null \| number \| string |  |  |
| `schedule130.groupNetInterestExpense` | null \| number \| string |  |  |
| `schedule130.groupRatio` | null \| number \| string |  | s.18.21 group-ratio computation and allocation evidence. |
| `schedule130.groupRatioAllocationRows` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.groupRatioAmendmentConditionsMetOrNotApplicable` | boolean \| null |  | s.18.21(2)(e) — amended-election conditions are met, or this is not an amended election. |
| `schedule130.groupRatioElectionFiledOnTime` | boolean \| null |  |  |
| `schedule130.groupRatioElectionMade` | boolean \| null |  | Practitioner assertion the corp made the group-ratio election under s.18.21(2) for the year. When true, the engine zeroes excess capacity (per Part 2G header rule) and routes via the allocated group-ratio amount in Part 2K line 132 / Part 2H line 118. |
| `schedule130.groupRatioNoAmendedElectionFiled` | boolean \| null |  | s.18.21(2)(d) — no amended election has been filed in accordance with the section. |
| `schedule130.hasExemptIfe` | array \| boolean \| null \| number \| object \| string |  | Box 006 — Did the corp incur any exempt IFE in the year? |
| `schedule130.hasReceivedCapacity` | array \| boolean \| null \| number \| object \| string |  | Box 001 — Does the corp have received capacity in the year? |
| `schedule130.isCcpcThroughoutYear` | array \| boolean \| null \| number \| object \| string |  | Paragraph (a): CCPC "throughout the particular year" — not at any moment in it. |
| `schedule130.isExcludedEntity` | boolean \| null |  | Practitioner assertion that the corp meets the s.18.2(1) "excluded entity" definition for the year under one complete pathway: (a) small CCPC group TCEC < $50M; (b) group net IFE ≤ $1M; or (c) all four conjunctive tests, including (c)(iv)'s requirement that substantially all IFE recipients are not non-arm's-length tax-indifferent persons/partnerships. When true, the validator skips the s.18.2(2) denial computation and surfaces a soft warning that filing S130 is still recommended for audit protection. Defaults to null (not asserted). |
| `schedule130.isResidentInCanada` | array \| boolean \| null \| number \| object \| string |  | Paragraphs (b) and (c): "resident in Canada". Distinct from the jacket residency box because the group test reads on the particular taxpayer. |
| `schedule130.line028InterestPaidOther` | null \| number \| string |  | Line 028 — Interest paid / payable — other (not on Part 1C). |
| `schedule130.line029_20_1_e_amounts` | null \| number \| string |  | Line 029 — Amounts deductible under 20(1)(e)(ii)/(ii.1)/(ii.2)/ (e.1)/(e.2)/(f). |
| `schedule130.line034LossDeductible` | null \| number \| string |  | Line 034 — Loss deductible (other than under 20(1)(e)(i)). |
| `schedule130.line035CapitalLoss` | null \| number \| string |  | Line 035 — Capital loss that reduces para 3(b) or taxable income. |
| `schedule130.line036ExpenseFee_para_e` | null \| number \| string |  | Line 036 — Expense / fee payable giving rise to para (e) variable A IFE. |
| `schedule130.line037ExpenseFee_variableB_reducer` | null \| number \| string |  | Line 037 — Expense / fee payable that reduces IFE under variable B. |
| `schedule130.line038LeaseFinancing` | null \| number \| string |  | Line 038 — Lease financing amount (other than excluded lease / excluded interest). |
| `schedule130.line040Portion_111_1_e_attributable` | null \| number \| string |  | Line 040 — Portion of 111(1)(e) denied under 96(2.1) attributable to IFE. |
| `schedule130.line041CfaRaife` | null \| number \| string |  | Line 041 — CFA relevant affiliate IFE × specified participating %. |
| `schedule130.line043GainIncludedInIncome` | array \| boolean \| null \| number \| object \| string |  | Line 043 — Gain included in income (variable B). |
| `schedule130.line044PartnershipShare` | null \| number \| string |  | Line 044 — Partnership share of 042/043-equivalent amounts. |
| `schedule130.line058InterestReceived` | null \| number \| string |  | Line 058 — Interest received (other than 137(4.1) / excluded). |
| `schedule130.line059_12_9_or_17_1` | null \| number \| string |  | Line 059 — Amount under 12(9) or s.17.1. |
| `schedule130.line060GuaranteeFeeIncome` | null \| number \| string |  | Line 060 — Guarantee / credit-support fee income. |
| `schedule130.line062GainIncluded` | null \| number \| string |  | Line 062 — Gain included in income. |
| `schedule130.line063LeaseFinancingIncome` | null \| number \| string |  | Line 063 — Lease financing in income (non-excluded lease). |
| `schedule130.line064PartnershipShareIfr` | null \| number \| string |  | Line 064 — Partnership share of IFR (T5013 box 248 etc.). |
| `schedule130.line065CfaRaifr` | null \| number \| string |  | Line 065 — CFA relevant affiliate IFR × specified participating % (less FAT deduction). |
| `schedule130.line067LossDeductible` | null \| number \| string |  | Line 067 — Loss deductible against IFR (variable B). |
| `schedule130.line068CapitalLoss` | null \| number \| string |  | Line 068 — Capital loss reducing para 3(b). |
| `schedule130.line069PartnershipShare` | null \| number \| string |  | Line 069 — Partnership share of 066/067/068-equivalent amounts. |
| `schedule130.line070ShelteredByFtc` | null \| number \| string |  | Line 070 — IFR sheltered by foreign tax credit (non-withholding). |
| `schedule130.line071ExemptFromPartI` | null \| number \| string |  | Line 071 — IFR exempt from Part I. |
| `schedule130.line079TaxableIncome` | array \| boolean \| null \| number \| object \| string |  | Line 079 — Taxable income (NR: TI earned in Canada). |
| `schedule130.line080NonCapitalLossForYear` | null \| number \| string |  | Line 080 — Non-capital loss for the year (variable A). |
| `schedule130.line081CfaVariableE` | null \| number \| string |  | Line 081 — CFA paragraph (b) of variable E of ATI total. |
| `schedule130.line082PartnershipCfaVariableE` | null \| number \| string |  | Line 082 — Partnership-CFA paragraph (b) of variable E total. |
| `schedule130.line084CcaResourceDeductions` | null \| number \| string |  | Line 084 — CCA / resource / depletion deductions not in IFE. |
| `schedule130.line085TerminalLossNotInIfe` | null \| number \| string |  | Line 085 — Terminal loss under s.20(16) not in IFE. |
| `schedule130.line086PartnershipCcaShare` | null \| number \| string |  | Line 086 — Partnership CCA / TL share (less 96(2.1) denied). |
| `schedule130.line087Portion_111_1_e_partnership` | null \| number \| string |  | Line 087 — Portion of 111(1)(e) attributable to partnership CCA/TL. |
| `schedule130.line088Deduction_110_1_k` | null \| number \| string |  | Line 088 — Amount deducted under 110(1)(k). |
| `schedule130.line090SpecifiedPreRegimeLossPortion` | null \| number \| string |  | Line 090 — 25% × specified pre-regime loss deducted under 111(1)(a) (requires T2228 election). |
| `schedule130.line091AdditionalCfaFapi` | null \| number \| string |  | Line 091 — Additional CFA FAPI under para (j) variable B formula L × M / N. |
| `schedule130.line093PartnershipExemptIfeLossShare` | null \| number \| string |  | Part 2F line 093, variable B paragraph (k), the corporation's share of a partnership loss from activities funded by a borrowing that produces exempt interest and financing expenses, entered as a positive amount. It is a separate fact from line 092 and is never folded into it. |
| `schedule130.line094ItcRecapture` | null \| number \| string |  | Line 094 — ITC recapture amounts under 127(5)/(6)/127.44(3)/etc. |
| `schedule130.line095_12_1_x_reducer` | null \| number \| string |  | Line 095 — Amount under 12(1)(x)(i)(C) or 12(1)(x)(ii) reducing cost / capital cost. |
| `schedule130.line097RecaptureCca` | null \| number \| string |  | Line 097 — Recapture under s.13(1). |
| `schedule130.line098PartnershipRecaptureShare` | null \| number \| string |  | Line 098 — Partnership share of recapture. |
| `schedule130.line099_59_1_or_59_1_b` | null \| number \| string |  | Line 099 — Amount under 59(1)/(3.2) or 59.1(b). |
| `schedule130.line100ForeignIncomeShelteredByFtc` | null \| number \| string |  | Line 100 — Foreign-source income sheltered by 126(1)/(2) FTC. |
| `schedule130.line101_110_5_addback` | null \| number \| string |  | Line 101 — Amount included under s.110.5. |
| `schedule130.line102_104_13_less_104_19` | null \| number \| string |  | Line 102 — Amount under 104(13) less 104(19) designations. |
| `schedule130.line103TaxableIncomeNotPartI` | null \| number \| string |  | Line 103 — Taxable income not subject to Part I (per Act of Parliament). |
| `schedule130.line105PartnershipExemptIfeIncomeShare` | null \| number \| string |  | Line 105 — Partnership share of exempt-IFE-funded income. |
| `schedule130.line128RifeFromPriorYears` | null \| number \| string |  | Line 128 — RIFE pool from previous tax years. Carryforward chain source: prior-year Part 2O total minus any deduction taken under 111(1)(a.1) in the prior return. |
| `schedule130.line140VariableAIfeAdjusted` | null \| number \| string |  | Line 140 — Variable A IFE adjusted to remove CFA RAIFE. Used when IFE includes any CFA amount under variable B. Otherwise engine populates line 139 (Variable A IFE total) for the denominator. |
| `schedule130.loansRows` | array \| null |  |  |
| `schedule130.loansRows[]` | object |  |  |
| `schedule130.loansRows[].relationship` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.loansRows[].totalNotionalDerivatives` | null \| number \| string |  | Box 018 — Total notional of related derivatives. |
| `schedule130.loansRows[].totalPrincipal` | null \| number \| string |  | Box 017 — Total principal of loans at any point in the year. |
| `schedule130.loansRows[].variableA_para_d` | null \| number \| string |  | Box 019 — Amounts under para (d) of variable A of IFR. |
| `schedule130.loansRows[].variableB_para_a` | null \| number \| string |  | Box 020 — Amounts under para (a) of variable B of IFR (other than a loss or capital loss). |
| `schedule130.lossRestrictionEventFacts` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.nonCapitalLossRows` | array \| null |  |  |
| `schedule130.nonCapitalLossRows[]` | object |  |  |
| `schedule130.nonCapitalLossRows[].amountDeducted_111_1_a` | array \| boolean \| null \| number \| object \| string |  | Box 077 — Amount deducted under 111(1)(a) in the year. |
| `schedule130.nonCapitalLossRows[].amountVariableJ_ii` | array \| boolean \| null \| number \| object \| string |  | Box 075 — Amount under variable J (ii). |
| `schedule130.nonCapitalLossRows[].nonCapitalLossOriginYear` | array \| boolean \| null \| number \| object \| string |  | Box 074 — Non-capital loss for the year (variable J (i)). |
| `schedule130.nonCapitalLossRows[].taxYearOfOrigin` | array \| boolean \| null \| number \| object \| string |  | Box 073 — Tax year of origin of the non-capital loss. |
| `schedule130.paragraphCForeignAffiliateLimitMet` | boolean \| null |  | Paragraph (c)(ii) — the foreign-affiliate / foreign-property limit. |
| `schedule130.paragraphCIfeRecipientsNotTaxIndifferent` | boolean \| null |  | Paragraph (c)(iv) — substantially all IFE paid or payable to persons or partnerships other than non-arm's-length tax-indifferent ones. |
| `schedule130.paragraphCNoNonResidentSpecifiedShareholder` | boolean \| null |  | Paragraph (c)(iii) — no non-resident specified shareholder or specified beneficiary condition breached. |
| `schedule130.paragraphCSubstantiallyAllBusinessInCanada` | boolean \| null |  | Paragraph (c)(i) — all or substantially all businesses and undertakings of the taxpayer and each eligible group entity carried on in Canada. |
| `schedule130.partnershipIfeRows` | array \| null |  |  |
| `schedule130.partnershipIfeRows[]` | object |  |  |
| `schedule130.partnershipIfeRows[].id` | array \| boolean \| null \| number \| object \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule130.partnershipIfeRows[].partnershipAccountNumber` | array \| boolean \| null \| number \| object \| string |  | Box 022 — Partnership account number (blank if non-resident partnership). |
| `schedule130.partnershipIfeRows[].partnershipName` | array \| boolean \| null \| number \| object \| string |  | Box 021 — Name of the partnership. |
| `schedule130.partnershipIfeRows[].portionInRespectOfPartnershipCfa` | null \| number \| string |  |  |
| `schedule130.partnershipIfeRows[].portion_12_1_l_1` | null \| number \| string |  | Box 024 — Portion in column 3 to which para 12(1)(l.1) applies. |
| `schedule130.partnershipIfeRows[].portion_non_deductible_96_2_1` | null \| number \| string |  | Box 025 — Portion non-deductible per s.96(2.1). |
| `schedule130.partnershipIfeRows[].shareOfPartnershipIfeVariableA` | null \| number \| string |  | Box 023 — Share of partnership's variable A IFE (T5013 box 247 if applicable). |
| `schedule130.ratioOfPermissibleExpenses` | array \| boolean \| null \| number \| object \| string |  | Line 108/112/120/134 — ratio of permissible expenses (printed on the form; engine determines from tax-year start date). Storing the practitioner-asserted value lets the engine cross-check. |
| `schedule130.receivedCapacityRows` | array \| null |  |  |
| `schedule130.receivedCapacityRows[]` | object |  |  |
| `schedule130.receivedCapacityRows[].accountNumber` | array \| boolean \| null \| number \| object \| string |  | Box 003 — Business / account number of the transferor entity. |
| `schedule130.receivedCapacityRows[].amountInTransferorCurrency` | null \| number \| string |  | Optional native line 205 for comparisons with the transferor total designations and CUEC. Capacity received stays in the transferee currency; the aggregate cap stays in the transferor currency (ITA 18.2(4)(e), 261). |
| `schedule130.receivedCapacityRows[].amountOfCapacityReceived` | null \| number \| string |  | Box 005 — Amount of capacity received from this entity. |
| `schedule130.receivedCapacityRows[].electionT2226FiledByTransferor` | boolean \| null |  | Supplemental s.18.2(4)(b)/(d) attestations; no printed S130 boxes. |
| `schedule130.receivedCapacityRows[].eligibleGroupEntityAtYearEnd` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].groupEntityName` | array \| boolean \| null \| number \| object \| string |  | Box 002 — Name of the eligible group entity transferring capacity. |
| `schedule130.receivedCapacityRows[].id` | array \| boolean \| null \| number \| object \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule130.receivedCapacityRows[].paragraphCFinancialInstitutionConditionMetOrNotApplicable` | boolean \| null |  | Strict per-election s.18.2(4)(c), (f)–(j) facts. |
| `schedule130.receivedCapacityRows[].paragraphFFinancialHoldingConditionMetOrNotApplicable` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].paragraphGSpecialPurposeLossConditionMetOrNotApplicable` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].paragraphHConditionMet` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].paragraphIAmendmentConditionMetOrNotApplicable` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].paragraphJInformationReturnFiled` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].taxYearEnd` | array \| boolean \| null \| number \| object \| string |  | Box 004 — Transferor's tax year end (yyyy/mm/dd). |
| `schedule130.receivedCapacityRows[].transfereeIsTaxableCanadianCorpOrFictThroughoutYear` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].transferorCumulativeUnusedExcessCapacity` | null \| number \| string |  | Supplemental s.18.2(4)(e) evidence; no printed S130 box. |
| `schedule130.receivedCapacityRows[].transferorIsTaxableCanadianCorpOrFictThroughoutYear` | boolean \| null |  |  |
| `schedule130.receivedCapacityRows[].transferorTotalTransferredCapacity` | null \| number \| string |  |  |
| `schedule130.resourcePoolRows` | array \| null |  |  |
| `schedule130.resourcePoolRows[]` | object |  |  |
| `schedule130.resourcePoolRows[].ifeCurrentYearClaim` | array \| boolean \| null \| number \| object \| string |  | Box 056 — IFE in current-year claim (capped by box 055). |
| `schedule130.resourcePoolRows[].ifeOpeningBalance` | null \| number \| string |  | Box 053 — IFE in opening balance. |
| `schedule130.resourcePoolRows[].ifePoolAdjustments` | null \| number \| string |  | Box 054 — IFE in additions / deductions during the year. |
| `schedule130.resourcePoolRows[].poolType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.rifeSurvivalFacts` | object |  |  |
| `schedule130.rifeSurvivalFacts.schemaVersion` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.rifeSurvivalFacts.vintages` | array \| null |  |  |
| `schedule130.rifeSurvivalFacts.vintages[]` | object |  |  |
| `schedule130.rifeSurvivalFacts.vintages[].businessId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.rifeSurvivalFacts.vintages[].vintageId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule130.taxYearEndDate` | array \| boolean \| null \| number \| object \| string |  | The end of the current taxation year, in ISO YYYY-MM-DD form, read only when the request carries no fiscalEnd. A corporation's taxation year is its fiscal period (ITA 249(1)(a), 249.1(1)), and Schedule 130 needs its end date to split restricted interest and financing expense transferred into line 128 between prior-year vintages and the current year for the ITA 111(1)(a.1) deduction. The Hub supplies the return period, shown as T2 jacket box 061. Leaving both this and fiscalEnd blank blocks a claim for transferred capacity instead of treating it as nil. |
| `schedule130.taxYearStartDate` | array \| boolean \| null \| number \| object \| string |  | Actual tax-year start (yyyy-mm-dd), reconciled to the return. The closed 40% transition applies to starts in \[2023-10-01, 2024-01-01); 30% applies thereafter and to an early-applied year established by the commencement history. |
| `schedule130.taxpayerId` | array \| boolean \| null \| number \| object \| string |  | Stable taxpayer identifier used to bind current-year restricted interest and financing expense vintages to the corporation. The canonical identity supplied by the batch caller wins when available. |
| `schedule130.transferredOutCapacity18_2_4` | null \| number \| string |  | Total cumulative unused excess capacity the corporation designated to other eligible group entities as transferor under ITA s.18.2(4). It has no printed box because the T2226 election carries it, it cannot be negative, it cannot exceed the Part 2I amount C cap in s.18.2(4)(e), and it seeds next year's Part 2I column 2. |
| `schedule130.transitionalGroupCapacityElectionMade` | boolean \| null |  | Confirms the EIFEL transitional group capacity election was filed on T2224. Setting it records the election as made. |
| `schedule15` | null \| object |  |  |
| `schedule15.amountB` | null \| number \| string |  | Printed amount B: deferred-plan amounts deducted in the financial statements. |
| `schedule15.corpDeductedPlanContributions` | boolean \| null |  | Active Filemark assertion that the Schedule 15 completion condition applies. |
| `schedule15.planRows` | array \| null |  | Employee profit-sharing plans reported on Schedule 15. |
| `schedule15.planRows[]` | object |  |  |
| `schedule15.planRows[].contributionAmount` | null \| number \| string |  | Column 200. Dollar amount of contribution. |
| `schedule15.planRows[].deductedInPreviousYear` | boolean \| null |  | RPP/DPSP/PRPP: any portion was deducted in a preceding taxation year. |
| `schedule15.planRows[].deductibleInPreviousYear` | boolean \| null |  | EPSP/RSUBP: any portion was deductible previously, whether claimed or not. |
| `schedule15.planRows[].dpspPaymentDate` | null \| string |  | DPSP rows (code 3) — ITA 147(8) via 20(1)(y): "an amount paid by the employer in the year or within 120 days after the end of the year to a trustee under a deferred profit sharing plan". |
| `schedule15.planRows[].epspPaymentDate` | null \| string |  | EPSP rows (code 4) — ITA 144(5): "An amount paid by an employer to a trustee under an employees profit sharing plan during a taxation year or within 120 days thereafter may be deducted". |
| `schedule15.planRows[].epspTrustAddress` | null \| string |  | Column 500. Used for the EPSP trust address. |
| `schedule15.planRows[].epspTrustIsResident` | boolean \| null |  | Filemark practitioner fact (NOT a CRA column) — whether the trust governing this EPSP is resident in Canada. The form requires box 600 only when the trust is NOT resident: false = box 600 required (blocking when blank); null = unanswered (advisory); true = blank box 600 is correct. EPSP rows (code 4) only. |
| `schedule15.planRows[].epspTrustName` | null \| string |  | Column 400. Used for the EPSP trust name. |
| `schedule15.planRows[].id` | null \| string |  | Stable row identity for retaining the current plan row through edits and row reordering. |
| `schedule15.planRows[].planType` | null \| number \| string |  | Column 100. 1=RPP, 2=RSUBP, 3=DPSP, 4=EPSP, 5=PRPP. |
| `schedule15.planRows[].prppPaymentDate` | null \| string |  | PRPP rows (code 5) — ITA 147.5(10) via 20(1)(q): "a contribution made by the taxpayer in the year or within 120 days after the end of the year to a PRPP". |
| `schedule15.planRows[].registrationNumber` | null \| string |  | Column 300. Used for codes 1/2/3/5; not used for code 4 (EPSP). |
| `schedule15.planRows[].rppPaymentDate` | null \| string |  | RPP rows (code 1) — ITA 147.2(1) via 20(1)(q): "a contribution made by the employer after 1990 and either in the taxation year or within 120 days after the end of the taxation year to a registered pension plan". |
| `schedule15.planRows[].rsubpPaymentDate` | null \| string |  | RSUBP rows (code 2) — ITA 145(5): "An amount paid by an employer to a trustee under a registered supplementary unemployment benefit plan during a taxation year or within 30 days thereafter may be deducted". |
| `schedule15.planRows[].t4psFiledBy` | null \| number \| string |  | Column 600. For a non-resident EPSP trust, last-calendar-year T4PS filer: 1=Trustee, 2=Employer. |
| `schedule150` | null \| object |  | Schedule 150, net income (loss) for income tax purposes of an insurance corporation. Its line 110 is Schedule 1 amount A for an insurer in place of the GIFI net income. |
| `schedule150.insuranceFundsOnly` | boolean \| null |  | For a fraternal benefit society: confirms Schedule 150 reports its insurance funds only. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.insurer` | null \| object |  | The insurer facts that decide whether Schedules 150 and 151 apply: whether the corporation is an insurer, a fraternal benefit society, where it carries on insurance business and whether that business is life insurance. |
| `schedule150.insurer.carriesOnInsuranceBusinessInCanada` | boolean \| null |  | Whether the corporation carries on an insurance business in Canada in the year. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.insurer.carriesOnInsuranceBusinessOutsideCanada` | boolean \| null |  | Whether the corporation also carries on an insurance business outside Canada in the year. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.insurer.carriesOnLifeInsuranceBusiness` | boolean \| null |  | Whether the corporation carries on a life insurance business in the year. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.insurer.isFraternalBenefitSociety` | boolean \| null |  | Whether the corporation is a fraternal benefit society or order; Schedule 150 then covers its insurance funds only. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.insurer.isInsurer` | boolean \| null |  | Whether the corporation is an insurer (ITA s.248(1)). Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.insurer.regulatoryStatementSource` | null \| string |  | The regulatory annual statement the Schedule 150 amounts are taken from, as filed with the insurer's regulator. |
| `schedule150.lifeContractualServiceMargin` | null \| number \| string |  | Reg 1404(3) C: the contractual service margin of life insurance contracts, before the 90% factor; the engine prints 90% of it on line 543. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.lifeReinsuranceContractualServiceMargin` | null \| number \| string |  | Reg 1404(3) E: the contractual service margin of life reinsurance contracts held, before the 90% factor; the engine prints 90% of it on line 545. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.lifeReserveClaimed` | null \| number \| string |  | The life insurance policy reserve deduction claimed for the year, at most the positive reserve amount Part 8 computes (Reg 1404). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line109` | null \| number \| string |  | Schedule 150 line 109: Extraordinary items. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line111` | null \| number \| string |  | Schedule 150 line 111: Column 1. Total. Cash and cash equivalents. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line112` | null \| number \| string |  | Schedule 150 line 112: Column 1. Total. Accrued investment income. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line113` | null \| number \| string |  | Schedule 150 line 113: Column 1. Total. Current tax assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line114` | null \| number \| string |  | Schedule 150 line 114: Column 1. Total. Assets held for sale. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line115` | null \| number \| string |  | Schedule 150 line 115: Column 1. Total. Asset for insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line116` | null \| number \| string |  | Schedule 150 line 116: Column 1. Total. Investments. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line117` | null \| number \| string |  | Schedule 150 line 117: Column 1. Total. Equity accounted investees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line118` | null \| number \| string |  | Schedule 150 line 118: Column 1. Total. Financial instrument derivative assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line119` | null \| number \| string |  | Schedule 150 line 119: Column 1. Total. Insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line120` | null \| number \| string |  | Schedule 150 line 120: Column 1. Total. Reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line121` | null \| number \| string |  | Schedule 150 line 121: Column 1. Total. Investment properties. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line122` | null \| number \| string |  | Schedule 150 line 122: Column 1. Total. Property and equipment. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line123` | null \| number \| string |  | Schedule 150 line 123: Column 1. Total. Intangible assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line124` | null \| number \| string |  | Schedule 150 line 124: Column 1. Total. Goodwill. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line125` | null \| number \| string |  | Schedule 150 line 125: Column 1. Total. Defined benefit pension plan. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line126` | null \| number \| string |  | Schedule 150 line 126: Column 1. Total. Segregated funds net assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line127` | null \| number \| string |  | Schedule 150 line 127: Column 1. Total. Deferred tax assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line129` | null \| number \| string |  | Schedule 150 line 129: Column 1. Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line131` | null \| number \| string |  | Schedule 150 line 131: Column 1. Total. Provisions, accruals and other liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line132` | null \| number \| string |  | Schedule 150 line 132: Column 1. Total. Liabilities held for sale. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line133` | null \| number \| string |  | Schedule 150 line 133: Column 1. Total. Current tax liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line134` | null \| number \| string |  | Schedule 150 line 134: Column 1. Total. Encumbrances on real estate and mortgage loans. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line135` | null \| number \| string |  | Schedule 150 line 135: Column 1. Total. Financial instrument derivative liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line137` | null \| number \| string |  | Schedule 150 line 137: Column 1. Total. Insurance contract liabilities – excluding segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line138` | null \| number \| string |  | Schedule 150 line 138: Column 1. Total. Insurance contract liabilities – segregated fund guarantees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line139` | null \| number \| string |  | Schedule 150 line 139: Column 1. Total. Insurance contract liabilities – segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line141` | null \| number \| string |  | Schedule 150 line 141: Column 1. Total. Reinsurance contract held liabilities – excluding segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line142` | null \| number \| string |  | Schedule 150 line 142: Column 1. Total. Reinsurance contract held liabilities – segregated fund guarantees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line143` | null \| number \| string |  | Schedule 150 line 143: Column 1. Total. Reinsurance contract held liabilities – segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line145` | null \| number \| string |  | Schedule 150 line 145: Column 1. Total. Trust and banking deposits. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line146` | null \| number \| string |  | Schedule 150 line 146: Column 1. Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line147` | null \| number \| string |  | Schedule 150 line 147: Column 1. Total. Defined benefit pension plan. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line148` | null \| number \| string |  | Schedule 150 line 148: Column 1. Total. Employment benefits, not including amounts on line 147. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line149` | null \| number \| string |  | Schedule 150 line 149: Column 1. Total. Subordinated debt. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line150` | null \| number \| string |  | Schedule 150 line 150: Column 1. Total. Preferred shares – debt. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line151` | null \| number \| string |  | Schedule 150 line 151: Column 1. Total. Deferred tax liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line153` | null \| number \| string |  | Schedule 150 line 153: Column 1. Total. Investment contract liabilities – excluding segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line154` | null \| number \| string |  | Schedule 150 line 154: Column 1. Total. Investment contract liabilities – segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line156` | null \| number \| string |  | Schedule 150 line 156: Column 1. Total. Residual interest, non-stock. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line157` | null \| number \| string |  | Schedule 150 line 157: Column 1. Total. Participating account. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line158` | null \| number \| string |  | Schedule 150 line 158: Column 1. Total. Non-participating account, non-stock. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line161` | null \| number \| string |  | Schedule 150 line 161: Column 1. Total. Residual interest, non-stock. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line162` | null \| number \| string |  | Schedule 150 line 162: Column 1. Total. Participating account. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line163` | null \| number \| string |  | Schedule 150 line 163: Column 1. Total. Participating account – accumulated OCI, loss. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line164` | null \| number \| string |  | Schedule 150 line 164: Column 1. Total. Non-participating account. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line165` | null \| number \| string |  | Schedule 150 line 165: Column 1. Total. Non-participating account – accumulated OCI, loss. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line167` | null \| number \| string |  | Schedule 150 line 167: Column 1. Total. Common shares. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line168` | null \| number \| string |  | Schedule 150 line 168: Column 1. Total. Preferred shares. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line169` | null \| number \| string |  | Schedule 150 line 169: Column 1. Total. Contributed surplus. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line170` | null \| number \| string |  | Schedule 150 line 170: Column 1. Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line171` | null \| number \| string |  | Schedule 150 line 171: Column 1. Total. Retained earnings. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line172` | null \| number \| string |  | Schedule 150 line 172: Column 1. Total. Nuclear and other reserves. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line173` | null \| number \| string |  | Schedule 150 line 173: Column 1. Total. Accumulated other comprehensive income, loss. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line175` | null \| number \| string |  | Schedule 150 line 175: Column 1. Total. Head office account, HOA. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line176` | null \| number \| string |  | Schedule 150 line 176: Column 1. Total. Reserves. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line177` | null \| number \| string |  | Schedule 150 line 177: Column 1. Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line178` | null \| number \| string |  | Schedule 150 line 178: Column 1. Total. Accumulated other comprehensive income, loss, – foreign insurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line181` | null \| number \| string |  | Schedule 150 line 181: Column 2. In Canada. Cash and cash equivalents. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line182` | null \| number \| string |  | Schedule 150 line 182: Column 2. In Canada. Accrued investment income. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line183` | null \| number \| string |  | Schedule 150 line 183: Column 2. In Canada. Current tax assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line184` | null \| number \| string |  | Schedule 150 line 184: Column 2. In Canada. Assets held for sale. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line185` | null \| number \| string |  | Schedule 150 line 185: Column 2. In Canada. Asset for insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line186` | null \| number \| string |  | Schedule 150 line 186: Column 2. In Canada. Investments. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line187` | null \| number \| string |  | Schedule 150 line 187: Column 2. In Canada. Equity accounted investees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line188` | null \| number \| string |  | Schedule 150 line 188: Column 2. In Canada. Financial instrument derivative assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line189` | null \| number \| string |  | Schedule 150 line 189: Column 2. In Canada. Insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line190` | null \| number \| string |  | Schedule 150 line 190: Column 2. In Canada. Reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line191` | null \| number \| string |  | Schedule 150 line 191: Column 2. In Canada. Investment properties. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line192` | null \| number \| string |  | Schedule 150 line 192: Column 2. In Canada. Property and equipment. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line193` | null \| number \| string |  | Schedule 150 line 193: Column 2. In Canada. Intangible assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line194` | null \| number \| string |  | Schedule 150 line 194: Column 2. In Canada. Goodwill. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line195` | null \| number \| string |  | Schedule 150 line 195: Column 2. In Canada. Defined benefit pension plan. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line196` | null \| number \| string |  | Schedule 150 line 196: Column 2. In Canada. Segregated funds net assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line197` | null \| number \| string |  | Schedule 150 line 197: Column 2. In Canada. Deferred tax assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line199` | null \| number \| string |  | Schedule 150 line 199: Column 2. In Canada. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line201` | null \| number \| string |  | Schedule 150 line 201: Column 2. In Canada. Provisions, accruals and other liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line202` | null \| number \| string |  | Schedule 150 line 202: Column 2. In Canada. Liabilities held for sale. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line203` | null \| number \| string |  | Schedule 150 line 203: Column 2. In Canada. Current tax liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line204` | null \| number \| string |  | Schedule 150 line 204: Column 2. In Canada. Encumbrances on real estate and mortgage loans. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line205` | null \| number \| string |  | Schedule 150 line 205: Column 2. In Canada. Financial instrument derivative liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line207` | null \| number \| string |  | Schedule 150 line 207: Column 2. In Canada. Insurance contract liabilities – excluding segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line208` | null \| number \| string |  | Schedule 150 line 208: Column 2. In Canada. Insurance contract liabilities – segregated fund guarantees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line209` | null \| number \| string |  | Schedule 150 line 209: Column 2. In Canada. Insurance contract liabilities – segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line211` | null \| number \| string |  | Schedule 150 line 211: Column 2. In Canada. Reinsurance contract held liabilities – excluding segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line212` | null \| number \| string |  | Schedule 150 line 212: Column 2. In Canada. Reinsurance contract held liabilities – segregated fund guarantees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line213` | null \| number \| string |  | Schedule 150 line 213: Column 2. In Canada. Reinsurance contract held liabilities – segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line215` | null \| number \| string |  | Schedule 150 line 215: Column 2. In Canada. Trust and banking deposits. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line216` | null \| number \| string |  | Schedule 150 line 216: Column 2. In Canada. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line217` | null \| number \| string |  | Schedule 150 line 217: Column 2. In Canada. Defined benefit pension plan. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line218` | null \| number \| string |  | Schedule 150 line 218: Column 2. In Canada. Employment benefits, not including amounts on line 217. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line219` | null \| number \| string |  | Schedule 150 line 219: Column 2. In Canada. Subordinated debt. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line220` | null \| number \| string |  | Schedule 150 line 220: Column 2. In Canada. Preferred shares – debt. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line221` | null \| number \| string |  | Schedule 150 line 221: Column 2. In Canada. Deferred tax liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line223` | null \| number \| string |  | Schedule 150 line 223: Column 2. In Canada. Investment contract liabilities – excluding segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line224` | null \| number \| string |  | Schedule 150 line 224: Column 2. In Canada. Investment contract liabilities – segregated funds net liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line226` | null \| number \| string |  | Schedule 150 line 226: Column 2. In Canada. Residual interest, non-stock. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line227` | null \| number \| string |  | Schedule 150 line 227: Column 2. In Canada. Participating account. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line228` | null \| number \| string |  | Schedule 150 line 228: Column 2. In Canada. Non-participating account, non-stock. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line231` | null \| number \| string |  | Schedule 150 line 231: Column 2. In Canada. Residual interest, non-stock. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line232` | null \| number \| string |  | Schedule 150 line 232: Column 2. In Canada. Participating account. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line233` | null \| number \| string |  | Schedule 150 line 233: Column 2. In Canada. Participating account – accumulated OCI, loss. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line234` | null \| number \| string |  | Schedule 150 line 234: Column 2. In Canada. Non-participating account. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line235` | null \| number \| string |  | Schedule 150 line 235: Column 2. In Canada. Non-participating account – accumulated OCI, loss. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line237` | null \| number \| string |  | Schedule 150 line 237: Column 2. In Canada. Common shares. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line238` | null \| number \| string |  | Schedule 150 line 238: Column 2. In Canada. Preferred shares. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line239` | null \| number \| string |  | Schedule 150 line 239: Column 2. In Canada. Contributed surplus. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line240` | null \| number \| string |  | Schedule 150 line 240: Column 2. In Canada. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line241` | null \| number \| string |  | Schedule 150 line 241: Column 2. In Canada. Retained earnings. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line242` | null \| number \| string |  | Schedule 150 line 242: Column 2. In Canada. Nuclear and other reserves. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line243` | null \| number \| string |  | Schedule 150 line 243: Column 2. In Canada. Accumulated other comprehensive income, loss. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line245` | null \| number \| string |  | Schedule 150 line 245: Column 2. In Canada. Head office account, HOA. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line246` | null \| number \| string |  | Schedule 150 line 246: Column 2. In Canada. Reserves. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line247` | null \| number \| string |  | Schedule 150 line 247: Column 2. In Canada. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line248` | null \| number \| string |  | Schedule 150 line 248: Column 2. In Canada. Accumulated other comprehensive income, loss, – foreign insurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line252` | null \| number \| string |  | Schedule 150 line 252: Total. Loans. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line253` | null \| number \| string |  | Schedule 150 line 253: Total. Bonds and debentures. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line254` | null \| number \| string |  | Schedule 150 line 254: Total. Reclassification of, gains, losses to net income. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line255` | null \| number \| string |  | Schedule 150 line 255: Total. Change in unrealized gains and losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line256` | null \| number \| string |  | Schedule 150 line 256: Total. Reclassification of, gains, losses to net income. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line257` | null \| number \| string |  | Schedule 150 line 257: Total. Change in unrealized gains and losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line258` | null \| number \| string |  | Schedule 150 line 258: Total. Reclassification of, gains, losses to net income. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line259` | null \| number \| string |  | Schedule 150 line 259: Total. Impact of hedging. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line260` | null \| number \| string |  | Schedule 150 line 260: Total. Share of other comprehensive income, loss, of equity accounted investees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line261` | null \| number \| string |  | Schedule 150 line 261: Total. Insurance finance income, expenses, from insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line262` | null \| number \| string |  | Schedule 150 line 262: Total. Insurance finance income, expenses, from reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line263` | null \| number \| string |  | Schedule 150 line 263: share of other comprehensive income, loss, of equity accounted investees, in the other comprehensive income for the year. Printed on the E (23) face only; on a later face report it on line 264. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line264` | null \| number \| string |  | Schedule 150 line 264: Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line265` | null \| number \| string |  | Schedule 150 line 265: Total. Equities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line266` | null \| number \| string |  | Schedule 150 line 266: Total. Revaluation surplus. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line267` | null \| number \| string |  | Schedule 150 line 267: Total. Remeasurements of defined benefit pension plans. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line268` | null \| number \| string |  | Schedule 150 line 268: Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line276` | null \| number \| string |  | Schedule 150 line 276: Total. Fair value through other comprehensive income, FVOCI. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line277` | null \| number \| string |  | Schedule 150 line 277: Total. Derivatives designated as cash flow hedges. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line278` | null \| number \| string |  | Schedule 150 line 278: Total. Foreign currency translation, net of hedging activities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line279` | null \| number \| string |  | Schedule 150 line 279: Total. Share of other comprehensive income, loss, of equity accounted investees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line280` | null \| number \| string |  | Schedule 150 line 280: Total. Insurance finance income, expenses, from insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line281` | null \| number \| string |  | Schedule 150 line 281: Total. Insurance finance income, expenses, from reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line283` | null \| number \| string |  | Schedule 150 line 283: Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line285` | null \| number \| string |  | Schedule 150 line 285: Total. Fair value through other comprehensive income, FVOCI. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line286` | null \| number \| string |  | Schedule 150 line 286: Total. Revaluation surplus. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line287` | null \| number \| string |  | Schedule 150 line 287: Total. Remeasurements of defined benefit pension plans. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line288` | null \| number \| string |  | Schedule 150 line 288: share of other comprehensive income, loss, of equity accounted investees, in accumulated other comprehensive income. Printed on the E (23) face only; on a later face report it on line 289. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line289` | null \| number \| string |  | Schedule 150 line 289: Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line291` | null \| number \| string |  | Schedule 150 line 291: In Canada. Revenue from PAA contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line292` | null \| number \| string |  | Schedule 150 line 292: In Canada. Revenue from GMM contracts, excluding VFA contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line293` | null \| number \| string |  | Schedule 150 line 293: In Canada. Revenue from VFA contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line296` | null \| number \| string |  | Schedule 150 line 296: In Canada. Insurance service expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line297` | null \| number \| string |  | Schedule 150 line 297: In Canada. Net expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line301` | null \| number \| string |  | Schedule 150 line 301: In Canada. Interest revenue on financial assets not measured at FVTPL. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line302` | null \| number \| string |  | Schedule 150 line 302: In Canada. Net investment income excluding segregated funds. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line303` | null \| number \| string |  | Schedule 150 line 303: In Canada. Net investment income – segregated funds. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line304` | null \| number \| string |  | Schedule 150 line 304: In Canada. Provision for credit losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line306` | null \| number \| string |  | Schedule 150 line 306: In Canada. Net finance income, expenses, from insurance contracts excluding segregated funds. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line307` | null \| number \| string |  | Schedule 150 line 307: In Canada. Net finance income, expenses, from segregated funds. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line308` | null \| number \| string |  | Schedule 150 line 308: In Canada. Net finance income, expenses, from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line309` | null \| number \| string |  | Schedule 150 line 309: In Canada. Movement in investment contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line311` | null \| number \| string |  | Schedule 150 line 311: In Canada. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line312` | null \| number \| string |  | Schedule 150 line 312: In Canada. Share of net income, loss, of equity accounted investees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line317` | null \| number \| string |  | Schedule 150 line 317: In Canada. Current taxes. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line318` | null \| number \| string |  | Schedule 150 line 318: In Canada. Deferred taxes. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line321` | null \| number \| string |  | Schedule 150 line 321: In Canada. Discontinued operations. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line326` | null \| number \| string |  | Schedule 150 line 326: Column 1. Net Income from Regulatory Statement. Interest earned and accrued. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line327` | null \| number \| string |  | Schedule 150 line 327: Column 1. Net Income from Regulatory Statement. Fair value unrealized gains, losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line328` | null \| number \| string |  | Schedule 150 line 328: Column 1. Net Income from Regulatory Statement. Realized gains, losses, from sales. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line330` | null \| number \| string |  | Schedule 150 line 330: Column 1. Net Income from Regulatory Statement. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line331` | null \| number \| string |  | Schedule 150 line 331: Column 1. Net Income from Regulatory Statement. Taxable dividends deductible – subsection 138(6). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line332` | null \| number \| string |  | Schedule 150 line 332: Column 1. Net Income from Regulatory Statement. Taxable dividends deductible from foreign affiliates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line333` | null \| number \| string |  | Schedule 150 line 333: Column 1. Net Income from Regulatory Statement. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line334` | null \| number \| string |  | Schedule 150 line 334: Column 1. Net Income from Regulatory Statement. Fair value unrealized gains, losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line335` | null \| number \| string |  | Schedule 150 line 335: Column 1. Net Income from Regulatory Statement. Realized gains, losses, from sales. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line340` | null \| number \| string |  | Schedule 150 line 340: Column 1. Net Income from Regulatory Statement. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line341` | null \| number \| string |  | Schedule 150 line 341: Column 1. Total. Interest earned and accrued. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line342` | null \| number \| string |  | Schedule 150 line 342: Column 1. Net Income from Regulatory Statement. Fair value unrealized gains, losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line343` | null \| number \| string |  | Schedule 150 line 343: Column 1. Net Income from Regulatory Statement. Income gains and, losses, from sales. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line345` | null \| number \| string |  | Schedule 150 line 345: Column 1. Net Income from Regulatory Statement. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line346` | null \| number \| string |  | Schedule 150 line 346: Column 1. Net Income from Regulatory Statement. Gross income from real estate, excluding imputed rent included on line 347. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line347` | null \| number \| string |  | Schedule 150 line 347: Column 1. Net Income from Regulatory Statement. Imputed rent for company owned premises. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line348` | null \| number \| string |  | Schedule 150 line 348: Column 1. Net Income from Regulatory Statement. Income gains and, losses, from sales. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line350` | null \| number \| string |  | Schedule 150 line 350: Column 1. Net Income from Regulatory Statement. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line351` | null \| number \| string |  | Schedule 150 line 351: Column 1. Net Income from Regulatory Statement. Interest received on policy loans – paragraph 138(4)(c). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line352` | null \| number \| string |  | Schedule 150 line 352: Column 1. Net Income from Regulatory Statement. Interest on short-term deposits and certificates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line353` | null \| number \| string |  | Schedule 150 line 353: Column 1. Net Income from Regulatory Statement. Interest on overdue premiums. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line354` | null \| number \| string |  | Schedule 150 line 354: Column 1. Net Income from Regulatory Statement. Income from derivative activities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line355` | null \| number \| string |  | Schedule 150 line 355: Column 1. Net Income from Regulatory Statement. Income from partnerships and trusts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line356` | null \| number \| string |  | Schedule 150 line 356: Column 1. Net Income from Regulatory Statement. Income from joint ventures. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line357` | null \| number \| string |  | Schedule 150 line 357: Column 1. Net Income from Regulatory Statement. Resource property income. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line358` | null \| number \| string |  | Schedule 150 line 358: Column 1. Net Income from Regulatory Statement. Interest on bank deposits. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line359` | null \| number \| string |  | Schedule 150 line 359: Column 1. Net Income from Regulatory Statement. Income earned on leased equipment. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line360` | null \| number \| string |  | Schedule 150 line 360: Column 1. Net Income from Regulatory Statement. Income earned on other assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line361` | null \| number \| string |  | Schedule 150 line 361: Column 1. Net Income from Regulatory Statement. Non-amortizable capital gains and, losses, from the sale of investments. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line362` | null \| number \| string |  | Schedule 150 line 362: Column 1. Net Income from Regulatory Statement. Income gains and, losses, from sales. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line364` | null \| number \| string |  | Schedule 150 line 364: Column 1. Net Income from Regulatory Statement. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line366` | null \| number \| string |  | Schedule 150 line 366: Column 1. Net Income from Regulatory Statement. General investment expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line367` | null \| number \| string |  | Schedule 150 line 367: Column 1. Net Income from Regulatory Statement. Real estate expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line368` | null \| number \| string |  | Schedule 150 line 368: Column 1. Net Income from Regulatory Statement. Investment taxes including Part XII.3 tax deductible under paragraph 138(3)(c). Exclude amounts in general expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line369` | null \| number \| string |  | Schedule 150 line 369: Column 1. Net Income from Regulatory Statement. Interest on subordinated debt – subparagraphs 138(5)(b)(i) and (ii). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line370` | null \| number \| string |  | Schedule 150 line 370: Column 1. Net Income from Regulatory Statement. Other interest expense – subparagraphs 138(5)(b)(i) and (ii). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line371` | null \| number \| string |  | Schedule 150 line 371: Column 1. Net Income from Regulatory Statement. Depreciation/CCA and terminal loss, net of recapture. Exclude amounts in general expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line374` | null \| number \| string |  | Schedule 150 line 374: Column 1. Net Income from Regulatory Statement. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line380` | null \| number \| string |  | Schedule 150 line 380: Column 1. Net Income from Regulatory Statement. Provision for credit losses – prior year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line385` | null \| number \| string |  | Schedule 150 line 385: Column 1. Net Income from Regulatory Statement. Provision for credit losses – current year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line391` | null \| number \| string |  | Schedule 150 line 391: Column 2. Income, loss, for tax purposes. Interest earned and accrued. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line392` | null \| number \| string |  | Schedule 150 line 392: Column 2. Income, loss, for tax purposes. Amounts to include (deduct) from specified debt obligations – subsection 142.3(1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line393` | null \| number \| string |  | Schedule 150 line 393: Column 2. Income, loss, for tax purposes. Dispositions of specified debt obligations – subsection 142.4(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line394` | null \| number \| string |  | Schedule 150 line 394: Column 2. Income, loss, for tax purposes. Dispositions of specified debt obligations – subsection 142.4(5). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line395` | null \| number \| string |  | Schedule 150 line 395: Column 2. Income, loss, for tax purposes. Mark-to-Market, MTM, properties: Profits, losses, from deemed dispositions of MTM properties – subsection 142.5(2). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line396` | null \| number \| string |  | Schedule 150 line 396: Column 2. Income, loss, for tax purposes. Mark-to-Market, MTM, properties: Profits, losses, from actual dispositions of MTM properties – subsection 142.5(1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line397` | null \| number \| string |  | Schedule 150 line 397: Column 2. Income, loss, for tax purposes. Net taxable capital gains. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line398` | null \| number \| string |  | Schedule 150 line 398: Column 2. Income, loss, for tax purposes. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line401` | null \| number \| string |  | Schedule 150 line 401: Column 2. Income, loss, for tax purposes. Taxable dividends deductible–subsection 138(6). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line402` | null \| number \| string |  | Schedule 150 line 402: Column 2. Income, loss, for tax purposes. Taxable dividends deductible from foreign affiliates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line403` | null \| number \| string |  | Schedule 150 line 403: Column 2. Income, loss, for tax purposes. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line404` | null \| number \| string |  | Schedule 150 line 404: Column 2. Income, loss, for tax purposes. Mark-to-Market, MTM, properties: profits, losses, from deemed dispositions of MTM properties – subsection 142.5(2). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line405` | null \| number \| string |  | Schedule 150 line 405: Column 2. Income, loss, for tax purposes. Mark-to-Market, MTM, properties: profits, losses, from actual dispositions of MTM properties – subsection 142.5(1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line406` | null \| number \| string |  | Schedule 150 line 406: Column 2. Income, loss, for tax purposes. Net taxable capital gains. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line407` | null \| number \| string |  | Schedule 150 line 407: Column 2. Income, loss, for tax purposes. Preferred and common shares: foreign accrual property income – section 91. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line408` | null \| number \| string |  | Schedule 150 line 408: Column 2. Income, loss, for tax purposes. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line411` | null \| number \| string |  | Schedule 150 line 411: Column 2. Income, loss, for tax purposes. Interest earned and accrued. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line412` | null \| number \| string |  | Schedule 150 line 412: Column 2. Income, loss, for tax purposes. Income from specified debt obligations – subsection 142.3(1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line413` | null \| number \| string |  | Schedule 150 line 413: Column 2. Income, loss, for tax purposes. Dispositions of specified debt obligations – subsection 142.4(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line414` | null \| number \| string |  | Schedule 150 line 414: Column 2. Income, loss, for tax purposes. Dispositions of specified debt obligations – subsection 142.4(5). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line415` | null \| number \| string |  | Schedule 150 line 415: Column 2. Income, loss, for tax purposes. Net taxable capital gains. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line416` | null \| number \| string |  | Schedule 150 line 416: Column 2. Income, loss, for tax purposes. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line420` | null \| number \| string |  | Schedule 150 line 420: Column 2. Income, loss, for tax purposes. Gross income from real estate, excluding imputed rent included on line 347. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line421` | null \| number \| string |  | Schedule 150 line 421: Column 2. Income, loss, for tax purposes. Imputed interest benefit on real property – subsection 138(4.4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line422` | null \| number \| string |  | Schedule 150 line 422: Column 2. Income, loss, for tax purposes. Income gains and, losses, from disposals. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line423` | null \| number \| string |  | Schedule 150 line 423: Column 2. Income, loss, for tax purposes. Net taxable capital gains. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line424` | null \| number \| string |  | Schedule 150 line 424: Column 2. Income, loss, for tax purposes. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line426` | null \| number \| string |  | Schedule 150 line 426: Column 2. Income, loss, for tax purposes. Interest received on policy loans – paragraph 138(4)(c). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line427` | null \| number \| string |  | Schedule 150 line 427: Column 2. Income, loss, for tax purposes. Interest on short-term deposits and certificates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line428` | null \| number \| string |  | Schedule 150 line 428: Column 2. Income, loss, for tax purposes. Interest on overdue premiums. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line429` | null \| number \| string |  | Schedule 150 line 429: Column 2. Income, loss, for tax purposes. Income from derivative activities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line430` | null \| number \| string |  | Schedule 150 line 430: Column 2. Income, loss, for tax purposes. Income from partnerships and trusts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line431` | null \| number \| string |  | Schedule 150 line 431: Column 2. Income, loss, for tax purposes. Income from joint ventures. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line432` | null \| number \| string |  | Schedule 150 line 432: Column 2. Income, loss, for tax purposes. Resource property income. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line433` | null \| number \| string |  | Schedule 150 line 433: Column 2. Income, loss, for tax purposes. Interest on bank deposits. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line434` | null \| number \| string |  | Schedule 150 line 434: Column 2. Income, loss, for tax purposes. Income earned on leased equipment. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line435` | null \| number \| string |  | Schedule 150 line 435: Column 2. Income, loss, for tax purposes. Income earned on other assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line436` | null \| number \| string |  | Schedule 150 line 436: Column 2. Income, loss, for tax purposes. Income gains and, losses, from disposals. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line437` | null \| number \| string |  | Schedule 150 line 437: Column 2. Income, loss, for tax purposes. Net taxable capital gains. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line438` | null \| number \| string |  | Schedule 150 line 438: Column 2. Income, loss, for tax purposes. Income from non-investment property deemed to be designated by regulation 2401(6). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line440` | null \| number \| string |  | Schedule 150 line 440: Column 2. Income, loss, for tax purposes. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line446` | null \| number \| string |  | Schedule 150 line 446: Column 2. Income, loss, for tax purposes. General investment expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line447` | null \| number \| string |  | Schedule 150 line 447: Column 2. Income, loss, for tax purposes. Real estate expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line448` | null \| number \| string |  | Schedule 150 line 448: Column 2. Income, loss, for tax purposes. Investment taxes including Part XII.3 tax deductible under paragraph 138(3)(c). Exclude amounts in general expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line449` | null \| number \| string |  | Schedule 150 line 449: Column 2. Income, loss, for tax purposes. Interest on subordinated debt – subparagraphs 138(5)(b)(i) and (ii). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line450` | null \| number \| string |  | Schedule 150 line 450: Column 2. Income, loss, for tax purposes. Other interest expense – subparagraphs 138(5)(b)(i) and (ii). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line451` | null \| number \| string |  | Schedule 150 line 451: Column 2. Income, loss, for tax purposes. Depreciation/CCA and terminal loss, net of recapture. Exclude amounts in general expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line452` | null \| number \| string |  | Schedule 150 line 452: Column 2. Income, loss, for tax purposes. Resource property deductions. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line454` | null \| number \| string |  | Schedule 150 line 454: Column 2. Income, loss, for tax purposes. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line456` | null \| number \| string |  | Schedule 150 line 456: Column 2. Income, loss, for tax purposes. Reserve for doubtful or impaired debts – prior year – paragraph 12(1)(d). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line457` | null \| number \| string |  | Schedule 150 line 457: Column 2. Income, loss, for tax purposes. Reserve for guarantees – prior year – paragraph 12(1)(d.1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line458` | null \| number \| string |  | Schedule 150 line 458: Column 2. Income, loss, for tax purposes. Bad debts recovered – paragraph 12(1)(i). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line459` | null \| number \| string |  | Schedule 150 line 459: Column 2. Income, loss, for tax purposes. Valuation of real estate inventory – increase – subsection 10(1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line461` | null \| number \| string |  | Schedule 150 line 461: Column 2. Income, loss, for tax purposes. Reserve for doubtful or impaired debts – current year – paragraph 20(1)(l). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line462` | null \| number \| string |  | Schedule 150 line 462: Column 2. Income, loss, for tax purposes. Reserve for guarantees – current year – paragraph 20(1)(l.1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line463` | null \| number \| string |  | Schedule 150 line 463: Column 2. Income, loss, for tax purposes. Bad debts – paragraph 20(1)(p). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line464` | null \| number \| string |  | Schedule 150 line 464: Column 2. Income, loss, for tax purposes. Valuation of real estate inventory – decrease – subsection 10(1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line471` | null \| number \| string |  | Schedule 150 line 471: Total. Employee expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line472` | null \| number \| string |  | Schedule 150 line 472: Total. Commissions. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line473` | null \| number \| string |  | Schedule 150 line 473: Total. Claims adjustment expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line474` | null \| number \| string |  | Schedule 150 line 474: Total. Depreciation and amortization. Exclude amounts at line 371. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line475` | null \| number \| string |  | Schedule 150 line 475: Total. Audit, legal and other professional fees. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line476` | null \| number \| string |  | Schedule 150 line 476: Total. Other expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line477` | null \| number \| string |  | Schedule 150 line 477: Total. Investment income tax, Part XII.3, excluding amount included in investment expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line478` | null \| number \| string |  | Schedule 150 line 478: Total. Other miscellaneous taxes. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line479` | null \| number \| string |  | Schedule 150 line 479: Total. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line501` | null \| number \| string |  | Schedule 150 line 501: Column 1. Regulatory statement. Canadian liabilities. A equals Liability for remaining coverage. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line502` | null \| number \| string |  | Schedule 150 line 502: Column 1. Regulatory statement. Canadian liabilities. B equals Liability for incurred claims. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line503` | null \| number \| string |  | Schedule 150 line 503: Column 1. Regulatory statement. Canadian liabilities. C equals Liability for incurred claims not included in amount B. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line505` | null \| number \| string |  | Schedule 150 line 505: Column 1. Regulatory statement. Canadian liabilities. E equals Additional reserve in respect of a fidelity risk, a surety risk, a nuclear risk, or mortgage insurance. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line506` | null \| number \| string |  | Schedule 150 line 506: Column 1. Regulatory statement. Canadian liabilities. F equals Guarantee fund in respect of mortgage insurance. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line507` | null \| number \| string |  | Schedule 150 line 507: Column 1. Regulatory statement. Canadian liabilities. G equals Additional reserve in respect of earthquake risk. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line508` | null \| number \| string |  | Schedule 150 line 508: Column 1. Regulatory statement. Canadian liabilities. H equals Reinsurance contract held amount in respect of amounts A, B, C, D, E, G. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line511` | null \| number \| string |  | Schedule 150 line 511: Column 1. Regulatory statement. Canadian liabilities. A equals Liability for remaining coverage. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line512` | null \| number \| string |  | Schedule 150 line 512: Column 1. Regulatory statement. Canadian liabilities. B equals Liability for incurred claims. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line514` | null \| number \| string |  | Schedule 150 line 514: Column 1. Regulatory statement. Canadian liabilities. D equals Reinsurance contract held amount in respect of amounts A and B. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line531` | null \| number \| string |  | Schedule 150 line 531: Column 2. Tax Reserves. Maximum tax actuarial reserves. A equals Liability for remaining coverage. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line532` | null \| number \| string |  | Schedule 150 line 532: Column 2. Tax Reserves. Maximum tax actuarial reserves. B equals Liability for incurred claims. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line535` | null \| number \| string |  | Schedule 150 line 535: Column 2. Tax Reserves. Maximum tax actuarial reserves. E equals Additional reserve in respect of a fidelity risk, a surety risk, a nuclear risk, or mortgage insurance. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line536` | null \| number \| string |  | Schedule 150 line 536: Column 2. Tax Reserves. Maximum tax actuarial reserves. F equals Guarantee fund in respect of mortgage insurance. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line537` | null \| number \| string |  | Schedule 150 line 537: Column 2. Tax Reserves. Maximum tax actuarial reserves. G equals Additional reserve in respect of earthquake risk. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line538` | null \| number \| string |  | Schedule 150 line 538: Column 2. Tax Reserves. Maximum tax actuarial reserves. H equals Reinsurance contract held amount in respect of amounts A, B, C, D, E, G. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line541` | null \| number \| string |  | Schedule 150 line 541: Column 2. Tax Reserves. Maximum tax actuarial reserves. A equals Liability for remaining coverage. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line542` | null \| number \| string |  | Schedule 150 line 542: Column 2. Tax Reserves. Maximum tax actuarial reserves. B equals Liability for incurred claims. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line544` | null \| number \| string |  | Schedule 150 line 544: Column 2. Tax Reserves. Maximum tax actuarial reserves. D equals Reinsurance contract held amount in respect of amounts A and B. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line561` | null \| number \| string |  | Schedule 150 line 561: Column 1. Expected present value of future Cash flows. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line562` | null \| number \| string |  | Schedule 150 line 562: Column 1. Expected present value of future Cash flows. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line564` | null \| number \| string |  | Schedule 150 line 564: Column 1. Expected present value of future Cash flows. Current service provided in the period. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line565` | null \| number \| string |  | Schedule 150 line 565: Column 1. Expected present value of future Cash flows. Future service yet to be provided. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line566` | null \| number \| string |  | Schedule 150 line 566: Column 1. Expected present value of future Cash flows. Past service provided in the prior periods. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line567` | null \| number \| string |  | Schedule 150 line 567: Column 1. Expected present value of future Cash flows. Net finance, income, expenses from insurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line568` | null \| number \| string |  | Schedule 150 line 568: Column 1. Expected present value of future Cash flows. Effects of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line571` | null \| number \| string |  | Schedule 150 line 571: Column 1. Expected present value of future Cash flows. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line572` | null \| number \| string |  | Schedule 150 line 572: Column 1. Expected present value of future Cash flows. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line573` | null \| number \| string |  | Schedule 150 line 573: Column 1. Expected present value of future Cash flows. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line575` | null \| number \| string |  | Schedule 150 line 575: Column 1. Expected present value of future Cash flows. Other changes in the net carrying amount of the insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line578` | null \| number \| string |  | Schedule 150 line 578: Column 1. Expected present value of future Cash flows. Ending balance insurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line579` | null \| number \| string |  | Schedule 150 line 579: Column 1. Expected present value of future Cash flows. Ending balance insurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line581` | null \| number \| string |  | Schedule 150 line 581: Column 2. Risk adjustment. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line582` | null \| number \| string |  | Schedule 150 line 582: Column 2. Risk adjustment. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line584` | null \| number \| string |  | Schedule 150 line 584: Column 2. Risk adjustment. Current service provided in the period. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line585` | null \| number \| string |  | Schedule 150 line 585: Column 2. Risk adjustment. Future service yet to be provided. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line586` | null \| number \| string |  | Schedule 150 line 586: Column 2. Risk adjustment. Past service provided in the prior periods. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line587` | null \| number \| string |  | Schedule 150 line 587: Column 2. Risk adjustment. Net finance, income, expenses from insurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line588` | null \| number \| string |  | Schedule 150 line 588: Column 2. Risk adjustment. Effects of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line591` | null \| number \| string |  | Schedule 150 line 591: Column 2. Risk adjustment. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line592` | null \| number \| string |  | Schedule 150 line 592: Column 2. Risk adjustment. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line593` | null \| number \| string |  | Schedule 150 line 593: Column 2. Risk adjustment. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line595` | null \| number \| string |  | Schedule 150 line 595: Column 2. Risk adjustment. Other changes in the net carrying amount of the insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line598` | null \| number \| string |  | Schedule 150 line 598: Column 2. Risk adjustment. Ending balance insurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line599` | null \| number \| string |  | Schedule 150 line 599: Column 2. Risk adjustment. Ending balance insurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line601` | null \| number \| string |  | Schedule 150 line 601: Column 3. Contractual service margin, CSM. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line602` | null \| number \| string |  | Schedule 150 line 602: Column 3. Contractual service margin, CSM. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line604` | null \| number \| string |  | Schedule 150 line 604: Column 3. Contractual service margin, CSM. Current service provided in the period. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line605` | null \| number \| string |  | Schedule 150 line 605: Column 3. Contractual service margin, CSM. Future service yet to be provided. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line606` | null \| number \| string |  | Schedule 150 line 606: Column 3. Contractual service margin, CSM. Past service provided in the prior periods. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line607` | null \| number \| string |  | Schedule 150 line 607: Column 3. Contractual service margin, CSM. Net finance, income, expenses from insurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line608` | null \| number \| string |  | Schedule 150 line 608: Column 3. Contractual service margin, CSM. Effects of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line611` | null \| number \| string |  | Schedule 150 line 611: Column 3. Contractual service margin, CSM. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line612` | null \| number \| string |  | Schedule 150 line 612: Column 3. Contractual service margin, CSM. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line613` | null \| number \| string |  | Schedule 150 line 613: Column 3. Contractual service margin, CSM. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line615` | null \| number \| string |  | Schedule 150 line 615: Column 3. Contractual service margin, CSM. Other changes in the net carrying amount of the insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line618` | null \| number \| string |  | Schedule 150 line 618: Column 3. Contractual service margin, CSM. Ending balance insurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line619` | null \| number \| string |  | Schedule 150 line 619: Column 3. Contractual service margin, CSM. Ending balance insurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line641` | null \| number \| string |  | Schedule 150 line 641: Column 1. Expected present value of future cash flows. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line642` | null \| number \| string |  | Schedule 150 line 642: Column 1. Expected present value of future cash flows. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line644` | null \| number \| string |  | Schedule 150 line 644: Column 1. Expected present value of future cash flows. Current service provided in the period. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line645` | null \| number \| string |  | Schedule 150 line 645: Column 1. Expected present value of future cash flows. Future service yet to be provided. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line646` | null \| number \| string |  | Schedule 150 line 646: Column 1. Expected present value of future cash flows. Past service provided in the prior periods. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line647` | null \| number \| string |  | Schedule 150 line 647: Column 1. Expected present value of future cash flows. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line648` | null \| number \| string |  | Schedule 150 line 648: Column 1. Expected present value of future cash flows. Net finance, income, expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line649` | null \| number \| string |  | Schedule 150 line 649: Column 1. Expected present value of future cash flows. Effects of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line651` | null \| number \| string |  | Schedule 150 line 651: Column 1. Expected present value of future cash flows. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line652` | null \| number \| string |  | Schedule 150 line 652: Column 1. Expected present value of future cash flows. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line653` | null \| number \| string |  | Schedule 150 line 653: Column 1. Expected present value of future cash flows. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line655` | null \| number \| string |  | Schedule 150 line 655: Column 1. Expected present value of future cash flows. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line658` | null \| number \| string |  | Schedule 150 line 658: Column 1. Expected present value of future cash flows. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line659` | null \| number \| string |  | Schedule 150 line 659: Column 1. Expected present value of future cash flows. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line661` | null \| number \| string |  | Schedule 150 line 661: Column 2. Risk adjustment. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line662` | null \| number \| string |  | Schedule 150 line 662: Column 2. Risk adjustment. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line664` | null \| number \| string |  | Schedule 150 line 664: Column 2. Risk adjustment. Current service provided in the period. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line665` | null \| number \| string |  | Schedule 150 line 665: Column 2. Risk adjustment. Future service yet to be provided. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line666` | null \| number \| string |  | Schedule 150 line 666: Column 2. Risk adjustment. Past service provided in the prior periods. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line667` | null \| number \| string |  | Schedule 150 line 667: Column 2. Risk adjustment. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line668` | null \| number \| string |  | Schedule 150 line 668: Column 2. Risk adjustment. Net finance, income, expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line669` | null \| number \| string |  | Schedule 150 line 669: Column 2. Risk adjustment. Effects of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line671` | null \| number \| string |  | Schedule 150 line 671: Column 2. Risk adjustment. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line672` | null \| number \| string |  | Schedule 150 line 672: Column 2. Risk adjustment. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line673` | null \| number \| string |  | Schedule 150 line 673: Column 2. Risk adjustment. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line675` | null \| number \| string |  | Schedule 150 line 675: Column 2. Risk adjustment. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line678` | null \| number \| string |  | Schedule 150 line 678: Column 2. Risk adjustment. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line679` | null \| number \| string |  | Schedule 150 line 679: Column 2. Risk adjustment. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line681` | null \| number \| string |  | Schedule 150 line 681: Column 3. Contractual service margin, CSM. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line682` | null \| number \| string |  | Schedule 150 line 682: Column 3. Contractual service margin, CSM. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line684` | null \| number \| string |  | Schedule 150 line 684: Column 3. Contractual service margin, CSM. Current service provided in the period. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line685` | null \| number \| string |  | Schedule 150 line 685: Column 3. Contractual service margin, CSM. Future service yet to be provided. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line686` | null \| number \| string |  | Schedule 150 line 686: Column 3. Contractual service margin, CSM. Past service provided in the prior periods. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line687` | null \| number \| string |  | Schedule 150 line 687: Column 3. Contractual service margin, CSM. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line688` | null \| number \| string |  | Schedule 150 line 688: Column 3. Contractual service margin, CSM. Net finance, income, expenses from reinsurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line689` | null \| number \| string |  | Schedule 150 line 689: Column 3. Contractual service margin, CSM. Effects of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line691` | null \| number \| string |  | Schedule 150 line 691: Column 3. Contractual service margin, CSM. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line692` | null \| number \| string |  | Schedule 150 line 692: Column 3. Contractual service margin, CSM. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line693` | null \| number \| string |  | Schedule 150 line 693: Column 3. Contractual service margin, CSM. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line695` | null \| number \| string |  | Schedule 150 line 695: Column 3. Contractual service margin, CSM. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line698` | null \| number \| string |  | Schedule 150 line 698: Column 3. Contractual service margin, CSM. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line699` | null \| number \| string |  | Schedule 150 line 699: Column 3. Contractual service margin, CSM. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line741` | null \| number \| string |  | Schedule 150 line 741: Column 1. Liabilities for remaining coverage. Excluding loss component. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line742` | null \| number \| string |  | Schedule 150 line 742: Column 1. Liabilities for remaining coverage. Excluding loss component. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line744` | null \| number \| string |  | Schedule 150 line 744: Column 1. Liabilities for remaining coverage. Excluding loss component. Insurance revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line745` | null \| number \| string |  | Schedule 150 line 745: Column 1. Liabilities for remaining coverage. Excluding loss component. Insurance service expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line746` | null \| number \| string |  | Schedule 150 line 746: Column 1. Liabilities for remaining coverage. Excluding loss component. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line747` | null \| number \| string |  | Schedule 150 line 747: Column 1. Liabilities for remaining coverage. Excluding loss component. Net finance, income, expenses from insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line748` | null \| number \| string |  | Schedule 150 line 748: Column 1. Liabilities for remaining coverage. Excluding loss component. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line751` | null \| number \| string |  | Schedule 150 line 751: Column 1. Liabilities for remaining coverage. Excluding loss component. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line752` | null \| number \| string |  | Schedule 150 line 752: Column 1. Liabilities for remaining coverage. Excluding loss component. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line753` | null \| number \| string |  | Schedule 150 line 753: Column 1. Liabilities for remaining coverage. Excluding loss component. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line755` | null \| number \| string |  | Schedule 150 line 755: Column 1. Liabilities for remaining coverage. Excluding loss component. Other changes in the net carrying amount of the insurance contract. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line758` | null \| number \| string |  | Schedule 150 line 758: Column 1. Liabilities for remaining coverage. Excluding loss- recovery component. Ending balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line759` | null \| number \| string |  | Schedule 150 line 759: Column 1. Liabilities for remaining coverage. Excluding loss component. Ending balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line761` | null \| number \| string |  | Schedule 150 line 761: Column 1. Liabilities for remaining coverage. Loss component. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line762` | null \| number \| string |  | Schedule 150 line 762: Column 1. Liabilities for remaining coverage. Loss component. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line764` | null \| number \| string |  | Schedule 150 line 764: Column 1. Liabilities for remaining coverage. Excluding loss component. Insurance revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line765` | null \| number \| string |  | Schedule 150 line 765: Column 1. Liabilities for remaining coverage. Loss component. Insurance service expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line766` | null \| number \| string |  | Schedule 150 line 766: Column 1. Liabilities for remaining coverage. Loss component. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line767` | null \| number \| string |  | Schedule 150 line 767: Column 1. Liabilities for remaining coverage. Loss component. Net finance, income, expenses from insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line768` | null \| number \| string |  | Schedule 150 line 768: Column 1. Liabilities for remaining coverage. Loss component. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line771` | null \| number \| string |  | Schedule 150 line 771: Column 1. Liabilities for remaining coverage. Loss component. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line772` | null \| number \| string |  | Schedule 150 line 772: Column 1. Liabilities for remaining coverage. Loss component. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line773` | null \| number \| string |  | Schedule 150 line 773: Column 1. Liabilities for remaining coverage. Loss component. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line775` | null \| number \| string |  | Schedule 150 line 775: Column 1. Liabilities for remaining coverage. Loss component. Other changes in the net carrying amount of the insurance contract. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line778` | null \| number \| string |  | Schedule 150 line 778: Column 1. Liabilities for remaining coverage. Loss-recovery component. Ending balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line779` | null \| number \| string |  | Schedule 150 line 779: Column 1. Liabilities for remaining coverage. Loss component. Ending balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line781` | null \| number \| string |  | Schedule 150 line 781: Column 2. Liabilities for incurred claims not under PAA. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line782` | null \| number \| string |  | Schedule 150 line 782: Column 2. Liabilities for incurred claims not under PAA. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line784` | null \| number \| string |  | Schedule 150 line 784: Column 2. Liabilities for incurred claims not under PAA. Insurance revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line785` | null \| number \| string |  | Schedule 150 line 785: Column 2. Liabilities for incurred claims not under PAA. Insurance service expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line786` | null \| number \| string |  | Schedule 150 line 786: Column 2. Liabilities for incurred claims not under PAA. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line787` | null \| number \| string |  | Schedule 150 line 787: Column 2. Liabilities for incurred claims not under PAA. Net finance, income, expenses from insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line788` | null \| number \| string |  | Schedule 150 line 788: Column 2. Liabilities for incurred claims not under PAA. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line791` | null \| number \| string |  | Schedule 150 line 791: Column 2. Liabilities for incurred claims not under PAA. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line792` | null \| number \| string |  | Schedule 150 line 792: Column 2. Liabilities for incurred claims not under PAA. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line793` | null \| number \| string |  | Schedule 150 line 793: Column 2. Liabilities for incurred claims not under PAA. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line795` | null \| number \| string |  | Schedule 150 line 795: Column 2. Liabilities for incurred claims not under PAA. Other changes in the net carrying amount of the insurance contract. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line798` | null \| number \| string |  | Schedule 150 line 798: Column 2. Liabilities for incurred claims not under PAA. Ending balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line799` | null \| number \| string |  | Schedule 150 line 799: Column 2. Liabilities for incurred claims not under PAA. Ending balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line801` | null \| number \| string |  | Schedule 150 line 801: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line802` | null \| number \| string |  | Schedule 150 line 802: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line804` | null \| number \| string |  | Schedule 150 line 804: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Insurance revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line805` | null \| number \| string |  | Schedule 150 line 805: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Insurance service expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line806` | null \| number \| string |  | Schedule 150 line 806: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line807` | null \| number \| string |  | Schedule 150 line 807: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Net finance, income, expenses from insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line808` | null \| number \| string |  | Schedule 150 line 808: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line811` | null \| number \| string |  | Schedule 150 line 811: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line812` | null \| number \| string |  | Schedule 150 line 812: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line813` | null \| number \| string |  | Schedule 150 line 813: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line815` | null \| number \| string |  | Schedule 150 line 815: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Other changes in the net carrying amount of the insurance contract. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line818` | null \| number \| string |  | Schedule 150 line 818: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Ending balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line819` | null \| number \| string |  | Schedule 150 line 819: Column 3. Liabilities for incurred claims under PAA. Expected present value of future cash flows. Ending balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line821` | null \| number \| string |  | Schedule 150 line 821: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Opening balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line822` | null \| number \| string |  | Schedule 150 line 822: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Opening balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line824` | null \| number \| string |  | Schedule 150 line 824: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Insurance revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line825` | null \| number \| string |  | Schedule 150 line 825: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Insurance service expenses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line826` | null \| number \| string |  | Schedule 150 line 826: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line827` | null \| number \| string |  | Schedule 150 line 827: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Net finance, income, expenses from insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line828` | null \| number \| string |  | Schedule 150 line 828: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line831` | null \| number \| string |  | Schedule 150 line 831: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Premiums received for insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line832` | null \| number \| string |  | Schedule 150 line 832: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Claims, benefits and other expenses paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line833` | null \| number \| string |  | Schedule 150 line 833: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Insurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line835` | null \| number \| string |  | Schedule 150 line 835: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Other changes in the net carrying amount of the insurance contract. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line838` | null \| number \| string |  | Schedule 150 line 838: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Ending balance insurance contract assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line839` | null \| number \| string |  | Schedule 150 line 839: Column 3. Liabilities for incurred claims under PAA. Risk adjustment. Ending balance insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line871` | null \| number \| string |  | Schedule 150 line 871: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line872` | null \| number \| string |  | Schedule 150 line 872: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line874` | null \| number \| string |  | Schedule 150 line 874: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Allocation of reinsurance premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line875` | null \| number \| string |  | Schedule 150 line 875: Column 1. Liability for remaining coverage. Excluding loss component. Amounts recoverable from reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line876` | null \| number \| string |  | Schedule 150 line 876: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line877` | null \| number \| string |  | Schedule 150 line 877: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line878` | null \| number \| string |  | Schedule 150 line 878: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Net finance, income, expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line879` | null \| number \| string |  | Schedule 150 line 879: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line881` | null \| number \| string |  | Schedule 150 line 881: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line882` | null \| number \| string |  | Schedule 150 line 882: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line883` | null \| number \| string |  | Schedule 150 line 883: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line885` | null \| number \| string |  | Schedule 150 line 885: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line888` | null \| number \| string |  | Schedule 150 line 888: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line889` | null \| number \| string |  | Schedule 150 line 889: Column 1. Assets for remaining coverage. Excluding loss-recovery component. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line891` | null \| number \| string |  | Schedule 150 line 891: Column 1. Assets for remaining coverage. Loss-recovery component. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line892` | null \| number \| string |  | Schedule 150 line 892: Column 1. Assets for remaining coverage. Loss-recovery component. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line894` | null \| number \| string |  | Schedule 150 line 894: Column 1. Assets for remaining coverage. Loss-recovery component. Allocation of reinsurance premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line895` | null \| number \| string |  | Schedule 150 line 895: Column 1. Assets for remaining coverage. Loss-recovery component. Amounts recoverable from reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line896` | null \| number \| string |  | Schedule 150 line 896: Column 1. Assets for remaining coverage. Loss-recovery component. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line897` | null \| number \| string |  | Schedule 150 line 897: Column 1. Assets for remaining coverage. Loss-recovery component. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line898` | null \| number \| string |  | Schedule 150 line 898: Column 1. Assets for remaining coverage. Loss-recovery component. Net finance, income, expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line899` | null \| number \| string |  | Schedule 150 line 899: Column 1. Assets for remaining coverage. Loss-recovery component. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line901` | null \| number \| string |  | Schedule 150 line 901: Column 1. Assets for remaining coverage. Loss-recovery component. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line902` | null \| number \| string |  | Schedule 150 line 902: Column 1. Assets for remaining coverage. Loss-recovery component. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line903` | null \| number \| string |  | Schedule 150 line 903: Column 1. Assets for remaining coverage. Loss-recovery component. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line905` | null \| number \| string |  | Schedule 150 line 905: Column 1. Assets for remaining coverage. Loss-recovery component. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line908` | null \| number \| string |  | Schedule 150 line 908: Column 1. Assets for remaining coverage. Loss-recovery component. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line909` | null \| number \| string |  | Schedule 150 line 909: Column 1. Assets for remaining coverage. Loss-recovery component. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line911` | null \| number \| string |  | Schedule 150 line 911: Column 2. Assets for incurred claims not under PAA. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line912` | null \| number \| string |  | Schedule 150 line 912: Column 2. Assets for incurred claims not under PAA. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line914` | null \| number \| string |  | Schedule 150 line 914: Column 2. Assets for incurred claims not under PAA. Allocation of reinsurance premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line915` | null \| number \| string |  | Schedule 150 line 915: Column 2. Assets for incurred claims not under PAA. Amounts recoverable from reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line916` | null \| number \| string |  | Schedule 150 line 916: Column 2. Assets for incurred claims not under PAA. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line917` | null \| number \| string |  | Schedule 150 line 917: Column 2. Assets for incurred claims not under PAA. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line918` | null \| number \| string |  | Schedule 150 line 918: Column 2. Assets for incurred claims not under PAA. Net finance, income, expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line919` | null \| number \| string |  | Schedule 150 line 919: Column 2. Assets for incurred claims not under PAA. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line921` | null \| number \| string |  | Schedule 150 line 921: Column 2. Assets for incurred claims not under PAA. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line922` | null \| number \| string |  | Schedule 150 line 922: Column 2. Assets for incurred claims not under PAA. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line923` | null \| number \| string |  | Schedule 150 line 923: Column 2. Assets for incurred claims not under PAA. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line925` | null \| number \| string |  | Schedule 150 line 925: Column 2. Assets for incurred claims not under PAA. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line928` | null \| number \| string |  | Schedule 150 line 928: Column 2. Assets for incurred claims not under PAA. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line929` | null \| number \| string |  | Schedule 150 line 929: Column 2. Assets for incurred claims not under PAA. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line931` | null \| number \| string |  | Schedule 150 line 931: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line932` | null \| number \| string |  | Schedule 150 line 932: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line934` | null \| number \| string |  | Schedule 150 line 934: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Allocation of reinsurance premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line935` | null \| number \| string |  | Schedule 150 line 935: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Amounts recoverable from reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line936` | null \| number \| string |  | Schedule 150 line 936: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line937` | null \| number \| string |  | Schedule 150 line 937: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line938` | null \| number \| string |  | Schedule 150 line 938: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Net finance, income, expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line939` | null \| number \| string |  | Schedule 150 line 939: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line941` | null \| number \| string |  | Schedule 150 line 941: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line942` | null \| number \| string |  | Schedule 150 line 942: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line943` | null \| number \| string |  | Schedule 150 line 943: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line945` | null \| number \| string |  | Schedule 150 line 945: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line948` | null \| number \| string |  | Schedule 150 line 948: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line949` | null \| number \| string |  | Schedule 150 line 949: Column 3. Assets for incurred claims under PAA. Expected present value of future cash flows. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line951` | null \| number \| string |  | Schedule 150 line 951: Column 3. Assets for incurred claims under PAA. Risk adjustment. Opening balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line952` | null \| number \| string |  | Schedule 150 line 952: Column 3. Assets for incurred claims under PAA. Risk adjustment. Opening balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line954` | null \| number \| string |  | Schedule 150 line 954: Column 3. Assets for incurred claims under PAA. Risk adjustment. Allocation of reinsurance premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line955` | null \| number \| string |  | Schedule 150 line 955: Column 3. Assets for incurred claims under PAA. Risk adjustment. Amounts recoverable from reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line956` | null \| number \| string |  | Schedule 150 line 956: Column 3. Assets for incurred claims under PAA. Risk adjustment. Investment components. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line957` | null \| number \| string |  | Schedule 150 line 957: Column 3. Assets for incurred claims under PAA. Risk adjustment. Effect of changes in non-performance risk of reinsurers. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line958` | null \| number \| string |  | Schedule 150 line 958: Column 3. Assets for incurred claims under PAA. Risk adjustment. Net finance, income, expenses from reinsurance contracts held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line959` | null \| number \| string |  | Schedule 150 line 959: Column 3. Assets for incurred claims under PAA. Risk adjustment. Effect of movements in exchange rates. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line961` | null \| number \| string |  | Schedule 150 line 961: Column 3. Assets for incurred claims under PAA. Risk adjustment. Premiums paid. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line962` | null \| number \| string |  | Schedule 150 line 962: Column 3. Assets for incurred claims under PAA. Risk adjustment. Amounts received. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line963` | null \| number \| string |  | Schedule 150 line 963: Column 3. Assets for incurred claims under PAA. Risk adjustment. Reinsurance acquisition cash flows. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line965` | null \| number \| string |  | Schedule 150 line 965: Column 3. Assets for incurred claims under PAA. Risk adjustment. Other changes in the net carrying amount of the reinsurance contract held. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line968` | null \| number \| string |  | Schedule 150 line 968: Column 3. Assets for incurred claims under PAA. Risk adjustment. Ending balance reinsurance contract held assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.line969` | null \| number \| string |  | Schedule 150 line 969: Column 3. Assets for incurred claims under PAA. Risk adjustment. Ending balance reinsurance contract held liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.nonLifeContractualServiceMargin` | null \| number \| string |  | Reg 1400(3) D: the contractual service margin of non-life insurance contracts, before the 90% factor; the engine prints 90% of it on line 534. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.nonLifeIncurredClaimsNotInB` | null \| number \| string |  | Reg 1400(3) C: the liability for incurred claims of non-life insurance contracts not included in B, before the 95% factor; the engine prints 95% of it on line 533. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.nonLifeReinsuranceContractualServiceMargin` | null \| number \| string |  | Reg 1400(3) I: the contractual service margin of non-life reinsurance contracts held, before the 90% factor; the engine prints 90% of it on line 539. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.nonLifeReinsuranceIncurredClaimsJ` | null \| number \| string |  | Reg 1400(3) J: the reinsurance contracts held amount for incurred claims, before the 5% factor; the engine prints 5% of it on line 546. J applies to taxation years that begin after 2022. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.nonLifeReserveClaimed` | null \| number \| string |  | The non-life policy reserve deduction claimed for the year, at most the positive reserve amount Part 8 computes (Reg 1400). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.openings` | null \| object |  | Preceding-year amounts as the preceding Schedule 150 printed them. A linked filed return supplies them and these must agree with it. |
| `schedule150.openings.facts` | null \| object |  | The preceding return's closing lines, by the code each printed under. |
| `schedule150.openings.facts.line385` | null \| number \| string |  | Line 385 of the preceding year's Schedule 150: the provision for credit losses for that year, which this year's line 380 must equal. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.openings.facts.line461` | null \| number \| string |  | Line 461 of the preceding year's Schedule 150: the reserve for doubtful or impaired debts deducted under paragraph 20(1)(l), which this year's line 456 includes under paragraph 12(1)(d). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.openings.facts.line462` | null \| number \| string |  | Line 462 of the preceding year's Schedule 150: the reserve for guarantees deducted under paragraph 20(1)(l.1), which this year's line 457 includes under paragraph 12(1)(d.1). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.openings.facts.line525` | null \| number \| string |  | Line 525 of the preceding year's Schedule 150: the total insurance liability (Reg 1400 plus Reg 1404), which this year's line 529 carries. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.openings.facts.line558` | null \| number \| string |  | Line 558 of the preceding year's Schedule 150: the total reserve deduction or income inclusion, which this year's line 559 carries. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.part10Complete` | boolean \| null |  | Confirms Schedule 150 Part 10 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part11Complete` | boolean \| null |  | Confirms Schedule 150 Part 11 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part12Complete` | boolean \| null |  | Confirms Schedule 150 Part 12 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part2Complete` | boolean \| null |  | Confirms Schedule 150 Part 2 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part3Complete` | boolean \| null |  | Confirms Schedule 150 Part 3 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part4Complete` | boolean \| null |  | Confirms Schedule 150 Part 4 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part5Complete` | boolean \| null |  | Confirms Schedule 150 Part 5 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part6Complete` | boolean \| null |  | Confirms Schedule 150 Part 6 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part8Complete` | boolean \| null |  | Confirms Schedule 150 Part 8 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.part9Complete` | boolean \| null |  | Confirms Schedule 150 Part 9 is complete, so a blank line in it is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.schedule1Allocations` | null \| object |  | Per Schedule 1 line, the amount line 110 already reflects through Schedule 150 Part 5. Schedule 1 reverses each amount once on its own line so nothing is counted twice. |
| `schedule150.schedule1Allocations.line104` | null \| number \| string |  | The part of Schedule 1 line 104 (amortization of tangible assets) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line107` | null \| number \| string |  | The part of Schedule 1 line 107 (recapture of capital cost allowance) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line111` | null \| number \| string |  | The part of Schedule 1 line 111 (loss on disposal of assets) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line113` | null \| number \| string |  | The part of Schedule 1 line 113 (taxable capital gains) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line125` | null \| number \| string |  | The part of Schedule 1 line 125 (reserves from the preceding year) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line401` | null \| number \| string |  | The part of Schedule 1 line 401 (gain on disposal of assets) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line403` | null \| number \| string |  | The part of Schedule 1 line 403 (capital cost allowance) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line404` | null \| number \| string |  | The part of Schedule 1 line 404 (terminal loss) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1Allocations.line413` | null \| number \| string |  | The part of Schedule 1 line 413 (reserves for the current year) that Schedule 150 line 110 already reflects; zero or more, at most what Schedule 1 carries on that line. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.schedule1AllocationsReviewed` | boolean \| null |  | Confirms the Schedule 1 allocations were reviewed: required when Part 5 carries capital gains, capital cost allowance or reserves. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule150.transition` | null \| object |  | The IFRS 17 reserve transition of ITA s.138(12) and (16) to (19): the transition year, its reserve transition amount and the bases that reverse over the five years that follow. |
| `schedule150.transition.deductionReversalBase` | null \| number \| string |  | The amount deducted under s.138(17) in the transition year, which s.138(19) includes over 1,825 days (line 484). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.transition.inclusionReversalBase` | null \| number \| string |  | The amount included under s.138(16) in the transition year, which s.138(18) deducts over 1,825 days (line 483). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.transition.reserveTransitionAmount` | null \| number \| string |  | The signed reserve transition amount of ITA s.138(12): positive is included under s.138(16) (line 481), negative is deducted under s.138(17) (line 482). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule150.transition.transitionYearStart` | null \| string |  | First day of the transition year, the insurer's first taxation year that begins after 2022, as YYYY-MM-DD. |
| `schedule151` | null \| object |  | Schedule 151, investment revenue from designated insurance property: the amount Reg 2411 prescribes for ITA s.138(9), which Schedule 150 includes on line 439. |
| `schedule151.asIfResident` | null \| object |  | For a non-resident life insurer: the Part 3 reserve base computed as if it were resident in Canada (note 4). |
| `schedule151.asIfResident.reserveBase` | null \| number \| string |  | The as-if-resident reserve base the line 532 amount is computed from. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.attributedSurplusElection` | boolean \| null |  | Whether a non-resident life insurer elects to compute its attributed surplus with the weighted liabilities of Part 1 (Reg 2400(1) attributed surplus). Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.canadianEquityProperty` | null \| object |  | Schedule 151 Part 2, Canadian equity property: one object per printed row, each split between designated and non-designated property. |
| `schedule151.canadianEquityProperty.affiliatedShares` | null \| object |  | Schedule 151 Part 2, Canadian equity property: shares of affiliated corporations. |
| `schedule151.canadianEquityProperty.affiliatedShares.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.affiliatedShares.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.affiliatedShares.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.affiliatedShares.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.affiliatedShares.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.affiliatedShares.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.affiliatedShares.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.affiliatedShares.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares of affiliated corporations: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued` | null \| object |  | Schedule 151 Part 2, Canadian equity property: amounts due or accrued. |
| `schedule151.canadianEquityProperty.dueOrAccrued.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.dueOrAccrued.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, amounts due or accrued: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds` | null \| object |  | Schedule 151 Part 2, Canadian equity property: income bonds and income debentures. |
| `schedule151.canadianEquityProperty.incomeBonds.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.incomeBonds.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, income bonds and income debentures: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests` | null \| object |  | Schedule 151 Part 2, Canadian equity property: interests in partnerships and trusts. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.partnershipTrustInterests.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, interests in partnerships and trusts: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses` | null \| object |  | Schedule 151 Part 2, Canadian equity property: expenses related to the investment revenue. |
| `schedule151.canadianEquityProperty.relatedExpenses.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.relatedExpenses.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, expenses related to the investment revenue: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.rowsComplete` | boolean \| null |  | Confirms every Canadian equity property row was entered, so a blank row is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.canadianEquityProperty.shares` | null \| object |  | Schedule 151 Part 2, Canadian equity property: shares. |
| `schedule151.canadianEquityProperty.shares.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.shares.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.shares.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.shares.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.shares.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.shares.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.shares.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.canadianEquityProperty.shares.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, Canadian equity property, shares: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.cashFlow` | null \| object |  | The monthly receipts and payments of the Canadian investment fund that the Reg 2412(2) cash-flow adjustment weighs. |
| `schedule151.cashFlow.anniversaryMonthElection` | boolean \| null |  | Whether the months are counted from the anniversary day of the taxation year rather than calendar months (Reg 2412(2)). Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.cashFlow.months` | array \| null |  | One row per month of the taxation year, in order, with that month's net flows. |
| `schedule151.cashFlow.months[]` | object |  | One month of the taxation year and its receipts and payments. |
| `schedule151.cashFlow.months[].monthEnd` | null \| string |  | Last day of the month, as YYYY-MM-DD. |
| `schedule151.cashFlow.months[].monthStart` | null \| string |  | First day of the month, as YYYY-MM-DD. |
| `schedule151.cashFlow.months[].payments` | null \| number \| string |  | Payments out of the Canadian investment fund in the month. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.cashFlow.months[].receipts` | null \| number \| string |  | Receipts of the Canadian investment fund in the month. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.crlInsuranceContractCsm` | null \| number \| string |  | The contractual service margin in respect of amount A of the Canadian reserve liabilities, before the 90% factor; the engine prints 90% of it on line 138. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.crlReinsuranceContractCsm` | null \| number \| string |  | The contractual service margin of reinsurance contracts held in the Canadian reserve liabilities, before the 90% factor; the engine prints 90% of it on line 140. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.cumulativeExcessClaim` | null \| number \| string |  | The amount of the cumulative excess account claimed against this year's shortfall (Reg 2411(6)); the oldest excess is consumed first and a current-year excess cannot fund a same-year claim. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.designatedValueByBusiness` | null \| object |  | The value of property designated for each insurance business, which must equal each Reg 2401(2) target. |
| `schedule151.designatedValueByBusiness.accidentSickness` | null \| number \| string |  | Value designated for the accident and sickness insurance business. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.designatedValueByBusiness.additional` | null \| number \| string |  | Additional value designated beyond the targets, where Reg 2401 allows it. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.designatedValueByBusiness.lifeInsurance` | null \| number \| string |  | Value designated for the life insurance business. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.designatedValueByBusiness.otherInsurance` | null \| number \| string |  | Value designated for the other insurance businesses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.designationOrderFollowed` | boolean \| null |  | Confirms the property was designated in the order Reg 2401(3) and (5) require. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.equityPropertyValue` | null \| number \| string |  | The value for the year of all the insurer's equity property (line 741, or line 749 for a non-resident life insurer that elects), which the Reg 2401(4) equity limit weighs. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty` | null \| object |  | Schedule 151 Part 2, foreign investment property: one object per printed row, each split between designated and non-designated property. |
| `schedule151.foreignProperty.affiliatedShares` | null \| object |  | Schedule 151 Part 2, foreign investment property: shares of affiliated corporations. |
| `schedule151.foreignProperty.affiliatedShares.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.affiliatedShares.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.affiliatedShares.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.affiliatedShares.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.affiliatedShares.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.affiliatedShares.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.affiliatedShares.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.affiliatedShares.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares of affiliated corporations: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds` | null \| object |  | Schedule 151 Part 2, foreign investment property: bonds, debentures and other debt. |
| `schedule151.foreignProperty.bonds.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.bonds.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, bonds, debentures and other debt: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances` | null \| object |  | Schedule 151 Part 2, foreign investment property: deposit balances. |
| `schedule151.foreignProperty.depositBalances.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depositBalances.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, deposit balances: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty` | null \| object |  | Schedule 151 Part 2, foreign investment property: depreciable property. |
| `schedule151.foreignProperty.depreciableProperty.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.depreciableProperty.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, depreciable property: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued` | null \| object |  | Schedule 151 Part 2, foreign investment property: amounts due or accrued. |
| `schedule151.foreignProperty.dueOrAccrued.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.dueOrAccrued.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, amounts due or accrued: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds` | null \| object |  | Schedule 151 Part 2, foreign investment property: income bonds and income debentures. |
| `schedule151.foreignProperty.incomeBonds.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.incomeBonds.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, income bonds and income debentures: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages` | null \| object |  | Schedule 151 Part 2, foreign investment property: mortgages and hypothecs. |
| `schedule151.foreignProperty.mortgages.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.mortgages.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, mortgages and hypothecs: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty` | null \| object |  | Schedule 151 Part 2, foreign investment property: other property. |
| `schedule151.foreignProperty.otherProperty.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.otherProperty.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, other property: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests` | null \| object |  | Schedule 151 Part 2, foreign investment property: interests in partnerships and trusts. |
| `schedule151.foreignProperty.partnershipTrustInterests.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.partnershipTrustInterests.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, interests in partnerships and trusts: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty` | null \| object |  | Schedule 151 Part 2, foreign investment property: real property. |
| `schedule151.foreignProperty.realProperty.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.realProperty.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, real property: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses` | null \| object |  | Schedule 151 Part 2, foreign investment property: expenses related to the investment revenue. |
| `schedule151.foreignProperty.relatedExpenses.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.relatedExpenses.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, expenses related to the investment revenue: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties` | null \| object |  | Schedule 151 Part 2, foreign investment property: resource properties. |
| `schedule151.foreignProperty.resourceProperties.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.resourceProperties.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, resource properties: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.rowsComplete` | boolean \| null |  | Confirms every foreign investment property row was entered, so a blank row is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.foreignProperty.shares` | null \| object |  | Schedule 151 Part 2, foreign investment property: shares. |
| `schedule151.foreignProperty.shares.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.shares.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.shares.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.shares.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.shares.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.shares.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.shares.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.foreignProperty.shares.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, foreign investment property, shares: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line101` | null \| number \| string |  | Schedule 151 line 101: Column 1. Total reserve liabilities, TRL. Insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line102` | null \| number \| string |  | Schedule 151 line 102: Column 1. Total reserve liabilities, TRL. Investment contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line103` | null \| number \| string |  | Schedule 151 line 103: Column 1. Total reserve liabilities, TRL. Other liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line105` | null \| number \| string |  | Schedule 151 line 105: Column 1. Total reserve liabilities, TRL. A.1: insurance contract asset amounts in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line106` | null \| number \| string |  | Schedule 151 line 106: Column 1. Total reserve liabilities, TRL. A.2: funds withheld amounts in respect of reinsurance in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line107` | null \| number \| string |  | Schedule 151 line 107: Column 1. Total reserve liabilities, TRL. A.3: amounts recoverable under a funds withheld arrangement in respect of the reinsurance of a risk in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line109` | null \| number \| string |  | Schedule 151 line 109: Column 1. Total reserve liabilities, TRL. C: reinsurance contract held amount in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line120` | null \| number \| string |  | Schedule 151 line 120: Column 1. Total reserve liabilities, TRL. Negative reserves. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line121` | null \| number \| string |  | Schedule 151 line 121: Column 1. Total reserve liabilities, TRL. Reserves required by other jurisdictions. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line122` | null \| number \| string |  | Schedule 151 line 122: Column 1. Total reserve liabilities, TRL. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line131` | null \| number \| string |  | Schedule 151 line 131: Column 2. Canadian reserve liabilities, CRL. Insurance contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line132` | null \| number \| string |  | Schedule 151 line 132: Column 2. Canadian reserve liabilities, CRL. Investment contract liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line133` | null \| number \| string |  | Schedule 151 line 133: Column 2. Canadian reserve liabilities, CRL. Other liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line135` | null \| number \| string |  | Schedule 151 line 135: Column 2. Canadian reserve liabilities, CRL. A.1: insurance contract asset amounts in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line136` | null \| number \| string |  | Schedule 151 line 136: Column 2. Canadian reserve liabilities, CRL. A.2: funds withheld amounts in respect of reinsurance in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line137` | null \| number \| string |  | Schedule 151 line 137: Column 2. Canadian reserve liabilities, CRL. A.3: amounts recoverable under a funds withheld arrangement in respect of the reinsurance of a risk in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line139` | null \| number \| string |  | Schedule 151 line 139: Column 2. Canadian reserve liabilities, CRL. C: reinsurance contract held amount in respect of amount A. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line150` | null \| number \| string |  | Schedule 151 line 150: Column 2. Canadian reserve liabilities, CRL. Negative reserves. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line152` | null \| number \| string |  | Schedule 151 line 152: Column 2. Canadian reserve liabilities, CRL. Other. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line201` | null \| number \| string |  | Schedule 151 line 201: Column 1. Weighted total liabilities life, accident and sickness. C: liabilities in respect of life, accident and sickness insurance policies. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line203` | null \| number \| string |  | Schedule 151 line 203: Column 1. Weighted total liabilities life, accident and sickness. E: reinsurance contract held amount in respect of C. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line221` | null \| number \| string |  | Schedule 151 line 221: Column 2. Weighted total liabilities annuity and other. G: liabilities in respect of insurance policies other insurance policies in respect of C. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line223` | null \| number \| string |  | Schedule 151 line 223: Column 2. Weighted total liabilities annuity and other. I: reinsurance contract held amount in respect of G. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line241` | null \| number \| string |  | Schedule 151 line 241: Column 3. Weighted Canadian liabilities life, accident and sickness. C: liabilities in respect of life, accident and sickness insurance policies. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line243` | null \| number \| string |  | Schedule 151 line 243: Column 3. Weighted Canadian liabilities life, accident and sickness. E: reinsurance contract held amount in respect of C. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line261` | null \| number \| string |  | Schedule 151 line 261: Column 4. Weighted Canadian liabilities annuity and other. G: liabilities in respect of insurance policies other insurance policies in respect of C. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line263` | null \| number \| string |  | Schedule 151 line 263: Column 4. Weighted Canadian liabilities annuity and other. I: reinsurance contract held amount in respect of G. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line533` | null \| number \| string |  | Schedule 151 line 533: Column 2. Current year. D: deferred realized net gains or deferred realized net losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line534` | null \| number \| string |  | Schedule 151 line 534: Column 2. Current year. E: investments in capital stock and debt of affiliated financial institutions. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line535` | null \| number \| string |  | Schedule 151 line 535: Column 2. Current year. F: debt in respect of the acquisition of asset from amount E. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line541` | null \| number \| string |  | Schedule 151 line 541: Column 2. Current year. I: insurance business assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line543` | null \| number \| string |  | Schedule 151 line 543: Column 2. Current year. J: insurance business liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line546` | null \| number \| string |  | Schedule 151 line 546: Column 2. Current year. L: general provisions and allowances for impairment of investment property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line653` | null \| number \| string |  | Schedule 151 line 653: Column 2. Current year. Canadian deferred realized net gains or deferred realized net losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line655` | null \| number \| string |  | Schedule 151 line 655: Column 2. Current year. Surplus funds derived from operations at the end of the preceding year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line656` | null \| number \| string |  | Schedule 151 line 656: Column 2. Current year. Amount on line 653 to the extent not included on line 655. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line657` | null \| number \| string |  | Schedule 151 line 657: Column 2. Current year. Amounts under subparagraph 219(4)(a)(i.1) at the end of the preceding year, see note 2. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line658` | null \| number \| string |  | Schedule 151 line 658: Column 2. Current year. Amounts under subparagraphs 219(4)(a)(ii), (iii), (iv), and (v) at the end of the year, see note 2. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line661` | null \| number \| string |  | Schedule 151 line 661: Column 2. Current year. A: liability for remaining coverage at end of the taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line662` | null \| number \| string |  | Schedule 151 line 662: Column 2. Current year. B: liability for remaining coverage at end of the preceding taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line663` | null \| number \| string |  | Schedule 151 line 663: Column 2. Current year. C: liability for incurred claims at end of the taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line664` | null \| number \| string |  | Schedule 151 line 664: Column 2. Current year. D: liability for incurred claims at end of the preceding taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line665` | null \| number \| string |  | Schedule 151 line 665: Column 2. Current year. E: reinsurance contract held amount at the end of the taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line666` | null \| number \| string |  | Schedule 151 line 666: Column 2. Current year. F: reinsurance contract held amount at the end of the preceding taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line667` | null \| number \| string |  | Schedule 151 line 667: Column 2. Current year. G: investment valuation reserve at the end of the taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line668` | null \| number \| string |  | Schedule 151 line 668: Column 2. Current year. H: investment valuation reserve at the end of the preceding taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line731` | null \| number \| string |  | Schedule 151 line 731: Column 2. Current year. Canadian reserve liability test–life insurance business in Canada. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line732` | null \| number \| string |  | Schedule 151 line 732: Column 2. Current year. Canadian reserve liability test–accident and sickness insurance business in Canada. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.line733` | null \| number \| string |  | Schedule 151 line 733: Column 2. Current year. Canadian reserve liability test–other insurance businesses in Canada. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.method2Elected` | boolean \| null |  | Whether the insurer elects Method 2 for the minimum revenue test (Reg 2411(3)(a)); available only while designated foreign investment property is at most 5% of the mean Canadian investment fund. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.openings` | null \| object |  | Preceding-year operands as the preceding Schedule 151 printed them. A linked filed return supplies them and these must agree with it. |
| `schedule151.openings.cumulativeExcessNil` | boolean \| null |  | Confirms the cumulative excess account at the end of the preceding year was empty. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.openings.facts` | null \| object |  | The preceding return's current-year lines, by the code each printed under. |
| `schedule151.openings.facts.line154` | null \| number \| string |  | Line 154 of the preceding year's Schedule 151, as that return printed it: Column 2. Canadian reserve liabilities, CRL. Canadian reserve liabilities, sum of line 145 to line 152. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line531` | null \| number \| string |  | Line 531 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Canadian reserve liabilities, current year from line 145. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line532` | null \| number \| string |  | Line 532 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. C: 8% of liability component, line 501 for prior year or line 531 for current year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line533` | null \| number \| string |  | Line 533 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. D: deferred realized net gains or deferred realized net losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line534` | null \| number \| string |  | Line 534 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. E: investments in capital stock and debt of affiliated financial institutions. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line535` | null \| number \| string |  | Line 535 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. F: debt in respect of the acquisition of asset from amount E. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line536` | null \| number \| string |  | Line 536 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. G: weighted Canadian liabilities, current year amount from line 259. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line537` | null \| number \| string |  | Line 537 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. H: weighted total liabilities, current year amount from line 219. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line541` | null \| number \| string |  | Line 541 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. I: insurance business assets. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line542` | null \| number \| string |  | Line 542 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. I.1: 90% of the contractual service margin in respect of reinsurance contract held amount. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line543` | null \| number \| string |  | Line 543 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. J: insurance business liabilities. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line544` | null \| number \| string |  | Line 544 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. J.1: 90% of the contractual service margin in respect of insurance contracts. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line546` | null \| number \| string |  | Line 546 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. L: general provisions and allowances for impairment of investment property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line651` | null \| number \| string |  | Line 651 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Canadian reserve liabilities, CRL, line 154 for the current year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line653` | null \| number \| string |  | Line 653 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Canadian deferred realized net gains or deferred realized net losses. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line655` | null \| number \| string |  | Line 655 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Surplus funds derived from operations at the end of the preceding year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line656` | null \| number \| string |  | Line 656 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Amount on line 653 to the extent not included on line 655. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line657` | null \| number \| string |  | Line 657 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Amounts under subparagraph 219(4)(a)(i.1) at the end of the preceding year, see note 2. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line658` | null \| number \| string |  | Line 658 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Amounts under subparagraphs 219(4)(a)(ii), (iii), (iv), and (v) at the end of the year, see note 2. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line676` | null \| number \| string |  | Line 676 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Line 555, if election made under subparagraph (b)(i) of the definition of attributed surplus. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line731` | null \| number \| string |  | Line 731 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Canadian reserve liability test–life insurance business in Canada. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line732` | null \| number \| string |  | Line 732 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Canadian reserve liability test–accident and sickness insurance business in Canada. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line733` | null \| number \| string |  | Line 733 of the preceding year's Schedule 151, as that return printed it: Column 2. Current year. Canadian reserve liability test–other insurance businesses in Canada. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line871` | null \| number \| string |  | Line 871 of the preceding year's Schedule 151, as that return printed it: Analysis of balance of account by year of origin. Amount, sixth previous tax year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line872` | null \| number \| string |  | Line 872 of the preceding year's Schedule 151, as that return printed it: Analysis of balance of account by year of origin. Amount, fifth previous tax year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line873` | null \| number \| string |  | Line 873 of the preceding year's Schedule 151, as that return printed it: Analysis of balance of account by year of origin. Amount, fourth previous tax year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line874` | null \| number \| string |  | Line 874 of the preceding year's Schedule 151, as that return printed it: Analysis of balance of account by year of origin. Amount, third previous tax year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line875` | null \| number \| string |  | Line 875 of the preceding year's Schedule 151, as that return printed it: Analysis of balance of account by year of origin. Amount, second previous tax year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line876` | null \| number \| string |  | Line 876 of the preceding year's Schedule 151, as that return printed it: Analysis of balance of account by year of origin. Amount, first previous tax year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.facts.line877` | null \| number \| string |  | Line 877 of the preceding year's Schedule 151, as that return printed it: Analysis of balance of account by year of origin. Amount, Current tax year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.openings.priorTaxYearStart` | null \| string |  | First day of the preceding taxation year, as YYYY-MM-DD. |
| `schedule151.openings.restatedUnderReg2400_10` | boolean \| null |  | Whether the preceding-year amounts were recomputed under the definitions that apply to taxation years that begin after 2022, as Reg 2400(10) requires for the transition year. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.otherCanadianProperty` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: one object per printed row, each split between designated and non-designated property. |
| `schedule151.otherCanadianProperty.affiliatedShares` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: shares of affiliated corporations. |
| `schedule151.otherCanadianProperty.affiliatedShares.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.affiliatedShares.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.affiliatedShares.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.affiliatedShares.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.affiliatedShares.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.affiliatedShares.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.affiliatedShares.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.affiliatedShares.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, shares of affiliated corporations: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: bonds, debentures and other debt. |
| `schedule151.otherCanadianProperty.bonds.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.bonds.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, bonds, debentures and other debt: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: deposit balances. |
| `schedule151.otherCanadianProperty.depositBalances.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depositBalances.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, deposit balances: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: depreciable property. |
| `schedule151.otherCanadianProperty.depreciableProperty.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.depreciableProperty.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, depreciable property: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: amounts due or accrued. |
| `schedule151.otherCanadianProperty.dueOrAccrued.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.dueOrAccrued.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, amounts due or accrued: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: mortgages and hypothecs. |
| `schedule151.otherCanadianProperty.mortgages.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.mortgages.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, mortgages and hypothecs: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: interests in partnerships and trusts. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.partnershipTrustInterests.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, interests in partnerships and trusts: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: real property. |
| `schedule151.otherCanadianProperty.realProperty.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.realProperty.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, real property: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: expenses related to the investment revenue. |
| `schedule151.otherCanadianProperty.relatedExpenses.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.relatedExpenses.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, expenses related to the investment revenue: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties` | null \| object |  | Schedule 151 Part 2, other Canadian investment property: resource properties. |
| `schedule151.otherCanadianProperty.resourceProperties.designatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the expenses related to the designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties.designatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the investment revenue of the designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties.designatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the Reg 2411(4.1) amount of designated property disposed of in the year or a preceding year (designated in the year of disposition). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties.designatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the value of the row's property that is designated insurance property. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties.nonDesignatedExpense` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the expenses related to the non-designated investment revenue. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties.nonDesignatedNet4` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the investment revenue of the non-designated property under Reg 2411(4). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties.nonDesignatedNet41` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the Reg 2411(4.1) amount of property disposed of that was not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.resourceProperties.nonDesignatedValue` | null \| number \| string |  | Schedule 151 Part 2, other Canadian investment property, resource properties: the value of the row's property that is not designated. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.otherCanadianProperty.rowsComplete` | boolean \| null |  | Confirms every other Canadian investment property row was entered, so a blank row is nil. Answer true or false; null leaves it unanswered, which is never read as no. |
| `schedule151.pcOnlyCanadianReserveLiabilities` | null \| number \| string |  | The Canadian reserve liabilities of the property and casualty business only for the year, used to show the difference from the full amount the equity limit uses (note 5). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.pcOnlyCanadianReserveLiabilitiesPrior` | null \| number \| string |  | The same property and casualty-only Canadian reserve liabilities for the preceding year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.requiredMarginCurrent` | null \| number \| string |  | Line 671: 120% of the margin of assets over liabilities at the end of the taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.requiredMarginPrior` | null \| number \| string |  | Line 672: 120% of the margin of assets over liabilities at the end of the preceding taxation year. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.surplusInsuranceContractCsm` | null \| number \| string |  | Part 3 J.1: the contractual service margin in respect of the insurance contracts amount, before the 90% factor (line 544). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.surplusReinsuranceContractCsm` | null \| number \| string |  | Part 3 I.1: the contractual service margin in respect of the reinsurance contracts held amount, before the 90% factor (line 542). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.trlInsuranceContractCsm` | null \| number \| string |  | The contractual service margin in respect of amount A of the total reserve liabilities, before the 90% factor; the engine prints 90% of it on line 108. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.trlReinsuranceContractCsm` | null \| number \| string |  | The contractual service margin of reinsurance contracts held in the total reserve liabilities, before the 90% factor; the engine prints 90% of it on line 110. A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wclLifeInsuranceContractCsm` | null \| number \| string |  | Weighted Canadian liabilities, life, accident and sickness: the contractual service margin, before the 90% factor (line 242). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wclLifeReinsuranceContractCsm` | null \| number \| string |  | Weighted Canadian liabilities, life, accident and sickness: the reinsurance contracts held contractual service margin, before the 90% factor (line 244). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wclOtherInsuranceContractCsm` | null \| number \| string |  | Weighted Canadian liabilities, other insurance: the contractual service margin, before the 90% factor (line 262). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wclOtherReinsuranceContractCsm` | null \| number \| string |  | Weighted Canadian liabilities, other insurance: the reinsurance contracts held contractual service margin, before the 90% factor (line 264). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wtlLifeInsuranceContractCsm` | null \| number \| string |  | Weighted total liabilities, life, accident and sickness: the contractual service margin in respect of C, before the 90% factor (line 202). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wtlLifeReinsuranceContractCsm` | null \| number \| string |  | Weighted total liabilities, life, accident and sickness: the reinsurance contracts held contractual service margin, before the 90% factor (line 204). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wtlOtherInsuranceContractCsm` | null \| number \| string |  | Weighted total liabilities, other insurance: the contractual service margin, before the 90% factor (line 222). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule151.wtlOtherReinsuranceContractCsm` | null \| number \| string |  | Weighted total liabilities, other insurance: the reinsurance contracts held contractual service margin, before the 90% factor (line 224). A blank amount is not nil; enter 0 for a confirmed nil amount. |
| `schedule16` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule17` | null \| object |  | Schedule 17 Credit Union Deductions input object, containing the permanent-establishment answers and the applicable deduction and continuity entries. Credit-union status comes from t2Jacket.additionalInfo.isCreditUnion. Omission supplies no Schedule 17 facts; any applicable form or continuity requirements still govern. |
| `schedule17.amount_1a_part1_total_deduction` | null \| number \| string |  | Part 1 amount 1A, line 305 plus line 315, the credit union's total payments-to-members deduction flowing to Schedule 1 line 315. The engine computes it from the per-class rows, so send it only to reconcile an imported total. |
| `schedule17.amount_2a_pra_opening_on_bc` | null \| number \| string |  | Amount 2A — PRA at end of PY incl. transfers (= 2E from PY S17, or zero if first-time ON/BC PE filer). Carries forward from line 801 via carryforward_schedule17. |
| `schedule17.amount_2f_sbd_for_tax_year` | null \| number \| string |  | Amount 2F — SBD claimed for tax year (= T2 line 430). |
| `schedule17.amount_3a_pra_opening_mb` | null \| number \| string |  | Amount 3A — MB opening PRA incl. transfers. |
| `schedule17.amount_3d_s383_amount_1e` | null \| number \| string |  | Amount 3D — MB SBD claimed (= S383 amount 1E). |
| `schedule17.amount_3j_s383_amount_1f` | null \| number \| string |  | Amount 3J — = S383 amount 1F. |
| `schedule17.hasPermanentEstablishmentBritishColumbia` | boolean \| null \| number \| string |  | True iff the corp has a permanent establishment in British Columbia. |
| `schedule17.hasPermanentEstablishmentManitoba` | boolean \| null \| number \| string |  | True iff the corp has a permanent establishment in Manitoba. Drives Part 3 applicability. |
| `schedule17.hasPermanentEstablishmentOntario` | boolean \| null \| number \| string |  | True iff the corp has a permanent establishment in Ontario. Drives Part 2 applicability (along with hasPermanentEstablishmentBritishColumbia). |
| `schedule17.line_305` | null \| number \| string |  | Line 305 — Total allocations in proportion to borrowing (sum of col 300 across rows). Practitioner may override the computed sum or leave null to defer to the engine. |
| `schedule17.line_315` | null \| number \| string |  | Line 315 — Total bonus interest payments (sum of col 310 across rows). Practitioner may override or defer to engine. |
| `schedule17.line_501` | null \| number \| string |  | Line 501 — Taxable income for tax year (= T2 line 360). |
| `schedule17.line_502` | null \| number \| string |  | Line 502 — MB taxable income (= S383 amount 1A). |
| `schedule17.line_601` | null \| number \| string |  | Line 601 — 4/3 × maximum cumulative reserve at end of tax year. MCR per s.137(6) is 5% × (debts to members + members' shares). |
| `schedule17.line_602` | null \| number \| string |  | Line 602 — 4/3 × MCR at end of tax year (typically equal to line 601). |
| `schedule17.line_626` | null \| number \| string |  | Line 626 — Min of T2 lines 400, 405, 410, 428 (federal SBD-eligibility floor that grinds the year's PRA addition). |
| `schedule17.line_651` | null \| number \| string |  | Line 651 — Amount 2D × 19% (engine-computed; override allowed). |
| `schedule17.line_652` | null \| number \| string |  | Line 652 — Amount 3H × 12% (engine-computed; feeds S383 amount 2B). |
| `schedule17.line_701` | null \| number \| string |  | Line 701 — PRA at end of PY (= PY line 801). |
| `schedule17.line_702` | null \| number \| string |  | Line 702 — MB PRA at end of PY (= PY line 802). |
| `schedule17.line_751` | null \| number \| string |  | Line 751 — PRA transferred on amalgamation or wind-up (s.87 / s.88 continuity; default zero). |
| `schedule17.line_752` | null \| number \| string |  | Line 752 — MB PRA transferred on amalgamation or wind-up. |
| `schedule17.line_801` | null \| number \| string |  | Line 801 — PRA at end of tax year (= 2E + 2I, engine-computed). |
| `schedule17.line_802` | null \| number \| string |  | Line 802 — MB PRA at end of tax year (= 3I + 3J + 3K, engine-computed). |
| `schedule17.part1AllocationRows` | array \| null |  | Per-class rows for allocations in proportion to borrowing. Each row's col 300 sums into line 305. |
| `schedule17.part1AllocationRows[]` | object |  |  |
| `schedule17.part1AllocationRows[].classDescription` | null \| string |  | Optional practitioner notes for this class row. |
| `schedule17.part1AllocationRows[].id` | null \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule17.part1AllocationRows[].line_100_interest_payable_by_members` | null \| number \| string |  | Col 100 — Interest payable BY all members of class (reference input). |
| `schedule17.part1AllocationRows[].line_200_money_borrowed_by_members` | null \| number \| string |  | Col 200 — Amount of money borrowed BY all members of class (reference input). |
| `schedule17.part1AllocationRows[].line_300_allocation_in_proportion_to_borrowing` | null \| number \| string |  | Col 300 — Allocation in proportion to borrowing for the class (deductible). |
| `schedule17.part1AllocationRows[].paymentDate` | null \| string |  | Date the payment was made to members (ISO YYYY-MM-DD). ITA s.137(2) deducts only payments "made by the credit union within the year or within 12 months thereafter". null = unanswered. |
| `schedule17.part1AllocationRows[].sameRateAttestation` | boolean \| null \| number \| string |  | Were the payments to members of this class computed at the SAME RATE? ITA s.137(6) "allocation in proportion to borrowing" admits only same-rate classes. false excludes the row from the total; null = unanswered. |
| `schedule17.part1AllocationRows[].wasDeductibleInPriorYear` | boolean \| null \| number \| string |  | Was this amount DEDUCTIBLE in computing income for a preceding tax year? ITA s.137(2) opening words. true removes the row from this year's total whether or not it was actually claimed; null = unanswered. |
| `schedule17.part1BonusInterestRows` | array \| null |  | Per-class rows for bonus interest payments. Each row's col 310 sums into line 315. |
| `schedule17.part1BonusInterestRows[]` | object |  |  |
| `schedule17.part1BonusInterestRows[].classDescription` | null \| string |  | Optional practitioner notes for this class row. |
| `schedule17.part1BonusInterestRows[].id` | null \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule17.part1BonusInterestRows[].line_110_interest_payable_to_members` | null \| number \| string |  | Col 110 — Interest payable TO all members of class (reference input). |
| `schedule17.part1BonusInterestRows[].line_210_money_on_deposit_by_members` | null \| number \| string |  | Col 210 — Amount of money on deposit BY all members of class (reference input). |
| `schedule17.part1BonusInterestRows[].line_310_bonus_interest_payments` | null \| number \| string |  | Col 310 — Bonus interest payment for the class (deductible). |
| `schedule17.part1BonusInterestRows[].paymentDate` | null \| string |  | Date the bonus interest was paid to members (ISO YYYY-MM-DD). ITA s.137(2) year-or-12-months window. null = unanswered. |
| `schedule17.part1BonusInterestRows[].sameRateAttestation` | boolean \| null \| number \| string |  | Were the bonus interest payments to this class computed at the SAME RATE? ITA s.137(6). null = unanswered. |
| `schedule17.part1BonusInterestRows[].wasDeductibleInPriorYear` | boolean \| null \| number \| string |  | Was this amount DEDUCTIBLE in computing income for a preceding tax year? ITA s.137(2). null = unanswered. |
| `schedule18` | null \| object |  | Schedule 18 Federal and Provincial/Territorial Capital Gains Refund input object. Its corporationType identifies the investment or mutual-fund corporation category used by refund and related status calculations. Omission supplies no Schedule 18 category or refund inputs; other answered return facts may still determine the applicable status. |
| `schedule18.corporationType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule18.prescribedLsvcc` | boolean \| null |  | ITA 131(8): prescribed LSVCC status throughout the current tax year. Reconciled to prescribedLsvccHistory; Yes requires a first date no later than the year start. No here does not negate earlier prescribed status under s.131(11). Null is unanswered. |
| `schedule1BookNetIncome` | null \| number \| string |  | Book net income per the financial statements, overriding the engine's own Schedule 1 netIncomePerFS for the soft tie against GIFI 3680 on Schedule 100 and GIFI 9999 on Schedule 125. Leave it out and the computed Schedule 1 value is used. |
| `schedule2` | array \| boolean \| null \| number \| object \| string |  | The target's own input blob. Omit it or send null when the form was not opened: the batch asks for it to decide whether you supplied any input for the form before it applies prior-filed continuity, and an unopened form is never read as a form full of zeros. |
| `schedule20` | null \| object |  |  |
| `schedule21` | null \| object |  | Schedule 21 practitioner-input blob. The completed batch result is rebuilt after Schedule 5 so all consumers see the same allocation and post-Division-C taxable-income inputs. |
| `schedule21._carryforwardNotes` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21._functionalCurrencyOpeningConversion` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.afbResidenceCountriesDuringYear` | array \| null |  | All residence countries at any time in the year, using two-letter codes. |
| `schedule21.afbResidenceCountriesDuringYear[]` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.canadianBankingBusinessReview` | null \| object |  |  |
| `schedule21.canadianBankingBusinessReview.businessCarriedOnThroughCanadianPe` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.businessConductedThroughRepresentativeOffice` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.isAuthorizedForeignBank` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.line300IncomeRestrictedToCanadianBankingBusiness` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts` | null \| object |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.controlledSubsidiaryOnly` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.employeeOrAgentEstablishedAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.fixedPlaceJurisdiction` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.fixedPlaceJurisdiction[]` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.fixedPlaceJurisdiction[][][]` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.generalContractingAuthorityAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.hasFixedPlaceOfBusiness` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.independentAgentOnly` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.insurerRegisteredOrLicensedJurisdictions` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.insurerRegisteredOrLicensedJurisdictions[]` | array \| null \| string |  | One entry in the stated collection. |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.insurerRegisteredOrLicensedJurisdictions[][][]` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.isInsurer` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.personOwnedStockAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.principalPlaceOfBusinessAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.purchaseOnlyOfficeOnly` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.regularlyFillsOrdersFromStockAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.substantialMachineryOrEquipmentUsedAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.treatyExists` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.treatyPermanentEstablishmentArticle` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Facts.treatyPermanentEstablishmentConclusion` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews` | array \| null |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[]` | object |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].controlledSubsidiaryOnly` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].employeeOrAgentEstablishedAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].fixedPlaceJurisdiction` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].fixedPlaceJurisdiction[]` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].fixedPlaceJurisdiction[][][]` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].generalContractingAuthorityAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].hasFixedPlaceOfBusiness` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].independentAgentOnly` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].insurerRegisteredOrLicensedJurisdictions` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].insurerRegisteredOrLicensedJurisdictions[]` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].insurerRegisteredOrLicensedJurisdictions[][][]` | array \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].isInsurer` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].personOwnedStockAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].principalPlaceOfBusinessAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].purchaseOnlyOfficeOnly` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].regularlyFillsOrdersFromStockAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].substantialMachineryOrEquipmentUsedAtTarget` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].treatyExists` | boolean \| null \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].treatyPermanentEstablishmentArticle` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.canadianBankingBusinessReview.reg8201Reviews[].treatyPermanentEstablishmentConclusion` | boolean \| null \| string |  |  |
| `schedule21.isAuthorizedForeignBank` | array \| boolean \| null \| number \| object \| string |  | When true, Part 6 uses the authorized foreign bank build-up (cells 6J/6K/6L/6M/6N) instead of the general-corp build-up (6A-6I). Driven by the Bank Act s.524 regulatory designation; no auto-detection. |
| `schedule21.isCCPC` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation was a Canadian-controlled private corporation, used only as one signal in the Schedule 21 CCPC inference when the T2 jacket corporation type is absent. The jacket answer governs when it is supplied. |
| `schedule21.line6aNetIncomeForTaxPurposes` | array \| boolean \| null \| number \| object \| string |  | Cell 6A — T2 line 300 NIFTP. Auto-fills from S1.taxableIncome (Filemark S1 names this field 'taxableIncome' but its semantic is Division B net income for tax purposes per the validator). |
| `schedule21.line6bNetCapitalLossesClaimed` | array \| boolean \| null \| number \| object \| string |  | Cell 6B — T2 line 332 net capital losses claimed under s.111(1)(b). |
| `schedule21.line6cS112_113DividendsDeductible` | array \| boolean \| null \| number \| object \| string |  | Cell 6C — Taxable dividends deductible under ss.112/113. |
| `schedule21.line6dProspectorGrubstakerShares` | array \| boolean \| null \| number \| object \| string |  | Cell 6D — T2 line 350 prospector / grubstaker shares. |
| `schedule21.line6eEmployerDeductionNQSecurities` | array \| boolean \| null \| number \| object \| string |  | Cell 6E — employer deduction for non-qualified securities (line 352). |
| `schedule21.line6gS110_5AddBack` | array \| boolean \| null \| number \| object \| string |  | Cell 6H — T2 line 355 s.110.5 add-back election. Practitioner- entered (the s.110.5 election is opt-in to inflate taxable income and absorb otherwise-unusable FTC capacity). |
| `schedule21.line6iTaxableIncomeInCanada` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line6jCanadianBankingIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line6kS115AddBack` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line7aBaseT2Line550` | array \| boolean \| null \| number \| object \| string |  | Cell 7A — T2 line 550 base Part I tax. |
| `schedule21.line7bAbatementT2Line608` | array \| boolean \| null \| number \| object \| string |  | Cell 7B — T2 line 608 federal tax abatement. |
| `schedule21.line7cInvCorpDeductionT2Line620` | array \| boolean \| null \| number \| object \| string |  | Cell 7C — T2 line 620 investment corporation deduction. |
| `schedule21.line7dGeneralTaxReductionT2Line639` | array \| boolean \| null \| number \| object \| string |  | Cell 7D — T2 line 639 general tax reduction. |
| `schedule21.line7fAdditionalTaxPSBT2Line560` | array \| boolean \| null \| number \| object \| string |  | Cells 7F-7H — rev-26 tax add-backs from T2 lines 560/565/580. |
| `schedule21.line7fRecaptureITCT2Line602` | array \| boolean \| null \| number \| object \| string |  | Cell 7I — T2 line 602 recapture of ITC. |
| `schedule21.line7gAdditionalTaxBanksLifeT2Line565` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line7gCCPCRefundableTaxInvIncomeT2Line604` | array \| boolean \| null \| number \| object \| string |  | Cell 7J — T2 line 604 refundable tax on CCPC investment income (s.123.3 ART). |
| `schedule21.line7hLabourRequirementsAdditionT2Line580` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line8aBaseT2Line550` | array \| boolean \| null \| number \| object \| string |  | Cells 8A/8B/8D/8F/8G/8H/8I default to matching Part 7 sources if left null. Cell 8C is the CCPC-specific general tax reduction (T2 line 638) — a SEPARATE deduction from 8D. |
| `schedule21.line8bInvCorpDeductionT2Line620` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line8cCCPCGeneralTaxReductionT2Line638` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line8dGeneralTaxReductionT2Line639` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line8fAdditionalTaxPSBT2Line560` | array \| boolean \| null \| number \| object \| string |  | Cells 8F-8H — explicit overrides; null inherits the matching Part 7 value. |
| `schedule21.line8fRecaptureITCT2Line602` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line8gAdditionalTaxBanksLifeT2Line565` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.line8hLabourRequirementsAdditionT2Line580` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows` | array \| null |  |  |
| `schedule21.part1Rows[]` | object |  | One entry in the stated collection. |
| `schedule21.part1Rows[].claimedAmountOverride` | array \| boolean \| null \| number \| object \| string |  | The ITA s.126(1)(a) claim election for this country row: the lesser amount claimed instead of the full deductible Column 1I non-business foreign tax credit, in dollars. Null claims the full amount. It is a money amount, not a flag: two rows for the same country each electing $5,000 merge to a $10,000 claim for that country, and a bucket where some rows elect and others do not is a filing blocker rather than a silent maximum. |
| `schedule21.part1Rows[].col1b_netForeignNonBusinessIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].col1c_foreignNonBusinessTaxPaid` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].col1d_s20_12Deduction` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].country` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].foreignAffiliateShareIncome` | array \| boolean \| null \| number \| object \| string |  | Whether the Column 1C foreign non-business income tax relates to income from a share of a foreign affiliate. ITA 20(12) denies the deduction for that tax, so a positive Column 1D claim needs this answer: No, the wholly choice, or the partial choice with the excluded portion. An unanswered or unrecognized answer holds the claim rather than allowing it. |
| `schedule21.part1Rows[].foreignAffiliateSharePortion` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].id` | array \| boolean \| null \| number \| object \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule21.part1Rows[].resourceDeductionIncluded` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].resourceIncomeBasis` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].s126_4TaxCreditGeneratorApplies` | array \| boolean \| null \| number \| object \| string |  | ITA s.126(4) foreign-tax-credit-generator exclusion. Mandatory Yes/No: the engine computes no exclusion, so an unanswered fact refuses Column 1C rather than reading as No. |
| `schedule21.part1Rows[].s126_4_11PartnershipMismatchApplies` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].s126_4_1NoEconomicProfitApplies` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].s126_4_2ShortTermSecurityCapApplies` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part1Rows[].s126_4_3ShortTermSecurityCapExceptionApplies` | array \| boolean \| null \| number \| object \| string |  | Whether the s.126(4.3) exception applies when the s.126(4.2) short-term-security cap applies. |
| `schedule21.part1Rows[].treatyAssessment` | null \| object |  | Optional inbound treaty-ceiling assessment for this entire homogeneous row. The catalog inventories93 active agreements plus suspended Russia; verified ordinary categories carry exact rates, unresolved MFN/definition/nonfixed categories remain held. Omission and absent/nonapplicable treaties retain the entered tax with an advisory; incomplete known-treaty facts and excess tax withhold the current tax operand and block filing. No excess is automatically deducted under s.20(12). |
| `schedule21.part1Rows[].treatyAssessment.beneficialOwnerConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm the corporation is the beneficial owner of the income. |
| `schedule21.part1Rows[].treatyAssessment.canadianResidenceConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm Canadian residence under the applicable treaty; reconcile any conflicting T2 box 080 answer. |
| `schedule21.part1Rows[].treatyAssessment.capitalContributedFromAbroad` | array \| boolean \| null \| number \| object \| string |  | For Sri Lankan dividends, whether the relevant shares represent capital contributed from abroad; combine with the full contribution date. |
| `schedule21.part1Rows[].treatyAssessment.capitalContributionDate` | array \| boolean \| null \| number \| object \| string |  | Full ISOdate of the foreign capital contribution represented by the Sri Lankan dividend shares; qualification begins1983-01-01. |
| `schedule21.part1Rows[].treatyAssessment.capitalOwnershipPct` | array \| boolean \| null \| number \| object \| string |  | Direct or indirect capital ownership percentage in the French dividend payer, 0-100; France uses capital rather than votes for inbound corporate dividends. |
| `schedule21.part1Rows[].treatyAssessment.chileFirstCategoryTaxCreditable` | array \| boolean \| null \| number \| object \| string |  | Whether Chilean first-category tax is deductible against additional shareholder tax; that integrated branch has no treaty gross-rate ceiling and does not make payer tax tax paid by this recipient. |
| `schedule21.part1Rows[].treatyAssessment.countrySpecificConditionsConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm that the selected profile category satisfies its source-country rate, ownership measure, definition and exemption conditions, including current protocol and MFN conditions. This is a declaration that the conditions are met, not merely that a document was consulted. Unresolved catalog rates stay held even when true. |
| `schedule21.part1Rows[].treatyAssessment.cyprusAdditionalDividendTaxApplies` | array \| boolean \| null \| number \| object \| string |  | Reviewed applicability of Cyprus additional-dividend taxation to this payment under Art.10(3), including current targeted tax rules; No selects the conditional exemption, Yes the ordinary treaty ceiling. |
| `schedule21.part1Rows[].treatyAssessment.debtSecuredByImmovableMortgage` | array \| boolean \| null \| number \| object \| string |  | Whether Egyptian interest is on debt secured by mortgage on immovable property; Yes moves it to Art.6 with no fixed treaty interest percentage ceiling. |
| `schedule21.part1Rows[].treatyAssessment.dividendDeductiblePortionCAD` | array \| boolean \| null \| number \| object \| string |  | Gross Icelandic dividend portion deductible or carried forward by its payer, from zero through gross dividends, in the return reporting currency and on the same basis as the tax columns. That portion uses15%while a qualifying remainder uses5%; historical CAD key spelling is retained. |
| `schedule21.part1Rows[].treatyAssessment.dividendEquityPercentage` | array \| boolean \| null \| number \| object \| string |  | Brazil treaty equity percentage,0-100, certified under the treaty metric rather than inferred from voting power; below10% the treaty imposes no fixed dividend ceiling. |
| `schedule21.part1Rows[].treatyAssessment.dividendHoldingPeriodConfirmed` | array \| boolean \| null \| number \| object \| string |  | Whether the qualifying ownership and applicable bilateral/MLI holding-period conditions are met. Japan requires the bilateral six months immediately before the distribution accounting period ends; no blanket MLI condition is inferred. |
| `schedule21.part1Rows[].treatyAssessment.dividendInvestedCapitalUSDAtDeclaration` | array \| boolean \| null \| number \| object \| string |  | For Armenia, invested capital in USD or certified currency equivalent when dividends were declared; qualifying directcapital25% plus investment strictly aboveUSD100,000 permits5%. |
| `schedule21.part1Rows[].treatyAssessment.dividendSharesFromTaxedCapitalization` | array \| boolean \| null \| number \| object \| string |  | Whether Sri Lankan shares were issued out of company capital/surpluses and the issued shares were already taxed as dividends under Protocol2(a). |
| `schedule21.part1Rows[].treatyAssessment.dividendSingleTier` | array \| boolean \| null \| number \| object \| string |  | Confirm an ordinary Malaysian single-tier dividend to a corporate recipient; the verified branch is exempt. Historical imputation regimes need separate analysis. |
| `schedule21.part1Rows[].treatyAssessment.dividendTakeoverCausedNetCapitalFlow` | array \| boolean \| null \| number \| object \| string |  | Whether the Canadian resident acquired Sri Lankan shares through a takeover producing net capital inflow into Sri Lanka under Protocol2(b). |
| `schedule21.part1Rows[].treatyAssessment.effectivelyConnectedToForeignPE` | array \| boolean \| null \| number \| object \| string |  | Whether the payment is effectively connected to a source-country permanent establishment or fixed base; true or unanswered holds the gross-rate ceiling. |
| `schedule21.part1Rows[].treatyAssessment.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Audit reference to payment, residence, classification and treaty-entitlement evidence; a reference alone does not establish entitlement. |
| `schedule21.part1Rows[].treatyAssessment.exemptionConditionsConfirmed` | array \| boolean \| null \| number \| object \| string |  | Whether a special government, export-credit, credit-sale, film, transport-equipment or other exemption outside the selected ordinary category applies. False is required for non-US ordinary interest and royalties; true or unanswered is held for separate analysis. |
| `schedule21.part1Rows[].treatyAssessment.fullyFranked` | array \| boolean \| null \| number \| object \| string |  | Whether the Australian dividend is fully franked. The inbound 5% treaty ceiling requires this and qualifying direct corporate voting ownership. |
| `schedule21.part1Rows[].treatyAssessment.grossIncomeCAD` | array \| boolean \| null \| number \| object \| string |  | Gross amount of this payment category in the return reporting currency, on the same basis as Columns1B/1C or2B/2C. Historical CAD key spelling is retained; no separate FX conversion is performed. The ceiling uses gross, not net income. |
| `schedule21.part1Rows[].treatyAssessment.incomeTaxableInCanadaConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm the payment is taxable in Canada for conditional subject-to-tax treaty clauses. Required for the standard non-US corporate profile; tax-exempt recipient cases require separate analysis. |
| `schedule21.part1Rows[].treatyAssessment.incomeType` | array \| boolean \| null \| number \| object \| string |  | One homogeneous dividend, interest or royalty category. Mixed income and PE profits require separate analysis; duplicate country rows are aggregated after this screen. |
| `schedule21.part1Rows[].treatyAssessment.interestArmsLength` | array \| boolean \| null \| number \| object \| string |  | Whether ordinary nonparticipating interest meets the treaty's arm's-length/unrelated test. UK, Hong Kong, Spain and Switzerland have nil-source-tax branches; Switzerland uses its own related-person definition. |
| `schedule21.part1Rows[].treatyAssessment.interestKind` | array \| boolean \| null \| number \| object \| string |  | ordinary, us-contingent-non-portfolio, remic-excess-inclusion, or exempt. U.S. non-portfolio contingent interest uses Art.XI(6)(a); REMIC and other special exemptions are held for separate analysis. |
| `schedule21.part1Rows[].treatyAssessment.interestParticipating` | array \| boolean \| null \| number \| object \| string |  | Whether any Israeli interest is participating/contingent under Art.11(4); the arm's-length financial-institution5%branch requires No. |
| `schedule21.part1Rows[].treatyAssessment.loanMoneyReceivedFromAbroad` | array \| boolean \| null \| number \| object \| string |  | Whether the Sri Lankan interest debt/security arose from money received from abroad; combine with its receipt date. |
| `schedule21.part1Rows[].treatyAssessment.loanMoneyReceivedFromAbroadDate` | array \| boolean \| null \| number \| object \| string |  | Full ISOdate when foreign money supporting the Sri Lankan debt/security was received; the15%branch begins1983-01-01. |
| `schedule21.part1Rows[].treatyAssessment.maltaIndustrialIncentiveDividend` | array \| boolean \| null \| number \| object \| string |  | Whether the Maltese dividend uses the special1959industrial-incentive FifthSchedule branch. Its applicable currentlegalparameter remains held; ordinarydividends use documented allocated underlying-profit tax. |
| `schedule21.part1Rows[].treatyAssessment.maltaTaxOnUnderlyingProfitSliceCAD` | array \| boolean \| null \| number \| object \| string |  | Maltese tax chargeable on the exact underlying profit slice funding this recipient's dividend, in the return reporting currency on the same basis as Columns1B/1C or2B/2C. This allocated amount is the ordinary absolute ceiling, not totalpayer tax; historical CAD key spelling is retained. |
| `schedule21.part1Rows[].treatyAssessment.ordinaryPayerConfirmed` | array \| boolean \| null \| number \| object \| string |  | For dividends, confirm an ordinary corporate distribution. U.S. RIC/REIT and German deductible profit-participating distributions need separate analysis. |
| `schedule21.part1Rows[].treatyAssessment.payerHasVotingStock` | array \| boolean \| null \| number \| object \| string |  | For historical Russian dividends, whether the payer has voting stock. Yes uses owned voting-stock percentage; No uses the statutory-capital alternative under Art.10(2)(a). |
| `schedule21.part1Rows[].treatyAssessment.payerIsForeignAffiliate` | array \| boolean \| null \| number \| object \| string |  | Whether the Jamaican payer is a foreign affiliate under Canadian law; an alternative to10%voting control for the22.5%dividend branch. |
| `schedule21.part1Rows[].treatyAssessment.payerIsIndustrialUndertaking` | array \| boolean \| null \| number \| object \| string |  | Whether the Pakistani or Thai dividend payer qualifies as an industrial undertaking under that treaty; applicable with qualifying capital ownership. |
| `schedule21.part1Rows[].treatyAssessment.payerRelatedToRecipient` | array \| boolean \| null \| number \| object \| string |  | For Russian patent/knowhow and Kyrgyz or Venezuelan software/patent/knowhow, whether payer and recipient are related/associated under that treaty's definition. Yes uses10%; No can qualify for the nil or5% branch, independently of special-relationship excess. |
| `schedule21.part1Rows[].treatyAssessment.payerTaxedAtGeneralProfitsRate` | array \| boolean \| null \| number \| object \| string |  | Whether the Ivory Coast payer is subject to profits tax at the general-law rate; determines15% versus18% under Art.X(2). |
| `schedule21.part1Rows[].treatyAssessment.payerUnderlyingProfitsTaxed` | array \| boolean \| null \| number \| object \| string |  | Whether Colombian underlying profits are outside the untaxed-profit Protocol1(e) override; No means the specific protocol exemption/max-untaxed-profit condition applies, not merely that payer cash tax happened to be zero. |
| `schedule21.part1Rows[].treatyAssessment.paymentDate` | array \| boolean \| null \| number \| object \| string |  | Full YYYY-MM-DD payment date in the verified 2023-2027 treaty horizon. |
| `schedule21.part1Rows[].treatyAssessment.paymentDeductibleByPayer` | array \| boolean \| null \| number \| object \| string |  | Whether this entire Cameroon royalty is deductible as a source-country payer cost; split partially deductible treatment into separate homogeneous rows. |
| `schedule21.part1Rows[].treatyAssessment.peruTaxStabilityContractApplies` | array \| boolean \| null \| number \| object \| string |  | Whether a Peruvian tax-stability contract changes the ordinary treaty treatment under Protocol4; explicitNo is required for the verified ordinary MFN rates. |
| `schedule21.part1Rows[].treatyAssessment.recipientIsFinancialInstitution` | array \| boolean \| null \| number \| object \| string |  | Whether the Canadian beneficial-owner recipient is a qualifying financial institution; Thailand includes insurers. This is not the foreign payer or payment bank. |
| `schedule21.part1Rows[].treatyAssessment.royaltyContractDate` | array \| boolean \| null \| number \| object \| string |  | Full ISOdate of the Sri Lankan new-technology royalty contract; the10%branch begins1983-01-01. |
| `schedule21.part1Rows[].treatyAssessment.royaltyKind` | array \| boolean \| null \| number \| object \| string |  | copyright (excluding film/TV), software, patent, knowhow (excluding rental/franchise information), trademark, film, equipment, or other. Australian software classification requires separate analysis. |
| `schedule21.part1Rows[].treatyAssessment.royaltyNewTechnologyContract` | array \| boolean \| null \| number \| object \| string |  | Whether the Sri Lankan royalty is under a contract involving new technology; combine with contract date for the10%branch. |
| `schedule21.part1Rows[].treatyAssessment.royaltySoftwareIsApplication` | array \| boolean \| null \| number \| object \| string |  | For Kyrgyz software royalties, whether the rights concern application software. System/other software does not qualify for the Art.12(3)(b) nil category. |
| `schedule21.part1Rows[].treatyAssessment.royaltyTaxableInCanadaConfirmed` | array \| boolean \| null \| number \| object \| string |  | For French royalties, confirm taxability in Canada for Art.12(2). |
| `schedule21.part1Rows[].treatyAssessment.sourceCountryConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm the treaty source country and that this foreign tax is covered by that treaty. State/local taxes and tax-sparing amounts require separate analysis. |
| `schedule21.part1Rows[].treatyAssessment.specialRelationshipExcess` | array \| boolean \| null \| number \| object \| string |  | Whether interest or royalty includes a special-relationship excess above the arm's-length amount; false required for the ordinary ceiling. |
| `schedule21.part1Rows[].treatyAssessment.stockValueOwnershipPct` | array \| boolean \| null \| number \| object \| string |  | Percentage of the value of all issued/outstanding stock, 0-100, for Kuwait's alternative corporate dividend test; this differs from voting and capital percentages. |
| `schedule21.part1Rows[].treatyAssessment.treatyEntitlementConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm all applicable entitlement rules, including limitation on benefits, principal-purpose/anti-abuse tests, transparent-entity derivation and third-country permanent-establishment restrictions. |
| `schedule21.part1Rows[].treatyAssessment.votingOwnershipPct` | array \| boolean \| null \| number \| object \| string |  | Corporate voting ownership percentage, 0-100. Australia requires direct voting power; Japan requires qualifying voting shares; other treaties use their stated ownership/control test. |
| `schedule21.part1Rows[].usIncomeAnalysis` | null \| object |  | Optional reviewed U.S. income and netting analysis for this U.S. country row. Amounts use the return reporting currency. Entered country totals remain reconciliation inputs; null totals allow Schedule 21 to derive them from reviewed components. Incomplete evidence is held. |
| `schedule21.part1Rows[].usIncomeAnalysis.canadianResidentConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm Canadian residence under domestic law for the s.126 analysis. |
| `schedule21.part1Rows[].usIncomeAnalysis.canadianTreatyResidentConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm Canadian residence under the Canada-U.S. treaty for any Article XXIV(3) source basis. |
| `schedule21.part1Rows[].usIncomeAnalysis.components` | array \| null |  | Complete list of reviewed income components for this U.S. country row. Include expenses and current qualifying losses on the Canadian-law basis. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[]` | object |  | One identified U.S. income component with Canadian-law income character, source facts, income and deductions, eligible tax evidence and any actual s.20(12) election. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].allocatedExpenses` | array \| boolean \| null \| number \| object \| string |  | Allocated expenses attributable to this component before s.20(12), without overlap with direct expenses or losses. Enter explicit zero where nil. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].claimedSection20_12` | array \| boolean \| null \| number \| object \| string |  | Actual s.20(12) deduction elected for this component, including explicit zero when nil. This election is not derived from tax paid. Claims against pure taxable capital gains are unsupported. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].coveredTreatyExemptionApplies` | array \| boolean \| null \| number \| object \| string |  | Explicit answer whether a covered treaty exemption applies to this component. This fact is reviewed for every component, including domestic-source income, for the s.126(7) tax-exempt-income rule. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].currentQualifyingLosses` | array \| boolean \| null \| number \| object \| string |  | Current qualifying losses attributable to this component before s.20(12), without overlap with entered expenses. Enter explicit zero where nil. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].directExpenses` | array \| boolean \| null \| number \| object \| string |  | Direct expenses attributable to this component before s.20(12), without overlap with allocated expenses or losses. Enter explicit zero where nil. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].domesticSourceCountry` | array \| boolean \| null \| number \| object \| string |  | Two-letter ISO country code of the component's source under Canadian domestic law, before any Canada-U.S. Article XXIV(3) source treatment. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Evidence reference supporting this component's Canadian-law income, expenses, losses, source basis, tax and any actual s.20(12) election. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].federalIncomeTaxPaid` | array \| boolean \| null \| number \| object \| string |  | U.S. federal income tax paid for this component in the return reporting currency. Ordinary treaty payment screening is separate from state/local tax. Enter explicit zero where nil. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].foreignAffiliateShareIncome` | array \| boolean \| null \| number \| object \| string |  | Explicit answer whether this component is income from foreign-affiliate shares; such income is excluded from the applicable foreign non-business income basis. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].foreignDebtorInterest126_6_d` | array \| boolean \| null \| number \| object \| string |  | Reviewed applicability of the foreign-debtor interest rule in s.126(6)(d). |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].grossCanadianIncome` | array \| boolean \| null \| number \| object \| string |  | Gross income under Canadian law before direct expenses, allocated expenses, current qualifying losses and the actual s.20(12) election. For capital gains, enter the Canadian taxable capital gain, not gross proceeds. Enter explicit zero where nil. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].includedInCanadianIncome` | array \| boolean \| null \| number \| object \| string |  | Explicit answer whether this component is included in the corporation's Canadian income. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].incomeCharacter` | array \| boolean \| null \| number \| object \| string |  | Canadian-law income character: property, business or taxable_capital_gain. Capital-gain amounts are Canadian taxable capital gains, not sale proceeds. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].nonTreatyIncomeProfitsTaxImposed` | array \| boolean \| null \| number \| object \| string |  | Explicit reviewed answer whether income or profits tax is imposed on this component outside the treaty. Required even for domestic-source income when assessing s.126(7) tax-exempt income. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].nonTreatyTaxedIncomePortion` | array \| boolean \| null \| number \| object \| string |  | For covered treaty-exempt income on which tax is imposed outside the treaty, the gross Canadian income portion subject to that tax. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].qualifyingAllocatedExpenses` | array \| boolean \| null \| number \| object \| string |  | When only part of covered treaty-exempt income is taxed outside the treaty, allocated expenses attributable to that taxed portion. Required for the partial portion and ignored otherwise. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].qualifyingDirectExpenses` | array \| boolean \| null \| number \| object \| string |  | When only part of covered treaty-exempt income is taxed outside the treaty, direct expenses attributable to that taxed portion. Required for the partial portion and ignored otherwise. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].qualifyingLosses` | array \| boolean \| null \| number \| object \| string |  | When only part of covered treaty-exempt income is taxed outside the treaty, current qualifying losses attributable to that taxed portion. Required for the partial portion and ignored otherwise. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].recordId` | array \| boolean \| null \| number \| object \| string |  | Unique evidence identifier for this income component within the U.S. country analysis. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].sourceBasis` | array \| boolean \| null \| number \| object \| string |  | Reviewed source basis: domestic_s126 for Canadian domestic law or canada_us_xxiv3 for the Canada-U.S. treaty Article XXIV(3) rule. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].stateLocalIncomeTaxPaid` | array \| boolean \| null \| number \| object \| string |  | U.S. state/local income tax paid for this component in the return reporting currency. Eligibility requires a separate review against the actual law and treaty; federal tax eligibility does not establish it. Enter explicit zero where nil. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].stateLocalJurisdiction` | array \| boolean \| null \| number \| object \| string |  | State/local taxing jurisdiction supporting positive state/local income tax and its eligibility review. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].stateLocalTaxEligibilityReviewed` | array \| boolean \| null \| number \| object \| string |  | For positive state/local income tax, explicitly confirm eligibility was reviewed against the actual jurisdiction's income-tax law. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].stateLocalTreatyConsistent` | array \| boolean \| null \| number \| object \| string |  | For positive state/local income tax using an Article XXIV(3) source basis, explicitly confirm the Article XXIV(7) consistency review. This confirmation is not required for standalone domestic s.126 state/local tax relief. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].treatyArticle` | array \| boolean \| null \| number \| object \| string |  | Treaty article supporting the U.S. taxing right for an Article XXIV(3) source basis or positive federal income tax. Federal dividends, interest and royalties also require the row's ordinary treaty assessment and reconciliation to the combined federal-taxed gross income. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].usBusinessCarriedOn` | array \| boolean \| null \| number \| object \| string |  | For business income, explicit answer whether the business is carried on in the U.S. on the reviewed s.126 basis. |
| `schedule21.part1Rows[].usIncomeAnalysis.components[].usMayTaxUnderTreaty` | array \| boolean \| null \| number \| object \| string |  | Explicit reviewed answer whether the U.S. may tax this component under the applicable treaty article. A payment of U.S. tax does not establish that right. |
| `schedule21.part1Rows[].usIncomeAnalysis.countryWideSourceBasisReviewed` | array \| boolean \| null \| number \| object \| string |  | Confirm the complete country-wide Canadian-law income, loss and source analysis, including the applicability of domestic and treaty source bases. |
| `schedule21.part1Rows[].usIncomeAnalysis.deductionsReviewedWithoutOverlap` | array \| boolean \| null \| number \| object \| string |  | Confirm direct expenses, allocated expenses and current qualifying losses are entered before s.20(12) and do not overlap or duplicate deductions. |
| `schedule21.part1Rows[].usIncomeAnalysis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Preparer evidence reference supporting the complete U.S. source, netting and tax-eligibility review. |
| `schedule21.part1Rows[].usIncomeAnalysis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Three-letter return reporting currency used for all component income, expenses, losses, tax and actual s.20(12) elections. Convert source amounts before entry. |
| `schedule21.part1Rows[].usIncomeAnalysis.reviewComplete` | array \| boolean \| null \| number \| object \| string |  | Explicit confirmation that the complete U.S. income and netting analysis has been reviewed. Unanswered and No keep the calculation held. |
| `schedule21.part1Rows[].usIncomeAnalysis.treatyEntitlementConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm treaty entitlement, including the limitation-on-benefits review, for any Article XXIV(3) source basis. |
| `schedule21.part2Rows` | array \| null |  | Business-income foreign tax credits by country, with the eligibility facts and amounts used in Part 2. |
| `schedule21.part2Rows[]` | object |  | One entry in the stated collection. |
| `schedule21.part2Rows[].claimedAmountOverride` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part2Rows[].col2b_netForeignBusinessIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part2Rows[].col2c_foreignBusinessTaxPaid` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part2Rows[].col2d_unusedFTCPreviousYears` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part2Rows[].country` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part2Rows[].id` | array \| boolean \| null \| number \| object \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule21.part2Rows[].resourceDeductionIncluded` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part2Rows[].resourceIncomeBasis` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part2Rows[].s126_4TaxCreditGeneratorApplies` | array \| boolean \| null \| number \| object \| string |  | ITA s.126(4) foreign-tax-credit-generator exclusion. |
| `schedule21.part2Rows[].s126_4_11PartnershipMismatchApplies` | array \| boolean \| null \| number \| object \| string |  | ITA s.126(4.11) partnership-allocation exclusion. |
| `schedule21.part2Rows[].s126_4_1NoEconomicProfitApplies` | array \| boolean \| null \| number \| object \| string |  | ITA s.126(4.1) no-economic-profit exclusion. |
| `schedule21.part2Rows[].s126_4_2ShortTermSecurityCapApplies` | array \| boolean \| null \| number \| object \| string |  | ITA s.126(4.2) short-term-security cap. |
| `schedule21.part2Rows[].s126_4_3ShortTermSecurityCapExceptionApplies` | array \| boolean \| null \| number \| object \| string |  | ITA s.126(4.3) exception, demanded only when s126_4_2ShortTermSecurityCapApplies is true. |
| `schedule21.part2Rows[].treatyAssessment` | null \| object |  | Optional inbound treaty-ceiling assessment for this entire homogeneous row. The catalog inventories93 active agreements plus suspended Russia; verified ordinary categories carry exact rates, unresolved MFN/definition/nonfixed categories remain held. Omission and absent/nonapplicable treaties retain the entered tax with an advisory; incomplete known-treaty facts and excess tax withhold the current tax operand and block filing. No excess is automatically deducted under s.20(12). |
| `schedule21.part2Rows[].treatyAssessment.beneficialOwnerConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm the corporation is the beneficial owner of the income. |
| `schedule21.part2Rows[].treatyAssessment.canadianResidenceConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm Canadian residence under the applicable treaty; reconcile any conflicting T2 box 080 answer. |
| `schedule21.part2Rows[].treatyAssessment.capitalContributedFromAbroad` | array \| boolean \| null \| number \| object \| string |  | For Sri Lankan dividends, whether the relevant shares represent capital contributed from abroad; combine with the full contribution date. |
| `schedule21.part2Rows[].treatyAssessment.capitalContributionDate` | array \| boolean \| null \| number \| object \| string |  | Full ISOdate of the foreign capital contribution represented by the Sri Lankan dividend shares; qualification begins1983-01-01. |
| `schedule21.part2Rows[].treatyAssessment.capitalOwnershipPct` | array \| boolean \| null \| number \| object \| string |  | Direct or indirect capital ownership percentage in the French dividend payer, 0-100; France uses capital rather than votes for inbound corporate dividends. |
| `schedule21.part2Rows[].treatyAssessment.chileFirstCategoryTaxCreditable` | array \| boolean \| null \| number \| object \| string |  | Whether Chilean first-category tax is deductible against additional shareholder tax; that integrated branch has no treaty gross-rate ceiling and does not make payer tax tax paid by this recipient. |
| `schedule21.part2Rows[].treatyAssessment.countrySpecificConditionsConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm that the selected profile category satisfies its source-country rate, ownership measure, definition and exemption conditions, including current protocol and MFN conditions. This is a declaration that the conditions are met, not merely that a document was consulted. Unresolved catalog rates stay held even when true. |
| `schedule21.part2Rows[].treatyAssessment.cyprusAdditionalDividendTaxApplies` | array \| boolean \| null \| number \| object \| string |  | Reviewed applicability of Cyprus additional-dividend taxation to this payment under Art.10(3), including current targeted tax rules; No selects the conditional exemption, Yes the ordinary treaty ceiling. |
| `schedule21.part2Rows[].treatyAssessment.debtSecuredByImmovableMortgage` | array \| boolean \| null \| number \| object \| string |  | Whether Egyptian interest is on debt secured by mortgage on immovable property; Yes moves it to Art.6 with no fixed treaty interest percentage ceiling. |
| `schedule21.part2Rows[].treatyAssessment.dividendDeductiblePortionCAD` | array \| boolean \| null \| number \| object \| string |  | Gross Icelandic dividend portion deductible or carried forward by its payer, from zero through gross dividends, in the return reporting currency and on the same basis as the tax columns. That portion uses15%while a qualifying remainder uses5%; historical CAD key spelling is retained. |
| `schedule21.part2Rows[].treatyAssessment.dividendEquityPercentage` | array \| boolean \| null \| number \| object \| string |  | Brazil treaty equity percentage,0-100, certified under the treaty metric rather than inferred from voting power; below10% the treaty imposes no fixed dividend ceiling. |
| `schedule21.part2Rows[].treatyAssessment.dividendHoldingPeriodConfirmed` | array \| boolean \| null \| number \| object \| string |  | Whether the qualifying ownership and applicable bilateral/MLI holding-period conditions are met. Japan requires the bilateral six months immediately before the distribution accounting period ends; no blanket MLI condition is inferred. |
| `schedule21.part2Rows[].treatyAssessment.dividendInvestedCapitalUSDAtDeclaration` | array \| boolean \| null \| number \| object \| string |  | For Armenia, invested capital in USD or certified currency equivalent when dividends were declared; qualifying directcapital25% plus investment strictly aboveUSD100,000 permits5%. |
| `schedule21.part2Rows[].treatyAssessment.dividendSharesFromTaxedCapitalization` | array \| boolean \| null \| number \| object \| string |  | Whether Sri Lankan shares were issued out of company capital/surpluses and the issued shares were already taxed as dividends under Protocol2(a). |
| `schedule21.part2Rows[].treatyAssessment.dividendSingleTier` | array \| boolean \| null \| number \| object \| string |  | Confirm an ordinary Malaysian single-tier dividend to a corporate recipient; the verified branch is exempt. Historical imputation regimes need separate analysis. |
| `schedule21.part2Rows[].treatyAssessment.dividendTakeoverCausedNetCapitalFlow` | array \| boolean \| null \| number \| object \| string |  | Whether the Canadian resident acquired Sri Lankan shares through a takeover producing net capital inflow into Sri Lanka under Protocol2(b). |
| `schedule21.part2Rows[].treatyAssessment.effectivelyConnectedToForeignPE` | array \| boolean \| null \| number \| object \| string |  | Whether the payment is effectively connected to a source-country permanent establishment or fixed base; true or unanswered holds the gross-rate ceiling. |
| `schedule21.part2Rows[].treatyAssessment.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Audit reference to payment, residence, classification and treaty-entitlement evidence; a reference alone does not establish entitlement. |
| `schedule21.part2Rows[].treatyAssessment.exemptionConditionsConfirmed` | array \| boolean \| null \| number \| object \| string |  | Whether a special government, export-credit, credit-sale, film, transport-equipment or other exemption outside the selected ordinary category applies. False is required for non-US ordinary interest and royalties; true or unanswered is held for separate analysis. |
| `schedule21.part2Rows[].treatyAssessment.fullyFranked` | array \| boolean \| null \| number \| object \| string |  | Whether the Australian dividend is fully franked. The inbound 5% treaty ceiling requires this and qualifying direct corporate voting ownership. |
| `schedule21.part2Rows[].treatyAssessment.grossIncomeCAD` | array \| boolean \| null \| number \| object \| string |  | Gross amount of this payment category in the return reporting currency, on the same basis as Columns1B/1C or2B/2C. Historical CAD key spelling is retained; no separate FX conversion is performed. The ceiling uses gross, not net income. |
| `schedule21.part2Rows[].treatyAssessment.incomeTaxableInCanadaConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm the payment is taxable in Canada for conditional subject-to-tax treaty clauses. Required for the standard non-US corporate profile; tax-exempt recipient cases require separate analysis. |
| `schedule21.part2Rows[].treatyAssessment.incomeType` | array \| boolean \| null \| number \| object \| string |  | One homogeneous dividend, interest or royalty category. Mixed income and PE profits require separate analysis; duplicate country rows are aggregated after this screen. |
| `schedule21.part2Rows[].treatyAssessment.interestArmsLength` | array \| boolean \| null \| number \| object \| string |  | Whether ordinary nonparticipating interest meets the treaty's arm's-length/unrelated test. UK, Hong Kong, Spain and Switzerland have nil-source-tax branches; Switzerland uses its own related-person definition. |
| `schedule21.part2Rows[].treatyAssessment.interestKind` | array \| boolean \| null \| number \| object \| string |  | ordinary, us-contingent-non-portfolio, remic-excess-inclusion, or exempt. U.S. non-portfolio contingent interest uses Art.XI(6)(a); REMIC and other special exemptions are held for separate analysis. |
| `schedule21.part2Rows[].treatyAssessment.interestParticipating` | array \| boolean \| null \| number \| object \| string |  | Whether any Israeli interest is participating/contingent under Art.11(4); the arm's-length financial-institution5%branch requires No. |
| `schedule21.part2Rows[].treatyAssessment.loanMoneyReceivedFromAbroad` | array \| boolean \| null \| number \| object \| string |  | Whether the Sri Lankan interest debt/security arose from money received from abroad; combine with its receipt date. |
| `schedule21.part2Rows[].treatyAssessment.loanMoneyReceivedFromAbroadDate` | array \| boolean \| null \| number \| object \| string |  | Full ISOdate when foreign money supporting the Sri Lankan debt/security was received; the15%branch begins1983-01-01. |
| `schedule21.part2Rows[].treatyAssessment.maltaIndustrialIncentiveDividend` | array \| boolean \| null \| number \| object \| string |  | Whether the Maltese dividend uses the special1959industrial-incentive FifthSchedule branch. Its applicable currentlegalparameter remains held; ordinarydividends use documented allocated underlying-profit tax. |
| `schedule21.part2Rows[].treatyAssessment.maltaTaxOnUnderlyingProfitSliceCAD` | array \| boolean \| null \| number \| object \| string |  | Maltese tax chargeable on the exact underlying profit slice funding this recipient's dividend, in the return reporting currency on the same basis as Columns1B/1C or2B/2C. This allocated amount is the ordinary absolute ceiling, not totalpayer tax; historical CAD key spelling is retained. |
| `schedule21.part2Rows[].treatyAssessment.ordinaryPayerConfirmed` | array \| boolean \| null \| number \| object \| string |  | For dividends, confirm an ordinary corporate distribution. U.S. RIC/REIT and German deductible profit-participating distributions need separate analysis. |
| `schedule21.part2Rows[].treatyAssessment.payerHasVotingStock` | array \| boolean \| null \| number \| object \| string |  | For historical Russian dividends, whether the payer has voting stock. Yes uses owned voting-stock percentage; No uses the statutory-capital alternative under Art.10(2)(a). |
| `schedule21.part2Rows[].treatyAssessment.payerIsForeignAffiliate` | array \| boolean \| null \| number \| object \| string |  | Whether the Jamaican payer is a foreign affiliate under Canadian law; an alternative to10%voting control for the22.5%dividend branch. |
| `schedule21.part2Rows[].treatyAssessment.payerIsIndustrialUndertaking` | array \| boolean \| null \| number \| object \| string |  | Whether the Pakistani or Thai dividend payer qualifies as an industrial undertaking under that treaty; applicable with qualifying capital ownership. |
| `schedule21.part2Rows[].treatyAssessment.payerRelatedToRecipient` | array \| boolean \| null \| number \| object \| string |  | For Russian patent/knowhow and Kyrgyz or Venezuelan software/patent/knowhow, whether payer and recipient are related/associated under that treaty's definition. Yes uses10%; No can qualify for the nil or5% branch, independently of special-relationship excess. |
| `schedule21.part2Rows[].treatyAssessment.payerTaxedAtGeneralProfitsRate` | array \| boolean \| null \| number \| object \| string |  | Whether the Ivory Coast payer is subject to profits tax at the general-law rate; determines15% versus18% under Art.X(2). |
| `schedule21.part2Rows[].treatyAssessment.payerUnderlyingProfitsTaxed` | array \| boolean \| null \| number \| object \| string |  | Whether Colombian underlying profits are outside the untaxed-profit Protocol1(e) override; No means the specific protocol exemption/max-untaxed-profit condition applies, not merely that payer cash tax happened to be zero. |
| `schedule21.part2Rows[].treatyAssessment.paymentDate` | array \| boolean \| null \| number \| object \| string |  | Full YYYY-MM-DD payment date in the verified 2023-2027 treaty horizon. |
| `schedule21.part2Rows[].treatyAssessment.paymentDeductibleByPayer` | array \| boolean \| null \| number \| object \| string |  | Whether this entire Cameroon royalty is deductible as a source-country payer cost; split partially deductible treatment into separate homogeneous rows. |
| `schedule21.part2Rows[].treatyAssessment.peruTaxStabilityContractApplies` | array \| boolean \| null \| number \| object \| string |  | Whether a Peruvian tax-stability contract changes the ordinary treaty treatment under Protocol4; explicitNo is required for the verified ordinary MFN rates. |
| `schedule21.part2Rows[].treatyAssessment.recipientIsFinancialInstitution` | array \| boolean \| null \| number \| object \| string |  | Whether the Canadian beneficial-owner recipient is a qualifying financial institution; Thailand includes insurers. This is not the foreign payer or payment bank. |
| `schedule21.part2Rows[].treatyAssessment.royaltyContractDate` | array \| boolean \| null \| number \| object \| string |  | Full ISOdate of the Sri Lankan new-technology royalty contract; the10%branch begins1983-01-01. |
| `schedule21.part2Rows[].treatyAssessment.royaltyKind` | array \| boolean \| null \| number \| object \| string |  | copyright (excluding film/TV), software, patent, knowhow (excluding rental/franchise information), trademark, film, equipment, or other. Australian software classification requires separate analysis. |
| `schedule21.part2Rows[].treatyAssessment.royaltyNewTechnologyContract` | array \| boolean \| null \| number \| object \| string |  | Whether the Sri Lankan royalty is under a contract involving new technology; combine with contract date for the10%branch. |
| `schedule21.part2Rows[].treatyAssessment.royaltySoftwareIsApplication` | array \| boolean \| null \| number \| object \| string |  | For Kyrgyz software royalties, whether the rights concern application software. System/other software does not qualify for the Art.12(3)(b) nil category. |
| `schedule21.part2Rows[].treatyAssessment.royaltyTaxableInCanadaConfirmed` | array \| boolean \| null \| number \| object \| string |  | For French royalties, confirm taxability in Canada for Art.12(2). |
| `schedule21.part2Rows[].treatyAssessment.sourceCountryConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm the treaty source country and that this foreign tax is covered by that treaty. State/local taxes and tax-sparing amounts require separate analysis. |
| `schedule21.part2Rows[].treatyAssessment.specialRelationshipExcess` | array \| boolean \| null \| number \| object \| string |  | Whether interest or royalty includes a special-relationship excess above the arm's-length amount; false required for the ordinary ceiling. |
| `schedule21.part2Rows[].treatyAssessment.stockValueOwnershipPct` | array \| boolean \| null \| number \| object \| string |  | Percentage of the value of all issued/outstanding stock, 0-100, for Kuwait's alternative corporate dividend test; this differs from voting and capital percentages. |
| `schedule21.part2Rows[].treatyAssessment.treatyEntitlementConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm all applicable entitlement rules, including limitation on benefits, principal-purpose/anti-abuse tests, transparent-entity derivation and third-country permanent-establishment restrictions. |
| `schedule21.part2Rows[].treatyAssessment.votingOwnershipPct` | array \| boolean \| null \| number \| object \| string |  | Corporate voting ownership percentage, 0-100. Australia requires direct voting power; Japan requires qualifying voting shares; other treaties use their stated ownership/control test. |
| `schedule21.part2Rows[].usIncomeAnalysis` | null \| object |  | Optional reviewed U.S. income and netting analysis for this U.S. country row. Amounts use the return reporting currency. Entered country totals remain reconciliation inputs; null totals allow Schedule 21 to derive them from reviewed components. Incomplete evidence is held. |
| `schedule21.part2Rows[].usIncomeAnalysis.canadianResidentConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm Canadian residence under domestic law for the s.126 analysis. |
| `schedule21.part2Rows[].usIncomeAnalysis.canadianTreatyResidentConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm Canadian residence under the Canada-U.S. treaty for any Article XXIV(3) source basis. |
| `schedule21.part2Rows[].usIncomeAnalysis.components` | array \| null |  | Complete list of reviewed income components for this U.S. country row. Include expenses and current qualifying losses on the Canadian-law basis. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[]` | object |  | One identified U.S. income component with Canadian-law income character, source facts, income and deductions, eligible tax evidence and any actual s.20(12) election. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].allocatedExpenses` | array \| boolean \| null \| number \| object \| string |  | Allocated expenses attributable to this component before s.20(12), without overlap with direct expenses or losses. Enter explicit zero where nil. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].claimedSection20_12` | array \| boolean \| null \| number \| object \| string |  | Part 2 has no s.20(12) election operand. Omit this member or send null or zero; a positive claim is refused. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].coveredTreatyExemptionApplies` | array \| boolean \| null \| number \| object \| string |  | Explicit answer whether a covered treaty exemption applies to this component. This fact is reviewed for every component, including domestic-source income, for the s.126(7) tax-exempt-income rule. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].currentQualifyingLosses` | array \| boolean \| null \| number \| object \| string |  | Current qualifying losses attributable to this component before s.20(12), without overlap with entered expenses. Enter explicit zero where nil. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].directExpenses` | array \| boolean \| null \| number \| object \| string |  | Direct expenses attributable to this component before s.20(12), without overlap with allocated expenses or losses. Enter explicit zero where nil. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].domesticSourceCountry` | array \| boolean \| null \| number \| object \| string |  | Two-letter ISO country code of the component's source under Canadian domestic law, before any Canada-U.S. Article XXIV(3) source treatment. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Evidence reference supporting this component's Canadian-law income, expenses, losses, source basis, tax and any actual s.20(12) election. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].federalIncomeTaxPaid` | array \| boolean \| null \| number \| object \| string |  | U.S. federal income tax paid for this component in the return reporting currency. Ordinary treaty payment screening is separate from state/local tax. Enter explicit zero where nil. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].foreignAffiliateShareIncome` | array \| boolean \| null \| number \| object \| string |  | Explicit answer whether this component is income from foreign-affiliate shares; such income is excluded from the applicable foreign non-business income basis. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].foreignDebtorInterest126_6_d` | array \| boolean \| null \| number \| object \| string |  | Reviewed applicability of the foreign-debtor interest rule in s.126(6)(d). |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].grossCanadianIncome` | array \| boolean \| null \| number \| object \| string |  | Gross income under Canadian law before direct expenses, allocated expenses, current qualifying losses and the actual s.20(12) election. For capital gains, enter the Canadian taxable capital gain, not gross proceeds. Enter explicit zero where nil. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].includedInCanadianIncome` | array \| boolean \| null \| number \| object \| string |  | Explicit answer whether this component is included in the corporation's Canadian income. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].incomeCharacter` | array \| boolean \| null \| number \| object \| string |  | Canadian-law income character: property, business or taxable_capital_gain. Capital-gain amounts are Canadian taxable capital gains, not sale proceeds. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].nonTreatyIncomeProfitsTaxImposed` | array \| boolean \| null \| number \| object \| string |  | Explicit reviewed answer whether income or profits tax is imposed on this component outside the treaty. Required even for domestic-source income when assessing s.126(7) tax-exempt income. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].nonTreatyTaxedIncomePortion` | array \| boolean \| null \| number \| object \| string |  | For covered treaty-exempt income on which tax is imposed outside the treaty, the gross Canadian income portion subject to that tax. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].qualifyingAllocatedExpenses` | array \| boolean \| null \| number \| object \| string |  | When only part of covered treaty-exempt income is taxed outside the treaty, allocated expenses attributable to that taxed portion. Required for the partial portion and ignored otherwise. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].qualifyingDirectExpenses` | array \| boolean \| null \| number \| object \| string |  | When only part of covered treaty-exempt income is taxed outside the treaty, direct expenses attributable to that taxed portion. Required for the partial portion and ignored otherwise. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].qualifyingLosses` | array \| boolean \| null \| number \| object \| string |  | When only part of covered treaty-exempt income is taxed outside the treaty, current qualifying losses attributable to that taxed portion. Required for the partial portion and ignored otherwise. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].recordId` | array \| boolean \| null \| number \| object \| string |  | Unique evidence identifier for this income component within the U.S. country analysis. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].sourceBasis` | array \| boolean \| null \| number \| object \| string |  | Reviewed source basis: domestic_s126 for Canadian domestic law or canada_us_xxiv3 for the Canada-U.S. treaty Article XXIV(3) rule. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].stateLocalIncomeTaxPaid` | array \| boolean \| null \| number \| object \| string |  | U.S. state/local income tax paid for this component in the return reporting currency. Eligibility requires a separate review against the actual law and treaty; federal tax eligibility does not establish it. Enter explicit zero where nil. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].stateLocalJurisdiction` | array \| boolean \| null \| number \| object \| string |  | State/local taxing jurisdiction supporting positive state/local income tax and its eligibility review. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].stateLocalTaxEligibilityReviewed` | array \| boolean \| null \| number \| object \| string |  | For positive state/local income tax, explicitly confirm eligibility was reviewed against the actual jurisdiction's income-tax law. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].stateLocalTreatyConsistent` | array \| boolean \| null \| number \| object \| string |  | For positive state/local income tax using an Article XXIV(3) source basis, explicitly confirm the Article XXIV(7) consistency review. This confirmation is not required for standalone domestic s.126 state/local tax relief. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].treatyArticle` | array \| boolean \| null \| number \| object \| string |  | Treaty article supporting the U.S. taxing right for an Article XXIV(3) source basis or positive federal income tax. Federal business-income tax requires a reviewed treaty-source Article VII basis. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].usBusinessCarriedOn` | array \| boolean \| null \| number \| object \| string |  | For business income, explicit answer whether the business is carried on in the U.S. on the reviewed s.126 basis. |
| `schedule21.part2Rows[].usIncomeAnalysis.components[].usMayTaxUnderTreaty` | array \| boolean \| null \| number \| object \| string |  | Explicit reviewed answer whether the U.S. may tax this component under the applicable treaty article. A payment of U.S. tax does not establish that right. |
| `schedule21.part2Rows[].usIncomeAnalysis.countryWideSourceBasisReviewed` | array \| boolean \| null \| number \| object \| string |  | Confirm the complete country-wide Canadian-law income, loss and source analysis, including the applicability of domestic and treaty source bases. |
| `schedule21.part2Rows[].usIncomeAnalysis.deductionsReviewedWithoutOverlap` | array \| boolean \| null \| number \| object \| string |  | Confirm direct expenses, allocated expenses and current qualifying losses are entered before s.20(12) and do not overlap or duplicate deductions. |
| `schedule21.part2Rows[].usIncomeAnalysis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Preparer evidence reference supporting the complete U.S. source, netting and tax-eligibility review. |
| `schedule21.part2Rows[].usIncomeAnalysis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Three-letter return reporting currency used for all component income, expenses, losses, tax and actual s.20(12) elections. Convert source amounts before entry. |
| `schedule21.part2Rows[].usIncomeAnalysis.reviewComplete` | array \| boolean \| null \| number \| object \| string |  | Explicit confirmation that the complete U.S. income and netting analysis has been reviewed. Unanswered and No keep the calculation held. |
| `schedule21.part2Rows[].usIncomeAnalysis.treatyEntitlementConfirmed` | array \| boolean \| null \| number \| object \| string |  | Confirm treaty entitlement, including the limitation-on-benefits review, for any Article XXIV(3) source basis. |
| `schedule21.part3Rows` | array \| null |  |  |
| `schedule21.part3Rows[]` | object |  |  |
| `schedule21.part3Rows[].col3l_originYearBreakdown` | array \| null |  | Column 3L origin-year attribution. ITA 126(2)(a) counts TAXATION years ("the 10 taxation years immediately preceding") and s.126(7) defines the unused foreign tax credit FOR A TAXATION YEAR, so a positive Column 3L opening must be attributed to the years it arose in before any of it can be claimed — the engine holds an unvintaged positive pool. `null` / omitted = no attribution supplied. |
| `schedule21.part3Rows[].col3l_originYearBreakdown[]` | object |  |  |
| `schedule21.part3Rows[].col3l_originYearBreakdown[].amount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3l_originYearBreakdown[].originYear` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3l_originYearBreakdown[].originYearEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3l_originYearBreakdown[].precedingTaxationYearEnds` | array \| boolean \| null \| number \| object \| string |  | Complete history for this credit, from origin through the last prior year. |
| `schedule21.part3Rows[].col3l_originYearBreakdown[].sourceCorporationId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3l_originYearBreakdown[].sourceTaxationYearEnd` | array \| boolean \| null \| number \| object \| string |  | Original source year retained after a wind-up maps to the parent's year. |
| `schedule21.part3Rows[].col3l_originYearBreakdown[].transferKind` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3l_priorYearClosingBalance` | array \| boolean \| null \| number \| object \| string |  | Column 3L — Balance at end of previous tax year. Auto-fills from PY S21 Part 3 Column 3S. |
| `schedule21.part3Rows[].col3m_amountExpiredInYear` | array \| boolean \| null \| number \| object \| string |  | Column 3M — Amount expired in the year (10-year window per s.111(8) "unused foreign tax credit"). |
| `schedule21.part3Rows[].col3o_amalgamationOrWindupTransfer` | array \| boolean \| null \| number \| object \| string |  | Column 3O — Credits transferred via amalgamation (s.87(2.2)) or wind-up of subsidiary (s.88(1.5)). |
| `schedule21.part3Rows[].col3o_originYearBreakdown` | array \| null |  | Column 3O origin-year attribution — the SECOND arrival route into the Part 3 opening. A succession transfer-in under s.87(2)(z) / s.88(1)(e.7) keeps the predecessor's vintages: s.126(2)(a)'s ten-year clock runs from the year the credit AROSE, not the year of the amalgamation, so a transferred pool needs its own attribution exactly as Column 3L does. |
| `schedule21.part3Rows[].col3o_originYearBreakdown[]` | object |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].amount` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].originYear` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].originYearEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].parentTaxationYearEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].parentTaxationYearEnds` | array \| boolean \| null \| number \| object \| string |  | Parent year ends from its year containing the subsidiary origin through the last preceding year (s.88(1)(e.7)). |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].parentTaxationYearStart` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].precedingTaxationYearEnds` | array \| boolean \| null \| number \| object \| string |  | Complete history for this credit, from origin through the last prior year. |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].sourceCorporationId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].sourceTaxationYearEnd` | array \| boolean \| null \| number \| object \| string |  | Original source year retained after a wind-up maps to the parent's year. |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].transferKind` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3o_originYearBreakdown[].windingUpStartDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part3Rows[].col3p_currentYearTaxPaidOverride` | array \| boolean \| null \| number \| object \| string |  | Optional override of Column 3P (CY tax paid). When null, engine auto-pulls from Part 2 Column 2C for the same country. |
| `schedule21.part3Rows[].col3q_currentYearCreditDeductedOverride` | array \| boolean \| null \| number \| object \| string |  | Optional override of Column 3Q (CY credit deducted). When null, the engine auto-pulls Part 2 Column 2J for the same country — the printed least-of (2E / 2H / 2I), NOT the amount the corporation elected to claim. s.126(7) "unused foreign tax credit" measures the pool against the amount that "was deductible", so a lesser election does not bank the difference. |
| `schedule21.part3Rows[].country` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part4Rows` | array \| null |  |  |
| `schedule21.part4Rows[]` | object |  |  |
| `schedule21.part4Rows[].col4u_unusedFTCOverride` | array \| boolean \| null \| number \| object \| string |  | Column 4U override — by default the engine computes 3P - 3Q for the same country. Override is for cases where the practitioner is restating a prior carryback request. |
| `schedule21.part4Rows[].col4v_carrybackPrev1` | array \| boolean \| null \| number \| object \| string |  | Column 4V — Carryback to 1st previous tax year. |
| `schedule21.part4Rows[].col4w_carrybackPrev2` | array \| boolean \| null \| number \| object \| string |  | Column 4W — Carryback to 2nd previous tax year. |
| `schedule21.part4Rows[].col4x_carrybackPrev3` | array \| boolean \| null \| number \| object \| string |  | Column 4X — Carryback to 3rd previous tax year. |
| `schedule21.part4Rows[].country` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part4Rows[].targetYearEvidence` | array \| null |  | The target-year facts backing every requested column, one entry per target year. A request without its entry is accepted at $0.00 and blocks the filing; the boxes 901-903 the engine files are the ACCEPTED amounts, not the raw request. Two rows for one country concatenate into one list, so a repeated `targetYearOffset` is a contradiction. |
| `schedule21.part4Rows[].targetYearEvidence[]` | object |  |  |
| `schedule21.part4Rows[].targetYearEvidence[].carriedOnBusinessInCountry` | array \| boolean \| null \| number \| object \| string |  | Did the corporation carry on business in this country in that year? Only boolean `true` answers it: s.126(2) is available to "a taxpayer who was resident in Canada at any time in a taxation year" in respect of the "business-income tax paid ... in respect of businesses carried on by the taxpayer in that country", so with no business there the target year can absorb nothing. Unanswered blocks; it is never read as a Yes. |
| `schedule21.part4Rows[].targetYearEvidence[].s126_2AmountAlreadyDeducted` | array \| boolean \| null \| number \| object \| string |  | Amount already deducted under s.126(2) against that year for this country (s.126(2.3)(c)). Enter 0 where none: it is subtracted from both the (b) and (c) limbs, so a blank is not nil. |
| `schedule21.part4Rows[].targetYearEvidence[].s126_2_bLimitForCountry` | array \| boolean \| null \| number \| object \| string |  | The target year's s.126(2)(b) limit for this country. |
| `schedule21.part4Rows[].targetYearEvidence[].s126_2_cTaxRemainingAfterS126_1` | array \| boolean \| null \| number \| object \| string |  | The target year's Part I tax remaining after its s.126(1) credits — the s.126(2)(c) operand. s.126(2.3)(a) applies the s.126(1) credits first, which is why the room is measured after them. |
| `schedule21.part4Rows[].targetYearEvidence[].targetYearOffset` | array \| boolean \| null \| number \| object \| string |  | Which preceding taxation year this entry describes: 1 = first preceding (Column 4V, box 901), 2 = second (4W, box 902), 3 = third (4X, box 903). Two entries naming the same offset is a contradiction and blocks. |
| `schedule21.part4Rows[].targetYearEvidence[].taxationYearEnd` | array \| boolean \| null \| number \| object \| string |  | ISO YYYY-MM-DD end of that target taxation year. It must equal the Nth preceding year end in the corporation's own taxation-year chain; a calendar-year label is not the unit of account. |
| `schedule21.part5OtherProvinces` | array \| null |  | Logging-tax claims for provinces other than British Columbia and Quebec, as rows of province, incomeFromLogging and loggingTaxPaid. The form has no lines for them: any row only raises a warning that only BC and Quebec impose a tax declared under Regulation 700(3), and the amounts never enter the credit. |
| `schedule21.part5OtherProvinces[]` | array \| boolean \| null \| number \| object \| string |  | Logging-tax claims for provinces other than British Columbia and Quebec, as rows of province, incomeFromLogging and loggingTaxPaid. The form has no lines for them: any row only raises a warning that only BC and Quebec impose a tax declared under Regulation 700(3), and the amounts never enter the credit. |
| `schedule21.part5QcIncomeFromLogging` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part5QcLoggingTaxPaid` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule21.part5TaxableIncomeOverride` | array \| boolean \| null \| number \| object \| string |  | Explicit POST-DIVISION-C taxable income for the line 5H cap (used by non-residents per the form parenthetical). When null, the engine pulls from Schedule 5 line-360 taxable income. Schedule 1 net income and Part 6 adjusted net income are pre-Division-C DISPLAY proxies only: with a live logging credit (5G > 0) neither is a value source, and the engine withholds the credit rather than over-stating the ITA s.127(1) cap. |
| `schedule21.part9Rows` | array \| null |  |  |
| `schedule21.part9Rows[]` | object |  |  |
| `schedule21.part9Rows[].country` | array \| boolean \| null \| number \| object \| string |  | Two-letter country code matching a Part 1 row. |
| `schedule21.part9Rows[].province` | array \| boolean \| null \| number \| object \| string |  | Two-letter province/territory code (ON, BC, AB, SK, MB, QC, NB, NS, PE, NL, YT, NT, NU). |
| `schedule21.part9Rows[].provinceTaxableIncomeAllocationOverride` | array \| boolean \| null \| number \| object \| string |  | Optional override of the province's allocated taxable income. When null, engine pulls from Schedule 5 Part 1 column F. |
| `schedule21.part9Rows[].provincialTaxRate` | array \| boolean \| null \| number \| object \| string |  | Provincial corporate tax rate to apply in cell 9H. Per Note 9: for all provinces except Ontario use the HIGHER tax rate (general corporate rate, not M&P or SBD). For Ontario use the basic rate from Schedule 500 Part 1. Mid-year rate change → days-weighted average. Accepts ratio (0.115) or percent (11.5). |
| `schedule21.part9TaxableIncomeOutsideCanadaOverride` | array \| boolean \| null \| number \| object \| string |  | Taxable income earned outside Canada, the amount excluded from the Part 9 amount 9F denominator per T2 SCH 21 note 8. Send it only when no Schedule 5 result is available; with a Schedule 5 present a differing value is reported as a conflict, and a negative value is rejected and reset to zero. |
| `schedule21.part9TotalTaxableIncomeOverride` | array \| boolean \| null \| number \| object \| string |  | Optional override for the total taxable income (Part 9 ratio denominator). When null, the engine pulls T2 line 360 from Schedule 5 or Division C; pre-Division-C Schedule 1 / Part 6 amounts are never substituted. |
| `schedule23` | null \| object |  | Schedule 23 associated-CCPC business-limit agreement input object, including corporation rows and any third-corporation election details. It supports allocation to the filing corporation and reconciliation of association facts. Omission supplies no agreement; an affirmative jacket box 160 without a computed agreement leaves the SBD allocation unresolved. |
| `schedule23.calendarYear` | null \| number \| string |  | Box 050: calendar year to which the business-limit allocation agreement applies. |
| `schedule23.isAmendedAgreement` | boolean \| null |  | Box 075: whether this agreement replaces an agreement previously filed for the same calendar year by a listed associated corporation. |
| `schedule23.rows` | array \| null |  | Associated corporations and their business-limit allocations, in the order entered on Schedule 23. An imported return's own allocation table can seed this roster while every row is still blank; a preceding year's table seeds the roster and the association codes only, because ITA 125(3) requires a fresh agreement each calendar year. |
| `schedule23.rows[]` | object |  |  |
| `schedule23.rows[].associationCode` | null \| number \| string |  | Column 3, box 300: association code from the Schedule 23 instructions. Codes 2 and 5 depend on a third corporation having filed the Schedule 28 election. |
| `schedule23.rows[].businessLimitAllocated` | null \| number \| string |  | Column 6, box 400: business limit allocated to this corporation, calculated as column 4 multiplied by the percentage in column 5. The total allocation cannot exceed $500,000. |
| `schedule23.rows[].businessLimitBeforeAllocation` | null \| number \| string |  | Column 4: this corporation's business limit for the year before allocation. Enter zero for association codes 2, 3 and 4. |
| `schedule23.rows[].businessNumber` | null \| string |  | Column 2, box 200: business number of the associated corporation. Enter NR if the corporation is not registered. |
| `schedule23.rows[].id` | null \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule23.rows[].name` | null \| string |  | Column 1, box 100: legal name of the corporation in the associated group, including a corporation deemed associated under s.256(2). |
| `schedule23.rows[].nativeGroupMemberId` | null \| string |  |  |
| `schedule23.rows[].percentageOfBusinessLimit` | null \| number \| string |  | Column 5, box 350: percentage of the business limit allocated to a corporation with association code 1. The column total cannot exceed 100%. |
| `schedule23.rows[].thirdCorporationBusinessNumber` | null \| string |  | Filemark evidence for a code-5 row using the automatic s.256(2)(b)(i) branch: the code-3 non-CCPC third corporation that is common to the filer and this row. Not a printed Schedule 23 column. |
| `schedule23.thirdCorporationSchedule28Elections` | array \| null |  | ITA 256(2)(b)(ii) evidence for association codes 2/5. Optional; an absent key is not an empty answer, and the S23 code-2/5 gate keeps blocking until evidence is entered. |
| `schedule23.thirdCorporationSchedule28Elections[]` | object |  |  |
| `schedule23.thirdCorporationSchedule28Elections[].businessNumber` | null \| string |  | The ELECTING third corporation's business number — nine-digit root or the full 15-character program account. "NR" is not accepted: it cannot identify which corporation elected. |
| `schedule23.thirdCorporationSchedule28Elections[].coveredCorporationBusinessNumbers` | array |  | Business numbers of the corporations enumerated on that filed Schedule 28. At least two distinct registered BN roots are required; the electing third corporation itself is not one of them. An empty list is unanswered and contributes no evidence. |
| `schedule23.thirdCorporationSchedule28Elections[].coveredCorporationBusinessNumbers[]` | null \| string |  | One entry in the stated collection. |
| `schedule23.thirdCorporationSchedule28Elections[].electionTaxYearEnd` | null \| string |  | The taxation year end the third corporation's Schedule 28 election was filed for (ISO YYYY-MM-DD). ITA 256(2)(b)(ii) requires the election to be made "in its taxation year that includes the particular time", so this is bound to the filer's period by the backend. |
| `schedule23.thirdCorporationSchedule28Elections[].electionTaxYearStart` | null \| string |  | Start of the third corporation's election taxation year (ISO YYYY-MM-DD). Together with the end, this proves actual period overlap. |
| `schedule23.thirdCorporationSchedule28Elections[].filedSchedule28Confirmed` | boolean \| null |  | Explicit confirmation that the election was FILED. null = unanswered. Anything other than true contributes no evidence — never a silent affirmative. |
| `schedule24` | null \| object |  | Schedule 24 First-Time Filer after Incorporation, Amalgamation, or Winding-up of a Subsidiary input object. Supply the operation code and applicable predecessor or subsidiary rows. Omission supplies no predecessor event roster or operation-code status; the jacket and authenticated continuity still determine which first-year and reorganization evidence is required. |
| `schedule24.filingTriggers` | array \| null |  | The list of first-filing events covered by Schedule 24: incorporation, amalgamation or the winding-up of a subsidiary into its parent under section 88. Send a list even for one event; a bare string is refused. |
| `schedule24.filingTriggers[]` | string |  | One entry in the stated collection. |
| `schedule24.operationCode` | null \| string |  | Part 1, box 100: operation type for a corporation filing for the first time after incorporation or amalgamation. |
| `schedule24.predecessors` | array \| null |  | Part 2: predecessor corporations for the first year of filing after amalgamation. |
| `schedule24.predecessors[]` | object |  |  |
| `schedule24.predecessors[].businessNumber` | null \| string |  | Box 300 — Business number (9 digits + 2 uppercase letters + 4 digits, e.g. "123456789RC0001"), or "NR" if the predecessor was never CRA-registered (typically a foreign-amalgamation predecessor). |
| `schedule24.predecessors[].id` | null \| string |  | Stable row identity for retaining the current predecessor row through edits and row reordering. |
| `schedule24.predecessors[].name` | null \| string |  | Box 200 — Name of predecessor corporation. |
| `schedule24.subsidiaries` | array \| null |  | Part 3: subsidiaries wound up into the parent under section 88, with their business numbers and commencement and completion dates. |
| `schedule24.subsidiaries[]` | object |  |  |
| `schedule24.subsidiaries[].assetDistributionCompletedInThatYear` | array \| boolean \| null \| number \| object \| string |  | Non-printed tri-state. Reviewed affirmation that the winding-up distribution was completed in the taxation year ending on assetsDistributedTaxationYearEnd. Only true lets the matching filed subsidiary period authenticate a predecessor closing or RDTOH transfer. |
| `schedule24.subsidiaries[].assetsDistributedTaxationYearEnd` | null \| string |  | Non-printed. End date of the subsidiary taxation year in which its assets were distributed to the parent on the winding-up (ISO YYYY-MM-DD). ITA s.88(1)(e.2)(v) substitutes that year, and box 700 is only the date of wind-up, so this fact is collected separately. Null stays unanswered. |
| `schedule24.subsidiaries[].businessNumber` | null \| string |  | Box 500 — Business number (same format as box 300, or "NR"). |
| `schedule24.subsidiaries[].commencementDate` | null \| string |  | Box 600 — Commencement date of wind-up (ISO YYYY-MM-DD). Typically the board resolution / shareholder approval date. |
| `schedule24.subsidiaries[].id` | null \| string |  | Stable row identity for retaining the current subsidiary row through edits and row reordering. |
| `schedule24.subsidiaries[].name` | null \| string |  | Box 400 — Name of subsidiary corporation. |
| `schedule24.subsidiaries[].qualifiesUnderSection88_1` | array \| boolean \| null \| number \| object \| string |  | Non-printed tri-state. Schedule 24 proves the event roster but not the taxable-Canadian-corporation, 90%-of-each-class, and arm's-length-minority conditions in the ITA s.88(1) chapeau. Pool continuity remains blocked until this reviewed conclusion is answered. |
| `schedule24.subsidiaries[].windUpDate` | null \| string |  | Box 700 — Date of wind-up (ISO YYYY-MM-DD). This is not the date the subsidiary's assets were distributed. Must be ≥ commencementDate per the validator's date-order gate. |
| `schedule25` | null \| object |  | Schedule 25 Investment in Foreign Affiliates input object, including hasForeignAffiliates and affiliateRows. It supplies the affiliate roster used by foreign-affiliate analysis and related schedules. Omission adds no input roster; a computed Schedule 25 may supply one, otherwise affiliate presence remains unknown rather than an answered no. |
| `schedule25.affiliateRows` | array \| null |  | Foreign affiliates reported on Schedule 25, with each affiliate's name, equity percentage held and controlled-or-other status. |
| `schedule25.affiliateRows[]` | object |  |  |
| `schedule25.affiliateRows[].affiliateId` | array \| boolean \| null \| number \| object \| string |  | Optional caller-supplied stable identifier for this affiliate row, the key of the Schedule 1 foreign accrual property income reconciliation; when absent the key is the normalized affiliate name. A row stating id or \_rowKey is refused, naming affiliateId. |
| `schedule25.affiliateRows[].affiliateName` | null \| string |  | Box 100: name of the foreign affiliate. |
| `schedule25.affiliateRows[].controlStatus` | null \| number \| string |  | Box 300: foreign-affiliate status, with 1 for controlled and 2 for other. |
| `schedule25.affiliateRows[].equityPercentHeld` | null \| number \| string |  | Box 200: equity percentage held, stated in percentage units. The form does not identify the statutory ownership measure; identify that measure in the supporting ownership workpaper. |
| `schedule25.affiliateRows[].relatedPersonsAggregateEquityPercent` | null \| number \| string |  | Practitioner-stated total of the equity percentages in this affiliate held by the corporation plus each related person — limb (b) of the s.95(1) "foreign affiliate" definition, which requires that total to be not less than 10%. Not a printed CRA column. Only consulted when `equityPercentHeld` is at least 1% and below 10%, the band where classification turns entirely on related persons; at 10% or more the corporation's own holding satisfies limb (b) by itself. In that band an unanswered or below-10% total draws a review warning, never a block. |
| `schedule25.hasForeignAffiliates` | boolean \| null |  | Practitioner assertion that the corporation owns shares in one or more foreign affiliates per s.95(1). The taxpayer's own equity percentage must independently be at least 1%, and the taxpayer-plus-related-person total must be at least 10%; the second test cannot cure failure of the first. |
| `schedule25.isNonResidentOwnedInvestmentCorp` | boolean \| null |  | Practitioner assertion of NROIC status under s.133(8). The terminal rule prevents status for a taxation year beginning in 2003 or later; historical 1998-2002 qualification remains fact-dependent and is not auto-rejected. |
| `schedule25.section212_3ForeignAffiliateInvestmentMade` | boolean |  | Whether the corporation made an investment in a foreign affiliate, one of the two charging facts in ITA s.212.3(1). Answer it true or false whenever an affiliate roster is open: absence cannot default to No, so the request is rejected rather than computed. |
| `schedule25.section212_3NonResidentControlAtInvestment` | boolean |  | ITA 212.3(1)(b): was the investing Canadian corporation, or the relevant other Canadian corporation, under non-resident control? |
| `schedule27` | object |  | The Schedule 27 manufacturing and processing input blob. On the small business deduction target only its presence is read: a non-empty Schedule 27 makes the engine also compute the hypothetical non-associated deduction that Schedule 27 Part 9 needs. |
| `schedule27.amount11BPortionDirectlyInQualifiedActivitiesIncludingElecSteam` | null \| number \| string |  | Amount 11B — the part of C used directly in qualified activities INCLUDING generating electrical energy / producing steam. Must be the SUPERSET of amount 5B, not the elec/steam carve-out. |
| `schedule27.amount12ASalariesWagesInQualifiedActivitiesIncludingElecSteam` | null \| number \| string |  | Amount 12A — employee salaries and wages in qualified activities INCLUDING elec/steam. Superset of amount 7A. |
| `schedule27.amount12BNonEmployeeInQualifiedActivitiesIncludingElecSteam` | null \| number \| string |  | Amount 12B — non-employee payments in qualified activities INCLUDING elec/steam. Superset of amount 7B. |
| `schedule27.amount16AZETMSalariesWagesDirectlyInZETM` | null \| number \| string |  | Amount 16A — employee salaries and wages for services directly engaged in qualified ZETM activities. |
| `schedule27.amount16BZETMNonEmployeeInZETM` | null \| number \| string |  | Amount 16B — non-employee payments for functions directly related to qualified ZETM activities. 306 (MLB) = 16A + 16B. |
| `schedule27.amount305ZETMCostOfCapitalMCB` | null \| number \| string |  | Box 305 — ZETM cost of capital (MCB): the part of C (line 140) used directly in qualified ZETM activities. Capped at C. |
| `schedule27.amount3BNetResourceAdjustmentReg5203_3_1` | null \| number \| string |  | Amount 3B — net resource adjustment, Reg 5203(3.1). |
| `schedule27.amount3DRefundInterestReg5203_4` | null \| number \| string |  | Amount 3D — refund interest, Reg 5203(4). |
| `schedule27.amount4ADepreciableScheduleII` | null \| number \| string |  | Amount 4A — GROSS COST (not UCC) of owned depreciable property under Schedule II. |
| `schedule27.amount4BTimberLimitsAndCuttingRights` | null \| number \| string |  | Amount 4B — timber limits and cutting rights. |
| `schedule27.amount4CImmovableWoodAssetsClass15` | null \| number \| string |  | Amount 4C — immovable wood assets (Class 15). |
| `schedule27.amount4DIndustrialMineralMines` | null \| number \| string |  | Amount 4D — industrial mineral mines. |
| `schedule27.amount4ESREDCapitalExpenditures` | null \| number \| string |  | Amount 4E — SR&ED capital expenditures. |
| `schedule27.amount4FPartXVIIProperty` | null \| number \| string |  | Amount 4F — Part XVII property. |
| `schedule27.amount4HRentalCostForPropertyUse` | null \| number \| string |  | Amount 4H — rental cost incurred for the use of property whose gross cost would be included above if owned. Aggregated in FULL (no 10%). |
| `schedule27.amount4IPartnershipShareOfCC` | null \| number \| string |  | Amount 4I — partnership share of cost of capital. |
| `schedule27.amount5BPortionDirectlyInQualifiedActivities` | null \| number \| string |  | Amount 5B — the part of C reflecting the extent of direct use in Reg 5202 qualified activities. Engine applies 100/85, capped at C. |
| `schedule27.amount6ASalariesWagesEmployees` | null \| number \| string |  | Amount 6A — salaries and wages paid or payable to employees. |
| `schedule27.amount6BIncludedInGrossCostOfProperty` | null \| number \| string |  | Amount 6B — portion included in gross cost of property (Part 4). |
| `schedule27.amount6CRelatedToOutsideCanadaAB` | null \| number \| string |  | Amount 6C — portion related to active business outside Canada. |
| `schedule27.amount6DRelatedToCdnResourceProfits` | null \| number \| string |  | Amount 6D — portion related to Canadian resource profits. |
| `schedule27.amount6EIncludedInCEDEFEDE` | null \| number \| string |  | Amount 6E — portion included in CEDE / FEDE / CEE / CDE. |
| `schedule27.amount6HPartnershipShareEmployeeNet` | null \| number \| string |  | Amount 6H — partnership share, employee arm, net of exclusions. |
| `schedule27.amount6JManagementAdminNonEmployee` | null \| number \| string |  | Amount 6J — non-employee management and administration amounts. |
| `schedule27.amount6KSREDNonEmployee` | null \| number \| string |  | Amount 6K — non-employee SR&ED amounts. |
| `schedule27.amount6LServiceFunctionNonEmployee` | null \| number \| string |  | Amount 6L — non-employee amounts for a service or function that would normally be performed by an employee. |
| `schedule27.amount6NIncludedInGrossCostOfPropertyNE` | null \| number \| string |  | Amount 6N — non-employee portion included in gross cost of property. |
| `schedule27.amount6ORelatedToOutsideCanadaABNE` | null \| number \| string |  | Amount 6O — non-employee portion related to outside-Canada business. |
| `schedule27.amount6PRelatedToCdnResourceProfitsNE` | null \| number \| string |  | Amount 6P — non-employee portion related to Cdn resource profits. |
| `schedule27.amount6QIncludedInCEDEFEDENE` | null \| number \| string |  | Amount 6Q — non-employee portion included in CEDE / FEDE. |
| `schedule27.amount6TPartnershipShareNonEmployeeNet` | null \| number \| string |  | Amount 6T — partnership share, non-employee arm, net of exclusions. |
| `schedule27.amount7ASalariesWagesInQualifiedActivities` | null \| number \| string |  | Amount 7A — part of salaries and wages (included in 6I) for employees directly engaged in qualified activities. |
| `schedule27.amount7BNonEmployeeInQualifiedActivities` | null \| number \| string |  | Amount 7B — part of other payments (included in 6U) to non-employees for functions directly related to qualified activities. |
| `schedule27.amount8AResourceProfitsReg1204` | null \| number \| string |  | Amount 8A — resource profits, Reg 1204. |
| `schedule27.amount8BSection59IncomeNotInResourceProfits` | null \| number \| string |  | Amount 8B — s.59 income not included in resource profits. |
| `schedule27.amount8DSection65DeductionsNotAgainstResourceProfits` | null \| number \| string |  | Amount 8D — s.65 deductions not applied against resource profits. |
| `schedule27.amount8EIncomeFromForeignOreProcessing` | null \| number \| string |  | Amount 8E — income from processing foreign ore. |
| `schedule27.claimingElectricalSteamPath` | array \| boolean \| null \| number \| object \| string |  | Claiming the parallel deduction on profits from generating electrical energy for sale or producing steam for sale. Parts 10–13 compute as all-zero unless true. |
| `schedule27.claimingPart9MainPath` | array \| boolean \| null \| number \| object \| string |  | Whether the main Part 9 path is ALSO claimed. Governs amount 13J: form footnote 10 requires 13J = 0 when only the elec/steam deduction is claimed. null = engine assumes both are claimed (conservative). |
| `schedule27.claimingZETMDeduction` | array \| boolean \| null \| number \| object \| string |  | The s.125.2(2) zero-emission technology manufacturing claim answer, true or false. True carries the line 350 amount to amount 9K and T2 line 616, false carries none of it, and an unanswered claim holds the return while line 350 is above zero. A true answer with no ZETM cost allocation raises a warning; line 350 itself is computed from the ZETM amounts. |
| `schedule27.costOfCapitalReflectsReg5203And5204Exclusions` | array \| boolean \| null \| number \| object \| string |  | Box 140 review: Part 4 gross and rental costs exclude the property-use portions required by Reg 5203(1) or, for a partnership member, Reg 5204. |
| `schedule27.excludedActivityParagraphs` | array \| boolean \| null \| number \| object \| string |  | s.125.1(3)(a)–(k) paragraph letters the corporation is engaged in. Non-empty blocks the deduction. Paragraph (h) (electrical energy / steam) is RE-INCLUDED by s.125.1(5) for the Parts 10–13 path. |
| `schedule27.excludedActivityParagraphs[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `schedule27.hasActiveBusinessOutsideCanada` | array \| boolean \| null \| number \| object \| string |  | Reg 5201(d) — carried on active business outside Canada at any time. |
| `schedule27.hasExcludedActivityS125_1_3_a_to_k` | array \| boolean \| null \| number \| object \| string |  | Reg 5201(c) — engaged in any s.125.1(3)(a)–(k) excluded activity. |
| `schedule27.hasForeignOreProcessingNotBeyondPrescribedStage` | array \| boolean \| null \| number \| object \| string |  | Reg 5201(c.1)–(c.3) — processing foreign ore to a stage that is not beyond the prime-metal / iron-ore-pellet / tar-sands crude-oil stage. |
| `schedule27.hasResourceActivitiesReg5203` | array \| boolean \| null \| number \| object \| string |  | Reg 5203(2) — the corporation had resource activities for the year. null is unanswered and cannot be treated as a nil resource reduction. |
| `schedule27.includesEmployerCPP_EI` | array \| boolean \| null \| number \| object \| string |  | Advisory flag: amount 6A includes employer-portion CPP/EI/EHT. Reg 5202 limits salaries and wages to salaries, wages and commissions; the engine warns for review but never auto-strips. |
| `schedule27.line100ActiveBusinessIncomeNetOfLoss` | null \| number \| string |  | Box 100 — active business income minus active business losses for the year, including your share for each partnership of which you were a member. Reg 5201(b)(i). When the four conditions are met this IS the Canadian M&P profits figure entered at line 200. |
| `schedule27.line105AssociatedCorpsABI` | null \| number \| string |  | Box 105 — active business income of each associated Canadian corporation. Reg 5201(b)(ii) has NO loss-netting on this arm. |
| `schedule27.line120ActiveBusinessIncomeNetOfLoss` | null \| number \| string |  | Box 120 — active business income net of losses (Reg 5200 path). |
| `schedule27.mpGrossRevenueRatio` | null \| number \| string |  | ITA 125.1(3)(l): qualifying Canadian M&P revenue divided by gross revenue from all active businesses carried on in Canada (0..1). null is unanswered, not evidence that the 10% floor is met. |
| `schedule27.onlyGeneratedOrProducedElectricalEnergyOrSteamForSaleInSaskatchewan` | array \| boolean \| null \| number \| object \| string |  | Schedule 404 Note 1 — the corporation only generated or produced electrical energy or steam for sale in Saskatchewan. Yes routes S404 amount 1A to S27 line 210; No routes it to line 200; null is unanswered. |
| `schedule27.primarilyMPInCanada` | array \| boolean \| null \| number \| object \| string |  | Reg 5201(a) — activities during the year were PRIMARILY manufacturing or processing in Canada of goods for sale or lease (excluding generating electrical energy or producing steam for sale). |
| `schedule27.primarilyMPRatio` | null \| number \| string |  | Optional 0..1 corroboration of the Reg 5201(a) "primarily" test. |
| `schedule27.schedule404` | object |  | Supporting Schedule 404 worksheet. It rides on THIS document because Schedule 27 already owns the Schedule 404 Note 1 routing answer above and produces amount 1A (line 200 / line 210); the same nesting Schedule 511 uses inside Schedule 510. Opening Schedule 404 therefore opens Schedule 27 too, which is correct in substance — amount 1A comes from Schedule 27, so the Saskatchewan reduction cannot be computed without it. |
| `schedule27.uccDepreciableScheduleII` | array \| boolean \| null \| number \| object \| string |  | Not consumed. Regulation 5202 cost of capital paragraph (a) requires the gross historical capital cost of owned depreciable property, not undepreciated capital cost, so any value here is ignored and only produces a warning telling you to send amount4ADepreciableScheduleII instead. |
| `schedule27.zetmAllocationReflectsDirectUse` | array \| boolean \| null \| number \| object \| string |  | Confirmation that the MCB/MLB allocation reflects extent of direct use in those clauses. A positive allocation without `true` fails closed. |
| `schedule27.zetmQualifiedActivityClauses` | array \| boolean \| null \| number \| object \| string |  | Reg 5202 qualified-ZETM-activity clause identifiers the allocation relates to — a CLOSED list (clauses (a)(i)(A)–(I) and (L)–(O)). A positive MCB/MLB allocation with no clause fails closed; manufacturing generally is NOT a qualified ZETM activity. |
| `schedule27.zetmQualifiedActivityClauses[]` | array \| boolean \| null \| number \| object \| string |  | One entry in the stated collection. |
| `schedule28` | null \| object |  | Schedule 28 Election not to be Associated Through a Third Corporation input object, including third-corporation facts, otherCorps and the election answers. It supplies election evidence and reconciles the association roster. Omission supplies no Schedule 28 election or roster; another valid source must establish any claimed election. |
| `schedule28.amendedElection` | boolean \| null |  | Box 020: whether this is an amended Schedule 28 election. |
| `schedule28.dateFiled` | null \| string |  | Internal Filemark filing-date metadata (ISO YYYY-MM-DD). The submitted box 010 always remains blank because the official form says not to use that area. The validator checks this internal value when populated. |
| `schedule28.otherCorps` | array \| null |  | Corporations that would otherwise be deemed associated with each other through the third corporation. The form permits additional schedules when more space is needed. |
| `schedule28.otherCorps[]` | object |  |  |
| `schedule28.otherCorps[].businessNumber` | null \| string |  | Box 200: business number of the listed corporation. Enter NR if it is not registered. |
| `schedule28.otherCorps[].name` | null \| string |  | Box 100: name of a corporation that would otherwise be deemed associated through the third corporation. |
| `schedule28.othersAssociatedWithThirdCorp` | boolean \| null |  | Whether the two other corporations were associated with the third corporation. Boolean is the canonical form. An absent answer leaves the ITA s.256(2)(b)(ii) election conclusion unanswered and the schedule fails closed. |
| `schedule28.othersNotOtherwiseAssociated` | boolean \| null |  | Whether the two other corporations would not otherwise be associated with each other. Boolean is the canonical form. An absent answer leaves the ITA s.256(2)(b)(ii) election conclusion unanswered. |
| `schedule28.supplementaryPagesAttached` | boolean \| null |  | The printed grid holds 15 rows and the form says "If you need more space, attach additional schedules." A corporation in row 16 or beyond is covered by the election only if that attachment was filed. s.256(2) deems non-association only for corporations the third corporation "elects in prescribed form" to cover, and Schedule 23 consumes that election into the business limit. Null is unanswered and holds; it is only asked when the grid overflows. |
| `schedule28.thirdCorpBn` | null \| string |  | Box 040: business number of the third corporation making the election. |
| `schedule28.thirdCorpIsCcpc` | boolean \| null |  | Whether the third corporation is a Canadian-controlled private corporation. Schedule 28 reads this fact rather than the request-root corporation type, so setting the root fact alone does not clear the unanswered-CCPC gate. |
| `schedule28.thirdCorpName` | null \| string |  | Box 030: name of the Canadian-controlled private corporation making the election as the third corporation. |
| `schedule28.thirdCorpTaxYearEnd` | null \| string |  | Box 050: taxation year-end of the third corporation. A separate election is filed for each applicable taxation year. |
| `schedule29` | null \| object |  |  |
| `schedule3` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule302` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule302.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule302.actualCreditReceipts[]` | object |  |  |
| `schedule302.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule302.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule302.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule302.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule302.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule302.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule302.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule302.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule302.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule302.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule302.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule302.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule302.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule302.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule302.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule302.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule302.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule302.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule302.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule302.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule302.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule302.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule302.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule302.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule302.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule302.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule302.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule302.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupClaims` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupClaims[]` | object |  | Retained provincial credit group claims record input. |
| `schedule302.groupClaims[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupClaims[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupClaims[].claimantBusinessNumber` | null \| string |  | Nine-digit claimant business number for a retained NLassociated-group claim. Distinguishes another member with the same fiscal period from the current claimant; never infer an identity. |
| `schedule302.groupClaims[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupClaims[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupClaims[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupHistoryCompleteConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.groupHistoryEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.precedingFiscalEnd` | null \| string |  | Actual end of the immediately preceding taxation year, immediately before this period. Its following 60 days cannot generate another film claim. NLR 3/99 s.2(1)(f). |
| `schedule302.precedingFiscalStart` | null \| string |  | Actual start of the immediately preceding taxation year; required for a preceding-year film source expense. NLR 3/99 s.2(1)(f). |
| `schedule302.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule302.priorCreditReceipts[]` | object |  |  |
| `schedule302.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule302.projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule302.projects[].assistanceExclusionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].associatedGroupEvidenceReference` | null \| string |  | The associated group's project, commencement and credit schedule supporting the former s.7(4) limit. |
| `schedule302.projects[].associatedGroupLimitConfirmed` | boolean \| null |  | For a project commenced before April 1, 2013: the associated group's credits on projects commenced within any 12-month period do not exceed the former NLR 3/99 s.7(4) limit. |
| `schedule302.projects[].canadianIncorporationConfirmed` | boolean \| null |  | Confirm incorporation under Canadian federal or provincial law from corporate records. |
| `schedule302.projects[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].completedDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].completionWithin36MonthsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].conditionsAtRegistrationAndExpenditureConfirmed` | boolean \| null |  | IDM corporate conditions, including NL PE, held at registration and when qualifying expenditures were incurred. NLR 34/26 ss.1-2 applies from July 16, 2026. |
| `schedule302.projects[].conditionsAtRegistrationAndProductionConfirmed` | boolean \| null |  | Film/all-spend corporate conditions, including NL PE, held at registration and throughout production. NLR 3/99 s.3; NLR 31/23 s.3. |
| `schedule302.projects[].corporateConditionsEvidenceReference` | null \| string |  | Corporate incorporation, principal-business, income and applicable PE/timing evidence for this project. |
| `schedule302.projects[].corporateIncomeConditionConfirmed` | boolean \| null |  | Confirm no Part I exempt income for film/all-spend; for IDM confirm that all or part of income is not exempt, as NLR 84/15 s.3(d) states. |
| `schedule302.projects[].eligibleConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].eligibleEmployeeWagesPaidInNl` | null \| number \| string |  | NL film s.6 numerator: employee wages paid for work in NL during this taxation year. Keep separate from the eligible-salary credit base and payments after year-end. |
| `schedule302.projects[].eligibleRemuneration` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].excludedProductCategory` | null \| string |  | Enter none after reviewing every NLR 84/15 ss.4-5 exclusion. Marketing, interpersonal communication, exclusively linear content, prohibited content, real-currency gambling, noninteractive video rereleases, AO content, aggregators, search engines, news/opinion, ordinary websites and nonintrinsic operating-system/engine code do not qualify. |
| `schedule302.projects[].expenditures` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[]` | object |  | Retained provincial credit expenditures record input. |
| `schedule302.projects[].expenditures[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].annualCcaAllowance` | null \| number \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].availabilityDays` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].category` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].ccaCalculationEvidenceReference` | null \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].ccaClass` | null \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].ccaRateDate` | null \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].classRate` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].eligibleConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].eligibleNights` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].nightlyCost` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].expenditures[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].filmEquityFundReceived` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].filmLabourRegistered` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].interactiveDesignConfirmed` | boolean \| null |  | IDM interactive design supported by the minister/product evidence. NLR 84/15 s.2(h). |
| `schedule302.projects[].netTotalProductionCosts` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].noBroadcastingLicenceConfirmed` | boolean \| null |  | Film/all-spend claimant holds no CRTC broadcasting licence throughout the required period. |
| `schedule302.projects[].noNonArmsLengthBroadcasterConfirmed` | boolean \| null |  | Film/all-spend claimant has no prohibited non-arm-length broadcasting-licensee relationship throughout the required period. |
| `schedule302.projects[].nonDuplicatedExpensesConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].nonResidentLabour` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].payrollEligibilityEvidenceReference` | null \| string |  | Evidence for current-year employee payroll under NLR 3/99 s.6, including the province of work and eligible-employee residency. |
| `schedule302.projects[].principalEligibleBusinessConfirmed` | boolean \| null |  | Confirm principal film/video production business for film/all-spend, or principal interactive digital media development business for IDM. |
| `schedule302.projects[].priorClaimsCompleteConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].priorClaimsEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].priorProjectCredits` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].productEligibilityEvidenceReference` | null \| string |  | Retained IDM purpose, media, interactivity and complete statutory exclusion review. |
| `schedule302.projects[].productPurpose` | null \| string |  | IDM primary purpose: educate, inform or entertain. NLR 84/15 s.2(h). |
| `schedule302.projects[].productUsesImages` | boolean \| null |  | IDM product presents images to achieve its primary purpose; explicitly answer yes or no. |
| `schedule302.projects[].productUsesSound` | boolean \| null |  | IDM product presents sound to achieve its primary purpose; explicitly answer yes or no. |
| `schedule302.projects[].productUsesText` | boolean \| null |  | IDM product presents text to achieve its primary purpose; explicitly answer yes or no. |
| `schedule302.projects[].productionStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].registrationCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].remunerationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].remunerationPaidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].remunerationReviewed` | boolean \| null |  | Explicit review of all supplier and parent remuneration sources, including an empty reviewed nil. Omission is unanswered. |
| `schedule302.projects[].remunerationRows` | array |  | Original supplier or parent remuneration records, reconciled to eligibleRemuneration. NLR 3/99 s.2(1)(f); NLR 84/15 s.7. |
| `schedule302.projects[].remunerationRows[]` | object |  |  |
| `schedule302.projects[].remunerationRows[].amount` | null \| number \| string |  | Reasonable directly attributable source fee or reimbursement included in production cost, before the separate contingent-fee exclusion and eligible-wage limit. |
| `schedule302.projects[].remunerationRows[].armsLengthConfirmed` | boolean \| null |  | IDM supplier deals at arm's length with the eligible corporation under NLR 84/15 s.7(e). |
| `schedule302.projects[].remunerationRows[].category` | null \| string |  | Statutory limb: individual_personal, individual_employees, corporation_employees, personal_services_corporation, partnership_personal, partnership_employees, or film-only parent_reimbursement. |
| `schedule302.projects[].remunerationRows[].eligibilityConfirmed` | boolean \| null |  | Confirm reasonable directly attributable eligible-production services, inclusion in its cost, and applicable statutory expense exclusions from the retained source. |
| `schedule302.projects[].remunerationRows[].eligibleIndividualConfirmed` | boolean \| null |  | Film recipient or personal service provider meets the eligible-individual residency rule or an evidenced minister waiver. |
| `schedule302.projects[].remunerationRows[].eligibleUnderlyingWages` | null \| number \| string |  | Film-only eligible employee wages attributable to these services; film employee-service fees cannot exceed this amount. IDM has no corresponding fee ceiling. |
| `schedule302.projects[].remunerationRows[].evidenceReference` | null \| string |  | Original service, cost, underlying eligible-wage and statutory exclusion evidence. |
| `schedule302.projects[].remunerationRows[].incurredDate` | null \| string |  | Original source expense incurrence date, separate from the claimant payment or reimbursement date. |
| `schedule302.projects[].remunerationRows[].ministerEligibleAmount` | null \| number \| string |  | Film minister-established eligible portion of the full source remuneration, required only when a valuation reference is supplied. |
| `schedule302.projects[].remunerationRows[].ministerValuationReference` | null \| string |  | Film minister valuation under NLR 3/99 s.2(3)(c); not a preparer override. |
| `schedule302.projects[].remunerationRows[].nonEmployeeConfirmed` | boolean \| null |  | The individual supplier is not an employee of the claimant. |
| `schedule302.projects[].remunerationRows[].paidDate` | null \| string |  | Actual claimant fee payment or parent reimbursement date; must be in the year or within its following 60 days. |
| `schedule302.projects[].remunerationRows[].parentAgreementReference` | null \| string |  | Retained production agreement electing NLR 3/99 s.2(1)(f)(iii). |
| `schedule302.projects[].remunerationRows[].parentEligibleSalaryAmount` | null \| number \| string |  | Original evidenced amount that would qualify under the film salary or supplier limbs for that parent period; reimbursement cannot exceed it. |
| `schedule302.projects[].remunerationRows[].parentEligibleSalaryEvidenceReference` | null \| string |  | Original parent payroll/service and payment evidence establishing its eligible salary amount under NLR 3/99 s.2(1)(f)(i)-(iii). |
| `schedule302.projects[].remunerationRows[].parentFiscalEnd` | null \| string |  | Actual end of that parent taxation year; separate from the claimant year. |
| `schedule302.projects[].remunerationRows[].parentFiscalStart` | null \| string |  | Actual start of the parent taxation year in which the original expense was incurred. |
| `schedule302.projects[].remunerationRows[].parentOriginalPaidDate` | null \| string |  | Parent's actual original payment to the eligible source individual or supplier. |
| `schedule302.projects[].remunerationRows[].partnershipBusinessInCanadaConfirmed` | boolean \| null |  | Film partnership carries on a business in Canada. |
| `schedule302.projects[].remunerationRows[].personalServicesCorporationConfirmed` | boolean \| null |  | All qualifying shares belong to the eligible individual and the corporation principally provides that individual's services. |
| `schedule302.projects[].remunerationRows[].profitOrRevenueContingentAmount` | null \| number \| string |  | Source fee determined by profits or revenues; enter zero when nil. Excluded unless the film minister establishes an eligible valuation. |
| `schedule302.projects[].remunerationRows[].recipientNlPeConfirmed` | boolean \| null |  | IDM corporate or partnership supplier has the required NL permanent establishment. |
| `schedule302.projects[].remunerationRows[].servicesAtNlPeConfirmed` | boolean \| null |  | IDM services were personally rendered at a permanent establishment in NL. |
| `schedule302.projects[].remunerationRows[].sourceRecordId` | null \| string |  | Unique original supplier or parent source record; shared with the payroll duplicate check. |
| `schedule302.projects[].remunerationRows[].whollyOwnedSubsidiaryConfirmed` | boolean \| null |  | Film claimant is a wholly-owned subsidiary of the parent that incurred the original expense. |
| `schedule302.projects[].residentLabour` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[]` | object |  | Retained provincial credit salaries record input. |
| `schedule302.projects[].salaries[].actualSalary` | null \| number \| string |  | The waived non-resident's actual salary; the eligible salary is the greater of 75% of it and the mentored employee's salary, never more than it. |
| `schedule302.projects[].salaries[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].annualSalaryAlreadyUsed` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].earnedYear` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].eligibleSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].employeeId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].incurredDate` | null \| string |  | Source payroll expense incurrence date. Film accepts current or immediately preceding taxation-year expense subject to its payment exclusion; IDM requires current-year incurrence. NLR 3/99 s.2(1)(f); NLR 84/15 s.9(1). |
| `schedule302.projects[].salaries[].mentoredEmployeeSalary` | null \| number \| string |  | The salary of the resident the waived non-resident mentored (former NLR 3/99 s.9(3)(b)). |
| `schedule302.projects[].salaries[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].residencyEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].residencyWaived` | boolean \| null |  | Whether the minister waived this non-resident employee's residency under former NLR 3/99 s.9 (salary paid before August 9, 2022). |
| `schedule302.projects[].salaries[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].salaries[].waiverEvidenceReference` | null \| string |  | Evidence of the minister's residency waiver for this employee. |
| `schedule302.projects[].totalProjectCosts` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.projects[].totalProjectSalaries` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule302.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule302.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule309.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule309.actualCreditReceipts[]` | object |  |  |
| `schedule309.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule309.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule309.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule309.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule309.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule309.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule309.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule309.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule309.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule309.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule309.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule309.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule309.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule309.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule309.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule309.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule309.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule309.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule309.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule309.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule309.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule309.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule309.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule309.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule309.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule309.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule309.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule309.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupClaims` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupClaims[]` | object |  | Retained provincial credit group claims record input. |
| `schedule309.groupClaims[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupClaims[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupClaims[].claimantBusinessNumber` | null \| string |  | Nine-digit claimant business number for a retained NLassociated-group claim. Distinguishes another member with the same fiscal period from the current claimant; never infer an identity. |
| `schedule309.groupClaims[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupClaims[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupClaims[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupHistoryCompleteConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.groupHistoryEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.precedingFiscalEnd` | null \| string |  | Actual end of the immediately preceding taxation year, immediately before this period. Its following 60 days cannot generate another film claim. NLR 3/99 s.2(1)(f). |
| `schedule309.precedingFiscalStart` | null \| string |  | Actual start of the immediately preceding taxation year; required for a preceding-year film source expense. NLR 3/99 s.2(1)(f). |
| `schedule309.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule309.priorCreditReceipts[]` | object |  |  |
| `schedule309.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule309.projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule309.projects[].assistanceExclusionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].associatedGroupEvidenceReference` | null \| string |  | Shared NL project record field for the former film group limit; not read for interactive digital media. |
| `schedule309.projects[].associatedGroupLimitConfirmed` | boolean \| null |  | Shared NL project record field for the former film group limit; not read for interactive digital media. |
| `schedule309.projects[].canadianIncorporationConfirmed` | boolean \| null |  | Confirm incorporation under Canadian federal or provincial law from corporate records. |
| `schedule309.projects[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].completedDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].completionWithin36MonthsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].conditionsAtRegistrationAndExpenditureConfirmed` | boolean \| null |  | IDM corporate conditions, including NL PE, held at registration and when qualifying expenditures were incurred. NLR 34/26 ss.1-2 applies from July 16, 2026. |
| `schedule309.projects[].conditionsAtRegistrationAndProductionConfirmed` | boolean \| null |  | Film/all-spend corporate conditions, including NL PE, held at registration and throughout production. NLR 3/99 s.3; NLR 31/23 s.3. |
| `schedule309.projects[].corporateConditionsEvidenceReference` | null \| string |  | Corporate incorporation, principal-business, income and applicable PE/timing evidence for this project. |
| `schedule309.projects[].corporateIncomeConditionConfirmed` | boolean \| null |  | Confirm no Part I exempt income for film/all-spend; for IDM confirm that all or part of income is not exempt, as NLR 84/15 s.3(d) states. |
| `schedule309.projects[].eligibleConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].eligibleEmployeeWagesPaidInNl` | null \| number \| string |  | NL film s.6 numerator: employee wages paid for work in NL during this taxation year. Keep separate from the eligible-salary credit base and payments after year-end. |
| `schedule309.projects[].eligibleRemuneration` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].excludedProductCategory` | null \| string |  | Enter none after reviewing every NLR 84/15 ss.4-5 exclusion. Marketing, interpersonal communication, exclusively linear content, prohibited content, real-currency gambling, noninteractive video rereleases, AO content, aggregators, search engines, news/opinion, ordinary websites and nonintrinsic operating-system/engine code do not qualify. |
| `schedule309.projects[].expenditures` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[]` | object |  | Retained provincial credit expenditures record input. |
| `schedule309.projects[].expenditures[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].annualCcaAllowance` | null \| number \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].availabilityDays` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].category` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].ccaCalculationEvidenceReference` | null \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].ccaClass` | null \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].ccaRateDate` | null \| string |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].classRate` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].eligibleConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].eligibleNights` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].nightlyCost` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].expenditures[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].filmEquityFundReceived` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].filmLabourRegistered` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].interactiveDesignConfirmed` | boolean \| null |  | IDM interactive design supported by the minister/product evidence. NLR 84/15 s.2(h). |
| `schedule309.projects[].netTotalProductionCosts` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].noBroadcastingLicenceConfirmed` | boolean \| null |  | Film/all-spend claimant holds no CRTC broadcasting licence throughout the required period. |
| `schedule309.projects[].noNonArmsLengthBroadcasterConfirmed` | boolean \| null |  | Film/all-spend claimant has no prohibited non-arm-length broadcasting-licensee relationship throughout the required period. |
| `schedule309.projects[].nonDuplicatedExpensesConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].nonResidentLabour` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].payrollEligibilityEvidenceReference` | null \| string |  | Evidence for current-year employee payroll under NLR 3/99 s.6, including the province of work and eligible-employee residency. |
| `schedule309.projects[].principalEligibleBusinessConfirmed` | boolean \| null |  | Confirm principal film/video production business for film/all-spend, or principal interactive digital media development business for IDM. |
| `schedule309.projects[].priorClaimsCompleteConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].priorClaimsEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].priorProjectCredits` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].productEligibilityEvidenceReference` | null \| string |  | Retained IDM purpose, media, interactivity and complete statutory exclusion review. |
| `schedule309.projects[].productPurpose` | null \| string |  | IDM primary purpose: educate, inform or entertain. NLR 84/15 s.2(h). |
| `schedule309.projects[].productUsesImages` | boolean \| null |  | IDM product presents images to achieve its primary purpose; explicitly answer yes or no. |
| `schedule309.projects[].productUsesSound` | boolean \| null |  | IDM product presents sound to achieve its primary purpose; explicitly answer yes or no. |
| `schedule309.projects[].productUsesText` | boolean \| null |  | IDM product presents text to achieve its primary purpose; explicitly answer yes or no. |
| `schedule309.projects[].productionStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].registrationCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].remunerationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].remunerationPaidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].remunerationReviewed` | boolean \| null |  | Explicit review of all supplier and parent remuneration sources, including an empty reviewed nil. Omission is unanswered. |
| `schedule309.projects[].remunerationRows` | array |  | Original supplier or parent remuneration records, reconciled to eligibleRemuneration. NLR 3/99 s.2(1)(f); NLR 84/15 s.7. |
| `schedule309.projects[].remunerationRows[]` | object |  |  |
| `schedule309.projects[].remunerationRows[].amount` | null \| number \| string |  | Reasonable directly attributable source fee or reimbursement included in production cost, before the separate contingent-fee exclusion and eligible-wage limit. |
| `schedule309.projects[].remunerationRows[].armsLengthConfirmed` | boolean \| null |  | IDM supplier deals at arm's length with the eligible corporation under NLR 84/15 s.7(e). |
| `schedule309.projects[].remunerationRows[].category` | null \| string |  | Statutory limb: individual_personal, individual_employees, corporation_employees, personal_services_corporation, partnership_personal, partnership_employees, or film-only parent_reimbursement. |
| `schedule309.projects[].remunerationRows[].eligibilityConfirmed` | boolean \| null |  | Confirm reasonable directly attributable eligible-production services, inclusion in its cost, and applicable statutory expense exclusions from the retained source. |
| `schedule309.projects[].remunerationRows[].eligibleIndividualConfirmed` | boolean \| null |  | Film recipient or personal service provider meets the eligible-individual residency rule or an evidenced minister waiver. |
| `schedule309.projects[].remunerationRows[].eligibleUnderlyingWages` | null \| number \| string |  | Film-only eligible employee wages attributable to these services; film employee-service fees cannot exceed this amount. IDM has no corresponding fee ceiling. |
| `schedule309.projects[].remunerationRows[].evidenceReference` | null \| string |  | Original service, cost, underlying eligible-wage and statutory exclusion evidence. |
| `schedule309.projects[].remunerationRows[].incurredDate` | null \| string |  | Original source expense incurrence date, separate from the claimant payment or reimbursement date. |
| `schedule309.projects[].remunerationRows[].ministerEligibleAmount` | null \| number \| string |  | Film minister-established eligible portion of the full source remuneration, required only when a valuation reference is supplied. |
| `schedule309.projects[].remunerationRows[].ministerValuationReference` | null \| string |  | Film minister valuation under NLR 3/99 s.2(3)(c); not a preparer override. |
| `schedule309.projects[].remunerationRows[].nonEmployeeConfirmed` | boolean \| null |  | The individual supplier is not an employee of the claimant. |
| `schedule309.projects[].remunerationRows[].paidDate` | null \| string |  | Actual claimant fee payment or parent reimbursement date; must be in the year or within its following 60 days. |
| `schedule309.projects[].remunerationRows[].parentAgreementReference` | null \| string |  | Retained production agreement electing NLR 3/99 s.2(1)(f)(iii). |
| `schedule309.projects[].remunerationRows[].parentEligibleSalaryAmount` | null \| number \| string |  | Original evidenced amount that would qualify under the film salary or supplier limbs for that parent period; reimbursement cannot exceed it. |
| `schedule309.projects[].remunerationRows[].parentEligibleSalaryEvidenceReference` | null \| string |  | Original parent payroll/service and payment evidence establishing its eligible salary amount under NLR 3/99 s.2(1)(f)(i)-(iii). |
| `schedule309.projects[].remunerationRows[].parentFiscalEnd` | null \| string |  | Actual end of that parent taxation year; separate from the claimant year. |
| `schedule309.projects[].remunerationRows[].parentFiscalStart` | null \| string |  | Actual start of the parent taxation year in which the original expense was incurred. |
| `schedule309.projects[].remunerationRows[].parentOriginalPaidDate` | null \| string |  | Parent's actual original payment to the eligible source individual or supplier. |
| `schedule309.projects[].remunerationRows[].partnershipBusinessInCanadaConfirmed` | boolean \| null |  | Film partnership carries on a business in Canada. |
| `schedule309.projects[].remunerationRows[].personalServicesCorporationConfirmed` | boolean \| null |  | All qualifying shares belong to the eligible individual and the corporation principally provides that individual's services. |
| `schedule309.projects[].remunerationRows[].profitOrRevenueContingentAmount` | null \| number \| string |  | Source fee determined by profits or revenues; enter zero when nil. Excluded unless the film minister establishes an eligible valuation. |
| `schedule309.projects[].remunerationRows[].recipientNlPeConfirmed` | boolean \| null |  | IDM corporate or partnership supplier has the required NL permanent establishment. |
| `schedule309.projects[].remunerationRows[].servicesAtNlPeConfirmed` | boolean \| null |  | IDM services were personally rendered at a permanent establishment in NL. |
| `schedule309.projects[].remunerationRows[].sourceRecordId` | null \| string |  | Unique original supplier or parent source record; shared with the payroll duplicate check. |
| `schedule309.projects[].remunerationRows[].whollyOwnedSubsidiaryConfirmed` | boolean \| null |  | Film claimant is a wholly-owned subsidiary of the parent that incurred the original expense. |
| `schedule309.projects[].residentLabour` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[]` | object |  | Retained provincial credit salaries record input. |
| `schedule309.projects[].salaries[].actualSalary` | null \| number \| string |  | Shared NL salary record field for a film residency waiver; not read for interactive digital media. |
| `schedule309.projects[].salaries[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].annualSalaryAlreadyUsed` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].earnedYear` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].eligibleSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].employeeId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].incurredDate` | null \| string |  | Source payroll expense incurrence date. Film accepts current or immediately preceding taxation-year expense subject to its payment exclusion; IDM requires current-year incurrence. NLR 3/99 s.2(1)(f); NLR 84/15 s.9(1). |
| `schedule309.projects[].salaries[].mentoredEmployeeSalary` | null \| number \| string |  | Shared NL salary record field for a film residency waiver; not read for interactive digital media. |
| `schedule309.projects[].salaries[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].residencyEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].residencyWaived` | boolean \| null |  | Shared NL salary record field; the interactive digital media credit has no residency waiver, so a Yes holds the claim. |
| `schedule309.projects[].salaries[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].salaries[].waiverEvidenceReference` | null \| string |  | Shared NL salary record field for a film residency waiver; not read for interactive digital media. |
| `schedule309.projects[].totalProjectCosts` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.projects[].totalProjectSalaries` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule309.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule309.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule31` | null \| object |  | Schedule 31 (Investment Tax Credit, s.127) practitioner blob. A result is emitted only when the blob is present, so an unopened form never blocks export. |
| `schedule31.amount25CRecapturedCleanHydrogen` | null \| number \| string |  | Amount 25C — Clean Hydrogen recapture / recovery (s.127.48). |
| `schedule31.amount25DRecapturedCleanTech` | null \| number \| string |  | Amount 25D — Clean Tech recapture (s.127.45). From Schedule 75. |
| `schedule31.amount25ERecapturedCleanTechMfg` | null \| number \| string |  | Amount 25E — Clean Tech Mfg recapture (s.127.49). |
| `schedule31.amount25GRecapturedCleanElectricity` | null \| number \| string |  | Clean electricity investment tax credit recapture for the year, printed as form amount 24E. A negative value is floored to zero. Where the canonical ITA s.127.491(17) recapture events are also supplied, the calculated amount controls and a disagreement is reported as an error. |
| `schedule31.apprenticeshipItcOtherwiseBasisReduced` | array \| boolean \| null \| number \| object \| string |  | Was the credit already absorbed by one of the carve-outs — most often ITA 13(7.1)(e), which subtracts "all amounts deducted under subsection 127(5) or (6) ..." from the deemed capital cost of the property? A `true` answer makes the 12(1)(t) inclusion NIL: government grinds the pool or includes the credit in income, never both. `null` blocks. |
| `schedule31.childCareClaimAttributionRows` | array \| null |  |  |
| `schedule31.childCareClaimAttributionRows[]` | object |  |  |
| `schedule31.childCareClaimAttributionRows[].ccaClass` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.childCareClaimAttributionRows[].claimLine` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.childCareClaimAttributionRows[].creditAmount` | null \| number \| string |  |  |
| `schedule31.childCareClaimAttributionRows[].expenditureType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.childCareClaimAttributionRows[].propertyId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.childCareClaimAttributionRows[].sourceReference` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.ecpcConsolidatedGroupAgreementConfirmed` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.ecpcConsolidatedGroupAllocations` | array \| null |  |  |
| `schedule31.ecpcConsolidatedGroupAllocations[]` | object |  |  |
| `schedule31.ecpcConsolidatedGroupAllocations[].businessNumber` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.ecpcConsolidatedGroupAllocations[].memberAllocation` | null \| number \| string |  |  |
| `schedule31.ecpcConsolidatedGroupExpenditureLimit` | null \| number \| string |  |  |
| `schedule31.ecpcConsolidatedGroupMember` | boolean \| null |  | Was the ECPC a member of a consolidated group at any time in the year? ITA 127(10.61) makes a member's expenditure limit nil absent an allocation under 127(10.62)/(10.63). |
| `schedule31.ecpcConsolidatedGroupMemberAllocation` | null \| number \| string |  |  |
| `schedule31.ecpcConsolidatedGroupSameCalendarYearHistory` | array \| null |  |  |
| `schedule31.ecpcConsolidatedGroupSameCalendarYearHistoryComplete` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.ecpcConsolidatedGroupSameCalendarYearHistory[]` | object |  |  |
| `schedule31.ecpcConsolidatedGroupSameCalendarYearHistory[].expenditureLimitBeforeProration` | null \| number \| string |  | Statutory expenditure limit before s.127(10.64)(b), for a preceding period. |
| `schedule31.ecpcConsolidatedGroupSameCalendarYearHistory[].otherEcpcBusinessNumbers` | array \| null |  | Other ECPCs in this period's consolidated group whose tax year ends in the same calendar year. |
| `schedule31.ecpcConsolidatedGroupSameCalendarYearHistory[].otherEcpcBusinessNumbers[]` | null \| string |  |  |
| `schedule31.ecpcConsolidatedGroupSameCalendarYearHistory[].taxYearEnd` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.ecpcEligibilityConfirmed` | boolean \| null |  | Underlying ITA 127(9) residence, public-corporation/control or eligible- subsidiary tests have been reviewed and documented. Box 382 alone is not treated as a second copy of that legal-status evidence. |
| `schedule31.ecpcRefundabilityApplicationConfirmed` | boolean \| null |  | The ECPC refund claim satisfies S.C. 2026, c. 3, s.48(5)'s property- acquisition / lease-cost application dates. |
| `schedule31.farmingContributionNotAlreadyInT661` | boolean \| null |  | The check-off contribution entered in Part 3 is not already included in the producer corporation's Form T661. Explicit false blocks duplication. |
| `schedule31.farmingGrossContribution` | null \| number \| string |  | Gross contribution amount (engine applies 80% factor → line 103). |
| `schedule31.filedCarrybackTargetDatesBound` | boolean \| null |  |  |
| `schedule31.filedFormOperandsBound` | boolean \| null |  |  |
| `schedule31.hasRelatedEmployersForApprentices` | boolean \| null |  | Filemark applicability fact for Part 19: does any related person also employ an apprentice claimed on this schedule? Controls whether CRA box 611 is required; null blocks filing when Part 19 rows exist. |
| `schedule31.isCcpc` | array \| boolean \| null \| number \| object \| string |  | Throughout-the-year CCPC status per s.125(7). Gates the 35% enhanced SR&ED rate (s.127(10.1)) and refundability under Part 14/15. |
| `schedule31.isEcpc` | array \| boolean \| null \| number \| object \| string |  | Line 382 — Are you an eligible Canadian public corporation (ECPC)? |
| `schedule31.isElectingRevenueBasedLimit` | array \| boolean \| null \| number \| object \| string |  | Line 383 — Are you a CCPC electing under s.127(10.31) (single) or s.127(10.32) (associated group) to determine the SR&ED expenditure limit on the REVENUE measure instead of taxable capital? When true (or for an ECPC) in a TYS-after-Dec-15-2024 year, Part 10B substitutes line 399 for line 398 in the $6M × \[($60M − A) ÷ $60M\] formula. |
| `schedule31.isExcludedCorp` | boolean \| null |  | Part 2B line 650 — Excluded corporation per s.127.1(2) (controlled by / related to tax-exempt or public-authority persons). Triggers footnote-7 40%-on-all refund tier. |
| `schedule31.isFarmingCheckOffDuesClaimant` | array \| boolean \| null \| number \| object \| string |  | Part 3 line 102 — Claiming an agricultural-organization SR&ED contribution (e.g. check-off dues). 80% factor applies. |
| `schedule31.isQualifyingCorp` | array \| boolean \| null \| number \| object \| string |  | Part 2A line 101 — Qualifying corporation per s.127.1(2) (CCPC + PY taxable income ≤ qualifying income limit). |
| `schedule31.itcBusinessContinuesPostAoc` | boolean \| null |  | Tri-state attestation: the same or a similar business (s.127(9.1)(d)(i)) is carried on for profit post-AoC and substantially all post-AoC tax payable is attributable to it, so the s.127(5) tax-payable cap already binds. null = unanswered — a Part-I deduction drawing on a pre-AoC opening pool FAILS CLOSED (error severity, removed from T2 line 652) until this is answered or the s.127(9.1)(d) cap below is supplied. |
| `schedule31.itcLossRestrictionEventDate` | array \| boolean \| null \| number \| object \| string |  | ISO YYYY-MM-DD date of the loss restriction event the corporation was last subject to. Send it with the pre-event cohorts when no linked prior filed return carries that provenance. An unparseable value raises and blocks the restriction calculation. |
| `schedule31.line140CleanHydrogenItc` | null \| number \| string |  | Line 140 — Clean Hydrogen ITC (s.127.48). Sourced from Schedule 76 (RETRIEVAL-OPEN — CRA may publish later); entered directly today. |
| `schedule31.line155CleanTechItc` | null \| number \| string |  | Line 155 — Clean Technology ITC (s.127.45). From Schedule 75. |
| `schedule31.line170CleanTechMfgItc` | null \| number \| string |  | Line 170 — Clean Tech Manufacturing ITC (s.127.49). Entered directly on S31 (no separate companion form per Part 24). |
| `schedule31.line185CleanElectricityApprenticeHoursActual` | null \| number \| string |  |  |
| `schedule31.line185CleanElectricityApprenticeHoursRequired` | null \| number \| string |  |  |
| `schedule31.line185CleanElectricityAttestationDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityClaimFormAuthorized` | array \| boolean \| null \| number \| object \| string |  | s.127.491(2) prescribed form containing prescribed information was completed by the filing-due date. |
| `schedule31.line185CleanElectricityDaysBelowPrevailingWage` | null \| number \| string |  |  |
| `schedule31.line185CleanElectricityItc` | null \| number \| string |  | Line 185 — Clean electricity ITC (s.127.491). E (26) fifth clean-economy stream; property acquired after Apr 15 2024. |
| `schedule31.line185CleanElectricityLabourElection` | boolean \| null |  | s.127.46(2) election to claim the regular rather than reduced rate. |
| `schedule31.line185CleanElectricityMetLabourRequirements` | null \| string |  | Installation-year s.127.46(3)/(5) compliance answer. |
| `schedule31.line185CleanElectricityPriorYearRegularRateClaimForInstallationYear` | null \| string |  |  |
| `schedule31.line185CleanElectricityProperties` | array \| null |  | Per-property authority for line 185. |
| `schedule31.line185CleanElectricityProperties[]` | object |  |  |
| `schedule31.line185CleanElectricityProperties[].acquisitionDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].assistanceAmount` | null \| number \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].assistanceSourceCategory` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].availableForUseDate` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].capitalCost` | null \| number \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].designatedWorkSites` | array \| boolean \| null \| number \| object \| string |  | s.127.46(1) designated work site(s) covered by the labour election. |
| `schedule31.line185CleanElectricityProperties[].equipmentCategory` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].equipmentTechnicalDefinitionConfirmed` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].equipmentTechnicalReviewReference` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].intendedExclusiveCanadianUse` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].isRefurbishment` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].leaseOrdinaryBusinessInCanada` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].leasedToAnotherPerson` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].lesseeQualifyingEntity` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].lessorPrincipalBusinessQualifies` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].otherCleanEconomyCreditClaimedOnProperty` | array \| boolean \| null \| number \| object \| string |  | ITA 127.491(9)(a)(ii): another clean-economy credit claimed by any person. |
| `schedule31.line185CleanElectricityProperties[].preparedOrInstalledDate` | array \| boolean \| null \| number \| object \| string |  | s.127.46(1) installation taxation year: the date preparation or installation was completed. s.127.46 reaches this credit only for property prepared or installed on or after 2023-11-28, and the available-for-use date is not a substitute. |
| `schedule31.line185CleanElectricityProperties[].previouslyUsedOrAcquiredForUse` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].projectConstructionStartedBefore20230328` | array \| boolean \| null \| number \| object \| string |  | s.127.491(1) property definition: true excludes the property; send false to establish eligibility. A blank answer leaves the property unproven. |
| `schedule31.line185CleanElectricityProperties[].propertyIdentifier` | array \| boolean \| null \| number \| object \| string |  | Shared fixed-asset key for the five-credit anti-stacking register. |
| `schedule31.line185CleanElectricityProperties[].propertyLocation` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].qualifyingEntityCategory` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].qualifyingEntityType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].refurbishedPropertyRemainsEligible` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].refurbishmentMeetsDefinition` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityProperties[].writtenAgreementConfirmed` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricitySigningOfficerFirstName` | array \| boolean \| null \| number \| object \| string |  | Prescribed-form signing-officer evidence for a regular-rate election. |
| `schedule31.line185CleanElectricitySigningOfficerLastName` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricitySigningOfficerPosition` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.line185CleanElectricityWorkersBelowPrevailingWageCount` | null \| number \| string |  |  |
| `schedule31.line200CcusItc` | null \| number \| string |  | Line 200 — Carbon Capture, Utilization & Storage ITC (s.127.44). From Schedule 78. |
| `schedule31.line210CoopRemittanceQp` | null \| number \| string |  | Line 210 — Credit deemed as a remittance of co-op corporations. |
| `schedule31.line215CreditExpiredQpExtra` | null \| number \| string |  | Line 215 EXTRA — Manual addition to the engine-computed expiry amount (carryforward expiries are auto-detected from vintage ledger; this captures any non-vintage-tracked adjustments). |
| `schedule31.line230AmalgamTransferInQp` | null \| number \| string |  | Line 230 — Credit transferred on amalgamation / wind-up (s.87/88). |
| `schedule31.line230AmalgamTransferInQpByVintage` | null \| object |  |  |
| `schedule31.line235ItcFromRepaymentQp` | null \| number \| string |  | Reported line 235. The engine neutralizes it until an authenticated repayment/property authority path is implemented. |
| `schedule31.line250PartnershipAllocationQp` | null \| number \| string |  | Line 250 — Credit allocated from a partnership (s.127(8)). |
| `schedule31.line260DeductedFromPartIQp` | null \| number \| string |  | Line 260 — Credit deducted from Part I tax. |
| `schedule31.line280TransferredToPartViiQp` | null \| number \| string |  | Line 280 — Credit transferred to offset Part VII tax liability. |
| `schedule31.line310RefundClaimedQp` | null \| number \| string |  | Line 310 — Refund amount designated on the prescribed form under ITA 127.1(1)(d), capped by the Part 7 maximum. Explicit 0 is a valid designation; null leaves the designation unanswered. |
| `schedule31.line360CapitalExpendituresT661` | null \| number \| string |  | Line 360 — Capital SR&ED expenditures incurred after December 15, 2024 (T661 line 558). E (26): the 2024 reform restores capital SR&ED for depreciable property acquired after Dec 15 2024 used for SR&ED. |
| `schedule31.line370RepaymentsT661` | null \| number \| string |  | Line 370 — Repayments made in the year (T661 line 560). |
| `schedule31.line390PriorYearTaxableIncome` | null \| number \| string |  | Box 390 — PY taxable income (pre loss-carrybacks). Short-year prorated by the engine per form note. |
| `schedule31.line399EcpcRevenueMinus15M` | null \| number \| string |  | Line 399 — variable A of s.127(10.6): three-year average annual revenue MINUS $15M (floored at 0, capped at $60M). The form-faithful DIRECT input — the practitioner enters the already-averaged/grossed-up figure. Supply this OR the raw revenuePriorYear1/2/3 inputs below (the raw path, when supplied, wins and lets the engine do the averaging). |
| `schedule31.line460RepaymentAssistanceCcpc` | null \| number \| string |  | Line 460 — Repayment of assistance that reduced a qualifying expenditure for a CCPC. 35% rate applied. |
| `schedule31.line480RepaymentPre2015` | null \| number \| string |  | Line 480 — Repayment of assistance made after Sep 16, 2016 that reduced a qualifying expenditure incurred BEFORE 2015. 20% rate. |
| `schedule31.line490RepaymentPost2014` | null \| number \| string |  | Line 490 — Repayment of assistance made after Sep 16, 2016 that reduced a qualifying expenditure incurred AFTER 2014. 15% rate. |
| `schedule31.line510CoopRemittanceSred` | null \| number \| string |  |  |
| `schedule31.line515CreditExpiredSredExtra` | null \| number \| string |  |  |
| `schedule31.line530AmalgamTransferInSred` | null \| number \| string |  |  |
| `schedule31.line530AmalgamTransferInSredByVintage` | null \| object |  |  |
| `schedule31.line550PartnershipAllocationSred` | null \| number \| string |  |  |
| `schedule31.line560DeductedFromPartISred` | null \| number \| string |  |  |
| `schedule31.line580TransferredToPartViiSred` | null \| number \| string |  |  |
| `schedule31.line610RefundClaimedSred` | null \| number \| string |  | Box 610, the refund of the SR&ED investment tax credit claimed for the year. On an eligible Canadian private corporation in a reform year it is the separate ITA s.127.1 refund claim that S.C. 2026, c. 3, s.48(5) governs: ECPC status and the tax-year-start rule prove the enhanced rate, not this refund rule, so state the amount rather than leaving it to be inferred. |
| `schedule31.line611RelatedEmployerSingleClaimerAgreement` | array \| boolean \| null \| number \| object \| string |  | Part 19 line 611 — Related-employer single-claimer agreement is on file per s.127(11.4) when multiple s.251(2)-related employers jointly employ an apprentice. |
| `schedule31.line612CoopRemittanceAjctc` | null \| number \| string |  |  |
| `schedule31.line615CreditExpiredAjctcExtra` | null \| number \| string |  |  |
| `schedule31.line630AmalgamTransferInAjctc` | null \| number \| string |  |  |
| `schedule31.line630AmalgamTransferInAjctcByVintage` | null \| object |  |  |
| `schedule31.line635ItcFromRepaymentAjctc` | null \| number \| string |  | Reported line 635. The engine neutralizes it until an authenticated repayment/apprentice authority path is implemented. |
| `schedule31.line655PartnershipAllocationAjctc` | null \| number \| string |  |  |
| `schedule31.line660DeductedFromPartIAjctc` | null \| number \| string |  |  |
| `schedule31.line760PartnershipExcessSred` | null \| number \| string |  | Line 760 — Corporate partner's share of partnership-level excess SR&ED ITC recapture (s.127(28)). |
| `schedule31.line765CoopRemittanceChildCare` | null \| number \| string |  |  |
| `schedule31.line770CreditExpiredChildCareExtra` | null \| number \| string |  |  |
| `schedule31.line777AmalgamTransferInChildCare` | null \| number \| string |  |  |
| `schedule31.line777AmalgamTransferInChildCareByVintage` | null \| object |  |  |
| `schedule31.line782PartnershipAllocationChildCare` | null \| number \| string |  |  |
| `schedule31.line785DeductedFromPartIChildCare` | null \| number \| string |  |  |
| `schedule31.line799PartnershipExcessChildCare` | null \| number \| string |  | Line 799 — Corporate partner's share of partnership-level excess child-care-spaces ITC recapture. |
| `schedule31.line841CoopRemittancePpm` | null \| number \| string |  |  |
| `schedule31.line845CreditExpiredPpmExtra` | null \| number \| string |  |  |
| `schedule31.line860AmalgamTransferInPpm` | null \| number \| string |  |  |
| `schedule31.line860AmalgamTransferInPpmByVintage` | null \| object |  |  |
| `schedule31.line885CarryforwardAppliedPpm` | null \| number \| string |  | Line 885 — Carryforward applied to reduce Part I tax. |
| `schedule31.line901CarrybackY1Qp` | null \| number \| string |  | Line 901 — Credit applied to 1st previous tax year. |
| `schedule31.line902CarrybackY2Qp` | null \| number \| string |  | Line 902 — Credit applied to 2nd previous tax year. |
| `schedule31.line903CarrybackY3Qp` | null \| number \| string |  | Line 903 — Credit applied to 3rd previous tax year. |
| `schedule31.line911CarrybackY1Sred` | null \| number \| string |  |  |
| `schedule31.line912CarrybackY2Sred` | null \| number \| string |  |  |
| `schedule31.line913CarrybackY3Sred` | null \| number \| string |  |  |
| `schedule31.line931CarrybackY1Ajctc` | null \| number \| string |  |  |
| `schedule31.line932CarrybackY2Ajctc` | null \| number \| string |  |  |
| `schedule31.line933CarrybackY3Ajctc` | null \| number \| string |  |  |
| `schedule31.openingCarryforwardApprenticeshipByVintage` | null \| object |  |  |
| `schedule31.openingCarryforwardChildCareByVintage` | null \| object |  |  |
| `schedule31.openingCarryforwardPpmByVintage` | null \| object |  |  |
| `schedule31.openingCarryforwardQpByVintage` | null \| object |  | Opening carryforward by vintage year (per s.127(9)(c) 20-year clock). Key is the year-of-original-generation (as string per JSON convention). Vintages older than tax_year − 20 are expired by the engine and rolled into the per-stream line 215/515/615/770. |
| `schedule31.openingCarryforwardSredByVintage` | null \| object |  |  |
| `schedule31.openingPreLossRestrictionCohorts` | null \| object |  | Per credit stream, the opening carryforward earned before the loss restriction event keyed by vintage year, as stream to year to amount and taxationPeriodId. The streams are qualifiedProperty, sred, apprenticeship, preProductionMining and childCareSpaces. Each entry is an object; its amount must be non-negative, and a vintage whose amount is positive is restricted under ITA 127(9.1). |
| `schedule31.openingVintageTaxationPeriodIds` | null \| object |  |  |
| `schedule31.part16Calc1Rows` | array \| null |  |  |
| `schedule31.part16Calc1Rows[]` | object |  |  |
| `schedule31.part16Calc1Rows[].acquisitionTaxYearId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part16Calc1Rows[].acquisitionYear` | array \| boolean \| null \| number \| object \| string |  | Tax year in which the property was acquired. 20-year lookback. |
| `schedule31.part16Calc1Rows[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part16Calc1Rows[].isArmLengthDisposition` | array \| boolean \| null \| number \| object \| string |  | Whether the disposition was at arm's length. Drives the former s.127(27.1) carve-out (repealed 2017, c. 20, s. 23). |
| `schedule31.part16Calc1Rows[].nonArmLengthIntendsAllOrSubstantiallyAllSredUse` | array \| boolean \| null \| number \| object \| string |  | Per form Part 16 note + former s.127(27.1) (repealed 2017, c. 20, s. 23): when true AND isArmLengthDisposition is false, recapture is deferred to the purchaser. |
| `schedule31.part16Calc1Rows[].originalItc` | null \| number \| string |  | Column 700 — original ITC amount calculated on the property when acquired (or original user's ITC for non-arm's-length acquirees). |
| `schedule31.part16Calc1Rows[].recalcAtAcquisitionRate` | null \| number \| string |  | Column 710 — ITC rate at acquisition × proceeds-of-disposition (arm's-length) or fair-market-value (non-arm's-length). |
| `schedule31.part16Calc2Rows` | array \| null |  |  |
| `schedule31.part16Calc2Rows[]` | object |  |  |
| `schedule31.part16Calc2Rows[].acquisitionTaxYearId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part16Calc2Rows[].acquisitionYear` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part16Calc2Rows[].alreadyRecapturedCalc1` | null \| number \| string |  | Column 740 — Amount already recaptured under Calc 1 on the same property (avoids double-counting on partial transfers). |
| `schedule31.part16Calc2Rows[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part16Calc2Rows[].isArmLengthDisposition` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part16Calc2Rows[].itcEarnedByTransferee` | null \| number \| string |  | Column 750 — ITC earned by the transferee for the transferred expenditures (caps the formula result). |
| `schedule31.part16Calc2Rows[].nonArmLengthIntendsAllOrSubstantiallyAllSredUse` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part16Calc2Rows[].podOrFmv` | null \| number \| string |  | Column 730 — Proceeds of disposition (arm's-length) or FMV (other cases) at conversion / disposition. |
| `schedule31.part16Calc2Rows[].transfereeRate` | null \| number \| string |  | Column 720 — Rate the transferee used in determining its ITC for qualified expenditures under the s.127(13) agreement. |
| `schedule31.part19Rows` | array \| null |  |  |
| `schedule31.part19Rows[]` | object |  |  |
| `schedule31.part19Rows[].bcTrainingCreditDeducted` | array \| boolean \| null \| number \| object \| string |  | For an apprentice linked from Schedule 428 or 430, whether eligibleSalaryWages already deducts the British Columbia training credit (ITA s.127(11.1)(c.4)). No deducts it once; no answer holds the row while a linked credit is positive. |
| `schedule31.part19Rows[].contractNumber` | array \| boolean \| null \| number \| object \| string |  | Column 601 — Apprenticeship contract number (or SIN or name when contract # unavailable). |
| `schedule31.part19Rows[].eligibleSalaryWages` | null \| number \| string |  | Column 603 — Eligible salary and wages payable to the apprentice for the tax year (net of any other government / non-government assistance). |
| `schedule31.part19Rows[].eligibleSalaryWagesNetConfirmed` | array \| boolean \| null \| number \| object \| string |  | Explicit s.127(11.1)(c.4) confirmation; the wage amount alone cannot prove that assistance was removed. |
| `schedule31.part19Rows[].eligibleTradeName` | array \| boolean \| null \| number \| object \| string |  | Column 602 — Name of the eligible Red-Seal trade. |
| `schedule31.part19Rows[].isEmployedInCanada` | array \| boolean \| null \| number \| object \| string |  | ITA 127(9) "eligible apprentice" — employed in Canada. |
| `schedule31.part19Rows[].isWithinFirst24MonthsOfRegisteredContract` | array \| boolean \| null \| number \| object \| string |  | ITA 127(9) "eligible apprentice" — within the registered contract's first 24 months. |
| `schedule31.part19Rows[].sourceEmploymentId` | array \| boolean \| null \| number \| object \| string |  | Stable apprentice/payroll identity. Reuse it if the same individual has more than one contract row so the per-apprentice cap cannot be duplicated. |
| `schedule31.part19Rows[].tradeIsPrescribed` | array \| boolean \| null \| number \| object \| string |  | ITA 127(9) "eligible apprentice" — trade prescribed for Canada/province. |
| `schedule31.part23Rows` | array \| null |  |  |
| `schedule31.part23Rows[]` | object |  |  |
| `schedule31.part23Rows[].acquisitionYear` | array \| boolean \| null \| number \| object \| string |  | Tax year in which the property was acquired. 60-month lookback (5 years) per former s.127(27.12) (repealed 2017, c. 20, s. 23). |
| `schedule31.part23Rows[].description` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.part23Rows[].originalItcChildCareSpace` | null \| number \| string |  | Line 792 — Original ITC amount on a disposed child care space (former s.127(27.12)(a), repealed 2017, c. 20, s. 23). |
| `schedule31.part23Rows[].originalItcEligibleExpenditure` | null \| number \| string |  | Line 795 — Original ITC on a disposed eligible expenditure property (former s.127(27.12)(b) input, repealed 2017, c. 20, s. 23). |
| `schedule31.part23Rows[].podOrFmv` | null \| number \| string |  | Proceeds of disposition (arm's-length) or FMV (other cases). Drives line 797 = 25% × this amount. |
| `schedule31.part4Rows` | array \| null |  |  |
| `schedule31.part4Rows[]` | object |  |  |
| `schedule31.part4Rows[].assistanceAmount` | null \| number \| string |  | Assistance reasonably attributable to acquiring the property under s.127(11.1)(b); the engine subtracts it when publishing box 125. |
| `schedule31.part4Rows[].assistanceSourceCategory` | array \| boolean \| null \| number \| object \| string |  | Whether that assistance is government, non-government, mixed, or affirmatively none. Mixed assistance must retain both components and reconcile them to the total. |
| `schedule31.part4Rows[].atlanticLocation` | array \| boolean \| null \| number \| object \| string |  | Column 120 — Atlantic Canada province code or "Gaspé Peninsula" / "offshore" identifier per Reg 4610 + Reg 4609. |
| `schedule31.part4Rows[].ccaClass` | array \| boolean \| null \| number \| object \| string |  | Column 105 — CCA class number (e.g. "8", "10", "53"). |
| `schedule31.part4Rows[].dateAvailableForUse` | array \| boolean \| null \| number \| object \| string |  | Column 115 — date available for use (ISO YYYY-MM-DD). Drives the s.127(11.2) AFU timing gate. |
| `schedule31.part4Rows[].description` | array \| boolean \| null \| number \| object \| string |  | Column 110 — free-form description of the investment. |
| `schedule31.part4Rows[].governmentAssistanceComponent` | null \| number \| string |  | Government portion of mixed assistance for this source property. Both components must reconcile to the entered assistance total. |
| `schedule31.part4Rows[].investmentAmount` | null \| number \| string |  | Capital cost before the s.127(11.1)(b) assistance reduction and before s.13(7.1)/(7.4) grinds. The engine publishes the net at box 125. |
| `schedule31.part4Rows[].nonGovernmentAssistanceComponent` | null \| number \| string |  | Non-government portion of mixed assistance for this source property. Preserve it separately when NS CITC is added to the government component. |
| `schedule31.part4Rows[].nsCitcAssistanceIncluded` | array \| boolean \| null \| number \| object \| string |  | Whether this property row's entered government assistance already includes its certified NS capital investment credit. An unanswered value holds the affected federal row. |
| `schedule31.part4Rows[].sourceAssetId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule31.priorFiscalPeriodsComplete` | boolean \| null |  | Attestation that every taxation period preceding this one is present in the binder, so the preceding-period count can be used as the statutory count for the carryback and vintage arithmetic. Must be true, false or null; anything else is rejected. |
| `schedule31.priorYearS13_7_1UccReduction` | array \| boolean \| null \| number \| object \| string |  | Schedule 31's prior-year qualified-property investment tax credit grind on undepreciated capital cost under ITA s.13(7.1), as an object with appliesToTaxYear, itcDeductedQp, itcRefundedQp, total, byClass and unattributed. Sent on this blob it is lifted into Schedule 8; the identically named root key is the other accepted spelling. |
| `schedule31.priorYearTaxYearDays` | null \| number \| string |  | Days in the prior tax year. Drives short-year proration of line 390. |
| `schedule31.priorYearTaxYearS249_4_bElection` | array \| boolean \| null \| number \| object \| string |  | Whether the corporation elected under ITA paragraph 249(4)(b) for the preceding taxation year. Paragraph 249.1(1)(a) caps a corporate fiscal period at 53 weeks, and 249(4)(b) extends that by up to seven days where the prior year would otherwise have ended in the seven-day period before an acquisition of control, but only where the taxpayer so elects in its return for that year. Only an explicit true buys the extra days, so an unelected day count above the 53-week ceiling stays unlawful and the prior-year day count is refused. |
| `schedule31.revenueFiscalYearDays1` | null \| number \| string |  |  |
| `schedule31.revenueFiscalYearDays2` | null \| number \| string |  |  |
| `schedule31.revenueFiscalYearDays3` | null \| number \| string |  |  |
| `schedule31.revenuePriorYear1` | null \| number \| string |  | RAW-revenue path (s.127(10.6)/(10.64), form line-399 footnote 5): the annual revenue reflected in the financial statements for the 1st/2nd/3rd fiscal year immediately preceding and ending before this tax year. The engine requires the set matching the canonical prior periods. For a consolidated-group ECPC, the accompanying ultimate-parent fiscal-year day counts are required by s.127(10.64)(d). |
| `schedule31.revenuePriorYear2` | null \| number \| string |  |  |
| `schedule31.revenuePriorYear3` | null \| number \| string |  |  |
| `schedule31.s13_7_1ContinuityWired` | boolean \| null |  |  |
| `schedule31.schedule125FarmingIndustryLinked` | boolean \| null |  | Schedule 125 identifies the corporation's farming industry, as required by the Schedule 31 Part 3 instruction once box 102 is Yes. |
| `schedule31.schedule31FilingDueDate` | array \| boolean \| null \| number \| object \| string |  | The filing-due date, an exact ISO YYYY-MM-DD date after the tax-year end: six months after the year end (s.150(1)(a)) before any weekend move; a moved date is read back to it. With schedule31PrescribedFormFiledDate it tests the ITA s.127(9) rule that Schedule 31 be filed within 12 months after it, a weekend or CRA holiday deadline moving to the next CRA business day of the head office province (T2 box 016). Required once a T661 claim exposes a current-year ITC base; either date missing or on or before the year end blocks at error severity. |
| `schedule31.schedule31PrescribedFormFiledDate` | array \| boolean \| null \| number \| object \| string |  | The date the prescribed Schedule 31 information was or will be filed, as an exact ISO YYYY-MM-DD date after the tax-year end: the CIF confirmation date for an electronic filing, the postmark date for first-class mail, or the day of hand delivery. The other half of the ITA s.127(9) 12-month deadline test; see schedule31FilingDueDate. |
| `schedule31.schedule31PrescribedInformationComplete` | array \| boolean \| null \| number \| object \| string |  | Confirmation that Schedule 31 itself contains the prescribed ITC information. The ITA s.127(9) form deadline is a separate statutory gate from the T661 s.37 prescribed-information deadline, so a complete and timely T661 is not a substitute. Only true releases the current-year T661 credit base; blank and false both hold it at error severity. |
| `schedule31.t661Line559SredPool` | null \| number \| string |  | T661 line 559 — SR&ED qualified expenditure pool. Engine adds the Part 3 line 103 (farming check-off × 80%) automatically. |
| `schedule31.taxPayableAttributableToSameOrSimilarBusiness` | null \| number \| string |  | s.127(9.1)(d) cap — Part I tax otherwise payable × same-or-similar business income ÷ taxable income (practitioner-computed; the income streaming is not derivable from S31's own inputs). The pre-AoC claim is ground to this cap. Explicit 0 is valid; null = not supplied. |
| `schedule31.transferInVintageTaxationPeriodIds` | null \| object |  |  |
| `schedule31.ultimateParentFiscalYearDaysPriorYear1` | null \| number \| string |  |  |
| `schedule31.ultimateParentFiscalYearDaysPriorYear2` | null \| number \| string |  |  |
| `schedule31.ultimateParentFiscalYearDaysPriorYear3` | null \| number \| string |  |  |
| `schedule33` | object |  | Schedule 33 (Taxable Capital Employed in Canada) statutory input blob. null or absent means the form was not opened: the node returns the not-ready all-None shape, never a silent-zero 690/790. |
| `schedule33.allResidentComponentsReviewed` | boolean \| null |  | Attestation that every omitted resident component of the ITA s.181.2 build-up — the Part 1 capital additions, the Part 1 capital deductions and the Part 2 investment allowances — is nil. Absent the attestation each of those lines must be entered, including an explicit 0 where nil, because Schedule 33 cannot infer an absent component. null or false leaves the omissions unanswered and holds the calculation; it never converts them to an authoritative zero. |
| `schedule33.isFinancialInstitution` | boolean \| null |  | `true` = a financial institution within the meaning of s.181(1) (→ s.181.3, Schedule 34); null/absent leaves the scope unresolved. |
| `schedule33.isInsuranceCorp` | boolean \| null |  | `true` = an insurance corporation at any time in the year (→ s.181.3, Schedule 35); null/absent leaves the scope unresolved. |
| `schedule33.line713ForeignTaxConditionMet` | boolean \| null |  | Supplied paragraph 181.4(d) fact for a positive line 713. `true` confirms that the corporation's country of residence imposed neither tax described by that paragraph; `false` means line 713 is not deductible; null/absent is unresolved. |
| `schedule33.lines` | object |  | Form line number ("101"…"713") → entry. Enterable codes: 101, 103-112, 121-124, 401-407, 610, 701/711/712/713. |
| `schedule33.partnershipDetails` | null \| object |  | Optional per-partnership detail rows backing lines 112 and 407, as a map from the line code (112 or 407) to a list of partnershipName and amount rows. Detail rows do not substitute for the line amount: the line must also be entered and the rows must total it within tolerance. ITA s.181.2(3)(g) for line 112 and s.181.2(4)(e) for line 407. |
| `schedule34` | object |  |  |
| `schedule34.201` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.202` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.203` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.204` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.205` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.206` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.221` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.222` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.223` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.canadianAssetsBeforeInvestmentAllowance` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts` | null \| object |  | The facts that establish the bank's Canadian banking business is carried on through a Regulation 8201 permanent establishment in Canada, as ITA 248(1) 'Canadian banking business' requires. T2 SCH 34 E (14) Part 2 note 4 states the same condition for the investment allowance. |
| `schedule34.canadianBankingBusinessReg8201Facts.controlledSubsidiaryOnly` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.employeeOrAgentEstablishedAtTarget` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.fixedPlaceJurisdiction` | array \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.fixedPlaceJurisdiction[]` | array \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.fixedPlaceJurisdiction[][][]` | array \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.generalContractingAuthorityAtTarget` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.hasFixedPlaceOfBusiness` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.independentAgentOnly` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.insurerRegisteredOrLicensedJurisdictions` | array \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.insurerRegisteredOrLicensedJurisdictions[]` | array \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.insurerRegisteredOrLicensedJurisdictions[][][]` | array \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.isInsurer` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.personOwnedStockAtTarget` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.principalPlaceOfBusinessAtTarget` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.purchaseOnlyOfficeOnly` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.regularlyFillsOrdersFromStockAtTarget` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.substantialMachineryOrEquipmentUsedAtTarget` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.treatyExists` | boolean \| null \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.treatyPermanentEstablishmentArticle` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.canadianBankingBusinessReg8201Facts.treatyPermanentEstablishmentConclusion` | boolean \| null \| string |  |  |
| `schedule34.investmentReviewComplete` | boolean \| null \| string |  |  |
| `schedule34.investmentRows` | array |  |  |
| `schedule34.investmentRows[]` | object |  |  |
| `schedule34.investmentRows[].carryingValue` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule34.investmentRows[].carryingValueBeforeRiskWeights` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule34.investmentRows[].creditUnionShareholderOrMemberDeeming` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.investmentRows[].investmentId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.investmentRows[].investmentType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.investmentRows[].nonSegregatedProperty` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.investmentRows[].proceedsUsedInCanadianPeBusiness` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.investmentRows[].reg8201Facts` | null \| object |  |  |
| `schedule34.investmentRows[].reg8201Facts.controlledSubsidiaryOnly` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.employeeOrAgentEstablishedAtTarget` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.fixedPlaceJurisdiction` | array \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.fixedPlaceJurisdiction[]` | array \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.fixedPlaceJurisdiction[][][]` | array \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.generalContractingAuthorityAtTarget` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.hasFixedPlaceOfBusiness` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.independentAgentOnly` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.insurerRegisteredOrLicensedJurisdictions` | array \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.insurerRegisteredOrLicensedJurisdictions[]` | array \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.insurerRegisteredOrLicensedJurisdictions[][][]` | array \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.isInsurer` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.personOwnedStockAtTarget` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.principalPlaceOfBusinessAtTarget` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.purchaseOnlyOfficeOnly` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.regularlyFillsOrdersFromStockAtTarget` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.substantialMachineryOrEquipmentUsedAtTarget` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.treatyExists` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.treatyPermanentEstablishmentArticle` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.investmentRows[].reg8201Facts.treatyPermanentEstablishmentConclusion` | boolean \| null \| string |  |  |
| `schedule34.investmentRows[].relatedFinancialInstitution` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.investmentRows[].targetExemptFromPartI3` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.investmentRows[].targetResidentInCanada` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.investmentRows[].usedOrHeldInCanadianBankingBusiness` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.investmentRows[].usedOrHeldInCanadianInsuranceBusiness` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.isAuthorizedForeignBank` | boolean \| null \| string |  |  |
| `schedule34.lines` | object |  |  |
| `schedule34.memberAndCustomerDeposits` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.osfiCapitalDeductionsExcludingLossProtection` | array \| boolean \| null \| number \| object \| string |  | ITA 181.3(3)(e)(ii): the amounts the bank would deduct from its capital under the OSFI risk-based capital adequacy guidelines if it were listed in Schedule II to the Bank Act, excluding any amount in respect of a loss protection facility respecting asset securitization. T2 SCH 34 E (14) box 302. |
| `schedule34.partnershipReviewComplete` | boolean \| null \| string |  |  |
| `schedule34.partnershipRows` | array |  |  |
| `schedule34.partnershipRows[]` | object |  |  |
| `schedule34.partnershipRows[].canadianTangibleAssetCarryingValue` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule34.partnershipRows[].institutionShareIncomeOrLoss` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule34.partnershipRows[].partnershipId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.partnershipRows[].partnershipIncomeOrLoss` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule34.riskWeightedCanadianBankingAssetsAndExposures` | array \| boolean \| null \| number \| object \| string |  | ITA 181.3(3)(e)(i): the total of all amounts each of which is the risk-weighted amount of an on- or off-balance-sheet item of the bank's Canadian banking business, of which line 301 takes 10%. Printed on T2 SCH 34 E (14) page 1, second Part 1 panel, box 301. |
| `schedule34.tangibleAssetReviewComplete` | boolean \| null \| string |  |  |
| `schedule34.tangibleAssetRows` | array |  |  |
| `schedule34.tangibleAssetRows[]` | object |  |  |
| `schedule34.tangibleAssetRows[].acquiredCurrentOrPrecedingYearForDebtDefault` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.tangibleAssetRows[].assetId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule34.tangibleAssetRows[].carryingValue` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule34.tangibleAssetRows[].heldPrimarilyForResale` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.tangibleAssetRows[].nonSegregatedProperty` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.tangibleAssetRows[].tangibleOrCorporeal` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.tangibleAssetRows[].usedInCanada` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule34.totalAssetsBeforeInvestmentAllowance` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule345` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule345.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule345.actualCreditReceipts[]` | object |  |  |
| `schedule345.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule345.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule345.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule345.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule345.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule345.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule345.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule345.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule345.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule345.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule345.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule345.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule345.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule345.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule345.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule345.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule345.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule345.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule345.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule345.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule345.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule345.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule345.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule345.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule345.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule345.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule345.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule345.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.films` | array |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[]` | object |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].applicationDate` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].certificateId` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].cinemaOrTelevisionConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].corporationAndFilmEligibilityConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].eligibleAreaDays` | null \| number \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].eligibleSalaryFraction` | null \| number \| string |  | Corporation-wide eligible salaries divided by total salaries for the claim year (Reg.5(c)); at least 0.25 and consistent across film records. |
| `schedule345.films[].expenses` | array |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[]` | object |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].amount` | null \| number \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].branch` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].eligibleLabourAmount` | null \| number \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].hypotheticalEligibilityConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].incurredDate` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].ministerValuationReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].ministerValuationRequired` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].originalPaymentReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].paidDate` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].parentFiscalEnd` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].parentFiscalStart` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].parentPrecedingFiscalEnd` | null \| string |  | Original dated film evidence under NS ITA s.47 and Film Industry Tax Credit Regulations 3 and 6. |
| `schedule345.films[].expenses[].parentPrecedingFiscalStart` | null \| string |  | Original dated film evidence under NS ITA s.47 and Film Industry Tax Credit Regulations 3 and 6. |
| `schedule345.films[].expenses[].payeeId` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].residenceAndWorkStageEvidenceReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].expenses[].sourceRecordId` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].extensionConditionsSatisfied` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].extensionDeadline` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].extensionDecisionReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].filmId` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].frequentFilmerClaimed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].geographyEvidenceReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].issuerReconciliationReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].noDuplicateUseConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].noPreviousBonusUseConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].ownershipEvidenceReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].parentBusinessNumber` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].photographyDays` | null \| number \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].photographyEnd` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].photographyStart` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].principalOwnerId` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].principalOwnershipThroughoutConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorClaimsAndAssistanceReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms` | array |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[]` | object |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].cinemaOrTelevisionConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].completedProductionReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].eligibleFilmAndCorporationConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].filmId` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].noUseByDifferentOwnerConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].photographyCompleted` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].photographyStart` | null \| string |  | Original dated film evidence under NS ITA s.47 and Film Industry Tax Credit Regulations 3 and 6. |
| `schedule345.films[].priorFilms[].principalOwnerId` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].seriesIdentityReconciledConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].priorFilms[].viewingMinutes` | null \| number \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].productionStart` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].reimbursementAmount` | null \| number \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].reimbursementDate` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].reimbursementEvidenceReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].signedAgreementReference` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].subsidiaryBusinessNumber` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].viewingMinutes` | null \| number \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].whollyOwnedConfirmed` | boolean \| null |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].whollyOwnedFrom` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.films[].whollyOwnedTo` | null \| string |  | Retained film qualification and reimbursement evidence under NS ITA s.47 and Film Industry Tax Credit Regulations; unknown facts hold the claim. |
| `schedule345.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule345.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule345.priorCreditReceipts[]` | object |  |  |
| `schedule345.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule345.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule345.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule347.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule347.actualCreditReceipts[]` | object |  |  |
| `schedule347.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule347.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule347.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule347.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule347.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule347.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule347.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule347.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule347.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule347.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule347.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule347.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule347.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule347.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule347.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule347.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule347.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule347.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule347.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule347.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule347.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule347.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule347.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule347.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule347.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule347.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule347.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule347.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule347.priorCreditReceipts[]` | object |  |  |
| `schedule347.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule347.projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule347.projects[].approvedPlanEffectiveDate` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].approvedPlanVersion` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].assistanceExclusionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].capitalMilestones` | array |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].capitalMilestones[]` | object |  |  |
| `schedule347.projects[].capitalMilestones[].actualCapitalCost` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].capitalMilestones[].basis` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].capitalMilestones[].evidenceReference` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].capitalMilestones[].milestoneId` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].capitalMilestones[].months` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].capitalMilestones[].plannedCapitalCost` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].certificateReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].completePartAApplicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].completePriorClaimsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].completionDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].drivingDistanceKm` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].eligibleAreaPeConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].eligibleAreaSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].eligibleRemuneration` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].governmentRevenueShare` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].issuerComponentDescription` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].issuerComponentEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour[]` | object |  | Retained provincial credit labour record input. |
| `schedule347.projects[].labour[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour[].animationSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour[].eligibleSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour[].employeeId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].labour[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketing` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketingHistoryEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketing[]` | object |  | Retained provincial credit marketing record input. |
| `schedule347.projects[].marketing[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketing[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketing[].foodBeverageEntertainment` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketing[].incurredDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketing[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].marketing[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].milestonesConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].ministerApprovedPlanConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].naics2012EligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].naics2012PrincipalActivity` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].nonDuplicatedOutlaysConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].otherEffectiveClaims` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].otherEffectiveClaims[]` | object |  | Retained provincial credit other effective claims record input. |
| `schedule347.projects[].otherEffectiveClaims[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].otherEffectiveClaims[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].otherEffectiveClaims[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].otherEffectiveClaims[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].otherEffectiveClaims[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].partAApprovalDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].partBApplicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].priorMarketingClaimed` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].productionStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[]` | object |  | Retained provincial credit properties record input. |
| `schedule347.projects[].properties[].acquisitionAndUseMatchPlanConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].assistanceEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].availableForUse` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].availableForUseWithoutExcludedDeemingConfirmed` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].capitalAssistanceWorkpaperId` | null \| string |  | Existing government-assistance workpaper that owns this property's CITC capital-cost treatment. |
| `schedule347.projects[].properties[].capitalAssistanceWorkpaperRowKey` | null \| string |  | Stable row key of the property-specific CITC assistance record. Missing or conflicting links hold Schedule 8. |
| `schedule347.projects[].properties[].capitalCost` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].certifiedCreditAllocation` | null \| number \| string |  | Issuer-supported CITC allocation to this property when the project maximum binds across several assets. Missing allocation holds; no proportional allocation is inferred. |
| `schedule347.projects[].properties[].creditAssistanceEntitledDate` | null \| string |  | Evidenced date of entitlement to the property-specific CITC assistance. The certificate issue date is not substituted. |
| `schedule347.projects[].properties[].creditAssistanceEvidenceReference` | null \| string |  | Retained issuer allocation and assistance entitlement evidence for this source property. |
| `schedule347.projects[].properties[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].federalAssistanceEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].federalAssistanceReconciledConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].leaseQualificationEvidenceReference` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].leaseRole` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].nsUseFraction` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].purchaseDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].qualification` | null \| object |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.acquiredForIncomePurpose` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.acquisitionDate` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.ccaClass` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.hasQualifyingUse` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.isBuilding` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.isLand` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.isNewProperty` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.isNotQualifiedResourceProperty` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualification.reg4600PrescribedPropertyCategory` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].qualificationBranch` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].qualificationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].sourceAssetId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].properties[].spaceActivityNaics2012` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].spaceActivityUseConfirmed` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].properties[].spaceQualificationEvidenceDate` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule347.projects[].remunerationEligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].remunerationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].remunerationPaidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.projects[].totalProductionOutlays` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule347.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule347.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule348.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule348.actualCreditReceipts[]` | object |  |  |
| `schedule348.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule348.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule348.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule348.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule348.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule348.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule348.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule348.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule348.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule348.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule348.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule348.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule348.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule348.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule348.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule348.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule348.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule348.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule348.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule348.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule348.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule348.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule348.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule348.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule348.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule348.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule348.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule348.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule348.priorCreditReceipts[]` | object |  |  |
| `schedule348.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule348.projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule348.projects[].approvedPlanEffectiveDate` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].approvedPlanVersion` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].assistanceExclusionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].capitalMilestones` | array |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].capitalMilestones[]` | object |  |  |
| `schedule348.projects[].capitalMilestones[].actualCapitalCost` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].capitalMilestones[].basis` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].capitalMilestones[].evidenceReference` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].capitalMilestones[].milestoneId` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].capitalMilestones[].months` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].capitalMilestones[].plannedCapitalCost` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].certificateReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].completePartAApplicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].completePriorClaimsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].completionDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].drivingDistanceKm` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].eligibleAreaPeConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].eligibleAreaSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].eligibleRemuneration` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].governmentRevenueShare` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].issuerComponentDescription` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].issuerComponentEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour[]` | object |  | Retained provincial credit labour record input. |
| `schedule348.projects[].labour[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour[].animationSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour[].eligibleSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour[].employeeId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].labour[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketing` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketingHistoryEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketing[]` | object |  | Retained provincial credit marketing record input. |
| `schedule348.projects[].marketing[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketing[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketing[].foodBeverageEntertainment` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketing[].incurredDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketing[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].marketing[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].milestonesConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].ministerApprovedPlanConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].naics2012EligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].naics2012PrincipalActivity` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].nonDuplicatedOutlaysConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].otherEffectiveClaims` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].otherEffectiveClaims[]` | object |  | Retained provincial credit other effective claims record input. |
| `schedule348.projects[].otherEffectiveClaims[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].otherEffectiveClaims[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].otherEffectiveClaims[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].otherEffectiveClaims[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].otherEffectiveClaims[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].partAApprovalDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].partBApplicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].priorMarketingClaimed` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].productionStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[]` | object |  | Retained provincial credit properties record input. |
| `schedule348.projects[].properties[].acquisitionAndUseMatchPlanConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].assistanceEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].availableForUse` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].availableForUseWithoutExcludedDeemingConfirmed` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].capitalAssistanceWorkpaperId` | null \| string |  | Existing government-assistance workpaper that owns this property's CITC capital-cost treatment. |
| `schedule348.projects[].properties[].capitalAssistanceWorkpaperRowKey` | null \| string |  | Stable row key of the property-specific CITC assistance record. Missing or conflicting links hold Schedule 8. |
| `schedule348.projects[].properties[].capitalCost` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].certifiedCreditAllocation` | null \| number \| string |  | Issuer-supported CITC allocation to this property when the project maximum binds across several assets. Missing allocation holds; no proportional allocation is inferred. |
| `schedule348.projects[].properties[].creditAssistanceEntitledDate` | null \| string |  | Evidenced date of entitlement to the property-specific CITC assistance. The certificate issue date is not substituted. |
| `schedule348.projects[].properties[].creditAssistanceEvidenceReference` | null \| string |  | Retained issuer allocation and assistance entitlement evidence for this source property. |
| `schedule348.projects[].properties[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].federalAssistanceEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].federalAssistanceReconciledConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].leaseQualificationEvidenceReference` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].leaseRole` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].nsUseFraction` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].purchaseDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].qualification` | null \| object |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.acquiredForIncomePurpose` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.acquisitionDate` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.ccaClass` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.hasQualifyingUse` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.isBuilding` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.isLand` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.isNewProperty` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.isNotQualifiedResourceProperty` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualification.reg4600PrescribedPropertyCategory` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].qualificationBranch` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].qualificationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].sourceAssetId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].properties[].spaceActivityNaics2012` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].spaceActivityUseConfirmed` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].properties[].spaceQualificationEvidenceDate` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule348.projects[].remunerationEligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].remunerationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].remunerationPaidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.projects[].totalProductionOutlays` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule348.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule348.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule349` | null \| object |  | Nova Scotia certified corporate credit, origin ledger, carryback requests and confirmed shared-capacity allocation. Null means unopened. |
| `schedule349.actualCreditReceipts` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].amount` | null \| number \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].evidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].id` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].propertyId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].receiptKind` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].receivedDate` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].sourceCurrency` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].treatment` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].workpaperId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.allocationConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.assistancePostingConfirmed` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.assistanceReconciliationReference` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.carrybacks` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].amount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].originAmendmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].requestId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].sourceCurrency` | null \| string |  | Currency of the carryback destination tax, prior use and requested amount, required on every carryback. Reconcile a currency transition before requesting use. |
| `schedule349.carrybacks[].targetAssessmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].targetSameCreditAlreadyApplied` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].targetTaxOtherwisePayable` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.carrybacks[].targetTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].applicationExtensionDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].authorizedRaiseExpiry` | null \| string |  | S350 authorized-raise evidence. The certificate application deadline runs from this raise expiry, independently of fund registration. |
| `schedule349.certificates[].authorizedRaiseStart` | null \| string |  | S350 authorized-raise evidence. The certificate application deadline runs from this raise expiry, independently of fund registration. |
| `schedule349.certificates[].certificateActualInvestmentYearConfirmed` | boolean \| null |  | Retain the original certificate identity or the explicit provincial actual-investment-year reconciliation basis. |
| `schedule349.certificates[].certificateDocumentId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].certificateId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].certificateNumber` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].certificateTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].certificateYearBasisReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].certifiedAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].completeApplicationDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].conversionDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].corporateEligibilityConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].debentureExclusionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].extensionEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].fundEquityCapital` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].holidayCalendarEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].investmentAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].investmentConditionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].investmentDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].issueDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].issuerAssetsIncludingAssociated` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].issuerConditionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].issuerEmployeesIncludingAssociated` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].issuerName` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].issuerNsRemunerationPercent` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].legalHolidayDates` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].legalHolidayDates[]` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].noAcquisitionAssistanceConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].noControlInFactConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].noPortfolioProhibitedAssistanceConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].portfolioConditionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].program` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].raiseApprovalReference` | null \| string |  | S350 authorized-raise evidence. The certificate application deadline runs from this raise expiry, independently of fund registration. |
| `schedule349.certificates[].recipientBusinessNumber` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].registrationDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].registrationExpiry` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].relatedGroupVotesPercent` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].securityType` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].sourceCurrency` | null \| string |  | Currency of the certified amount, required on every certificate; retain conversions when it differs from the return. |
| `schedule349.certificates[].status` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.certificates[].supersedesCertificateId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.claim` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.currencyBasis` | null \| object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.currentUse` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.currentUse[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.currentUse[].amount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.currentUse[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.declaredExpiredCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.formRevision` | null \| string |  | Edition of Schedule 349 the claim is prepared on, spelled as the form registry spells it (T2 SCH 349 E (24); E (20) for 2023). Null or blank uses the edition for the taxation year; any other value is refused. |
| `schedule349.lifecycleEvents` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].assessedDebt` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].creditReceived` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].eligibleEquityCapital` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].eventDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].eventId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].eventType` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].evidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].monthsHeld` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].poolReconciledToAssessmentConfirmed` | boolean \| null |  | Confirm the affected origin pool reflects the actual provincial certification or assessment after revocation, surrender or a conflicting approval. |
| `schedule349.lifecycleEvents[].prohibitedInvestment` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].provincialAssessmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].remittedAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].statutoryContinuityReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].successorBusinessNumber` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].totalEquityCapital` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].waiverApprovedAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.lifecycleEvents[].waiverEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.openingCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.openingEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].assessmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].certificateIds` | array |  | Retain the original certificate identity or the explicit provincial actual-investment-year reconciliation basis. |
| `schedule349.origins[].certificateIds[]` | null \| string |  | Retain the original certificate identity or the explicit provincial actual-investment-year reconciliation basis. |
| `schedule349.origins[].openingCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].originEarnedCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].originTaxOtherwisePayable` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].originalUnusedEntitlement` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].priorUsage` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].priorUsageCompleteConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.origins[].sourceCurrency` | null \| string |  | Currency of the original cohort and its assessed amounts, required on every origin. Reconcile a currency transition before using the pool. |
| `schedule349.origins[].usageHistory` | array |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[]` | object |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].assessedAmount` | null \| number \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].assessmentReference` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].claimId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].claimedAmount` | null \| number \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].destinationTaxYearId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].filingReference` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].fiscalEnd` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].fiscalStart` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].requestId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].sourceCurrency` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.origins[].usageHistory[].supersedesClaimId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule349.priorCreditReceipts` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].amount` | null \| number \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].evidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].id` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].propertyId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].receiptKind` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].receivedDate` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].sourceCurrency` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].treatment` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].workpaperId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.receiptsReviewed` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule349.requestedClaim` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.taxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.taxationYearSequenceCompleteConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.taxationYears` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.taxationYears[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.taxationYears[].fiscalEnd` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.taxationYears[].fiscalStart` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule349.taxationYears[].taxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule35` | object |  |  |
| `schedule35.102` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.103` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.104` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.105` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.106` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.107` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.108` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.122` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.202` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.203` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.204` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.205` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.206` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.207` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.208` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.222` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.302` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.303` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.304` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.331` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.341` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.342` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.522` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.523` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.canadianPremiumsNetReg403` | array \| boolean \| null \| number \| object \| string |  | Box 611: Canadian premiums for the year, the numerator of the ITA 181.3(1)(c)(iii) apportionment. |
| `schedule35.carriedInsuranceBusinessInCanadaAtAnyTime` | boolean \| null \| string |  |  |
| `schedule35.carriedLifeInsuranceBusinessAtAnyTime` | boolean \| null \| string |  |  |
| `schedule35.currentTransferPartXivTaxBaseAmounts` | array \| boolean \| null \| number \| object \| string |  | Line 301 note 3(ii): the amount on which tax was required to be paid under subsection 219(5.2) for the year because of a transfer of an insurance business to which subsection 138(11.5) or (11.92) applied. |
| `schedule35.eligibleNonSegregatedInsuranceContractCsm` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.eligibleNonSegregatedReinsuranceContractCsm` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.eligibleSpecifiedInsuranceContractCsm` | array \| boolean \| null \| number \| object \| string |  | ITA 181.3(3)(c): the contractual service margin for groups of specified insurance contracts, of which line 209 takes the prescribed percentage. |
| `schedule35.eligibleSpecifiedReinsuranceContractCsm` | array \| boolean \| null \| number \| object \| string |  | The CSM for groups of specified reinsurance contracts, which reduces the amount above (T2 SCH 35 E (23) Note 2, 'variables C and D of paragraph 181.3(3)(c)'). |
| `schedule35.foreignInsuranceSubsidiaryReviewComplete` | boolean \| null \| string |  | Confirms completion of the Regulation 8605 foreign-insurance-subsidiary census. Send true or Yes only after the complete population has been reviewed; blank is not proof that none exist. |
| `schedule35.foreignInsuranceSubsidiaryRows` | array |  | Reviewed Regulation 8605 subsidiary rows used for Schedule 35 lines 521, 524, and 525. Send an empty array when the completed census found no subsidiaries. |
| `schedule35.foreignInsuranceSubsidiaryRows[]` | object |  | Reviewed Regulation 8605 subsidiary rows used for Schedule 35 lines 521, 524, and 525. Send an empty array when the completed census found no subsidiaries. |
| `schedule35.foreignInsuranceSubsidiaryRows[].additionalSurplusContributedI` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].capitalStockInvestedH` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].lastTaxYearEnd` | null \| string |  | Required by the Schedule 38 receiver: last subsidiary year ending on/before the filer year-end. |
| `schedule35.foreignInsuranceSubsidiaryRows[].longTermDebtInvestedH` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605CapitalA` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail` | object |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail.aociContributedSurplusOther` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail.capitalStockOrMemberContributions` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail.deficitDeductedInShareholdersEquity` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail.longTermDebt` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail.netCsm90` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail.policyholderLiabilities` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605FormDetail.retainedEarnings` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].reg8605ReserveLiabilities` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].subsidiaryId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.foreignInsuranceSubsidiaryRows[].subsidiaryName` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.investmentReviewComplete` | boolean \| null \| string |  |  |
| `schedule35.investmentRows` | array |  |  |
| `schedule35.investmentRows[]` | object |  |  |
| `schedule35.investmentRows[].carryingValue` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule35.investmentRows[].carryingValueBeforeRiskWeights` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule35.investmentRows[].creditUnionShareholderOrMemberDeeming` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.investmentRows[].investmentId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.investmentRows[].investmentType` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.investmentRows[].nonSegregatedProperty` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.investmentRows[].proceedsUsedInCanadianPeBusiness` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.investmentRows[].reg8201Facts` | null \| object |  |  |
| `schedule35.investmentRows[].reg8201Facts.controlledSubsidiaryOnly` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.employeeOrAgentEstablishedAtTarget` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.fixedPlaceJurisdiction` | array \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.fixedPlaceJurisdiction[]` | array \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.fixedPlaceJurisdiction[][][]` | array \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.generalContractingAuthorityAtTarget` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.hasFixedPlaceOfBusiness` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.independentAgentOnly` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.insurerRegisteredOrLicensedJurisdictions` | array \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.insurerRegisteredOrLicensedJurisdictions[]` | array \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.insurerRegisteredOrLicensedJurisdictions[][][]` | array \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.isInsurer` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.personOwnedStockAtTarget` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.principalPlaceOfBusinessAtTarget` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.purchaseOnlyOfficeOnly` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.regularlyFillsOrdersFromStockAtTarget` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.substantialMachineryOrEquipmentUsedAtTarget` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.treatyExists` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.treatyPermanentEstablishmentArticle` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.investmentRows[].reg8201Facts.treatyPermanentEstablishmentConclusion` | boolean \| null \| string |  |  |
| `schedule35.investmentRows[].relatedFinancialInstitution` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.investmentRows[].targetExemptFromPartI3` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.investmentRows[].targetResidentInCanada` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.investmentRows[].usedOrHeldInCanadianBankingBusiness` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.investmentRows[].usedOrHeldInCanadianInsuranceBusiness` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.line331NetOfReinsuranceContractHeldAmounts` | boolean \| null \| string |  | The preparer's confirmation that line 331 is already net of the clause 181.3(3)(d)(iv)(F) reinsurance-contract-held amount, so it is not subtracted twice. |
| `schedule35.lines` | object |  |  |
| `schedule35.partnershipReviewComplete` | boolean \| null \| string |  |  |
| `schedule35.partnershipRows` | array |  |  |
| `schedule35.partnershipRows[]` | object |  |  |
| `schedule35.partnershipRows[].canadianTangibleAssetCarryingValue` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule35.partnershipRows[].institutionShareIncomeOrLoss` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule35.partnershipRows[].partnershipId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.partnershipRows[].partnershipIncomeOrLoss` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule35.preIfrs17CapitalStockOrMemberContributions` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17ClaimsReserveReinsuranceRecoverable` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17ContributedSurplus` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17DeferredTaxDebitBalance` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17DeficitDeductedInShareholdersEquity` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17LongTermDebt` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17NonresidentOtherPartIDeductedReserves` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17NonresidentPolicyLoans` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17NonresidentReserves` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17NonresidentSubparagraph138_3_a_iReserves` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17OtherSurpluses` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17PropertyCasualtyDeferredAcquisitionExpenses` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17ReservesNotDeductedInPartIIncome` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.preIfrs17RetainedEarnings` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.premiumsComputedNetUnderReg403` | boolean \| null \| string |  | The preparer's confirmation that the Canadian and total premium operands are determined under Income Tax Regulations 403(2)-(3). |
| `schedule35.priorPartXivTaxBaseAmounts` | array \| boolean \| null \| number \| object \| string |  | Line 301 note 3(i): the amount on which tax was required to be paid, or would but for subsection 219(5.2) have been required to be paid, under Part XIV for a preceding year. |
| `schedule35.reserveOperandReviewComplete` | boolean \| null \| string |  | The preparer's confirmation that the line 210 reserve operand is net of reinsurance and excludes Part I deductions and CSM reserves. A blank is unknown, not Yes. |
| `schedule35.reservesNetOfReinsuranceNotPartIDeductedOrCsm` | array \| boolean \| null \| number \| object \| string |  | Box 210: reserves net of reinsurance, except to the extent they were deducted in computing income under Part I for the year or are reserves in respect of the CSM of a group of insurance contracts. |
| `schedule35.surplusFundsDerivedFromOperationsBeforePartI3AndPartVI` | array \| boolean \| null \| number \| object \| string |  | Line 301 note 3: surplus funds derived from operations as defined in subsection 138(12), computed as if no tax were payable under Part I.3 or Part VI for the year. |
| `schedule35.tangibleAssetReviewComplete` | boolean \| null \| string |  |  |
| `schedule35.tangibleAssetRows` | array |  |  |
| `schedule35.tangibleAssetRows[]` | object |  |  |
| `schedule35.tangibleAssetRows[].acquiredCurrentOrPrecedingYearForDebtDefault` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.tangibleAssetRows[].assetId` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule35.tangibleAssetRows[].carryingValue` | array \| boolean \| null \| number \| object \| string |  | Send a JSON number, a plain money string, or the reviewed {"amount": ..., "source": ...} block this target's own published example uses on every line; all three are read as the same amount. |
| `schedule35.tangibleAssetRows[].heldPrimarilyForResale` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.tangibleAssetRows[].nonSegregatedProperty` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.tangibleAssetRows[].tangibleOrCorporeal` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.tangibleAssetRows[].usedInCanada` | boolean \| null \| string |  | Answer with true/false or with the strings Yes/No, the forms this target's own published example uses. Anything else, including null, leaves the fact UNANSWERED, which is never read as no. |
| `schedule35.totalPremiumsNetReg403` | array \| boolean \| null \| number \| object \| string |  | Box 612: total premiums for the year, the denominator of the same apportionment. |
| `schedule350` | null \| object |  | Nova Scotia certified corporate credit, origin ledger, carryback requests and confirmed shared-capacity allocation. Null means unopened. |
| `schedule350.actualCreditReceipts` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].amount` | null \| number \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].evidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].id` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].propertyId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].receiptKind` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].receivedDate` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].sourceCurrency` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].treatment` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].workpaperId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.allocationConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.assistancePostingConfirmed` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.assistanceReconciliationReference` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.carrybacks` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].amount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].originAmendmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].requestId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].sourceCurrency` | null \| string |  | Currency of the carryback destination tax, prior use and requested amount, required on every carryback. Reconcile a currency transition before requesting use. |
| `schedule350.carrybacks[].targetAssessmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].targetSameCreditAlreadyApplied` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].targetTaxOtherwisePayable` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.carrybacks[].targetTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].applicationExtensionDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].authorizedRaiseExpiry` | null \| string |  | S350 authorized-raise evidence. The certificate application deadline runs from this raise expiry, independently of fund registration. |
| `schedule350.certificates[].authorizedRaiseStart` | null \| string |  | S350 authorized-raise evidence. The certificate application deadline runs from this raise expiry, independently of fund registration. |
| `schedule350.certificates[].certificateActualInvestmentYearConfirmed` | boolean \| null |  | Retain the original certificate identity or the explicit provincial actual-investment-year reconciliation basis. |
| `schedule350.certificates[].certificateDocumentId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].certificateId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].certificateNumber` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].certificateTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].certificateYearBasisReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].certifiedAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].completeApplicationDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].conversionDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].corporateEligibilityConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].debentureExclusionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].extensionEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].fundEquityCapital` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].holidayCalendarEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].investmentAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].investmentConditionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].investmentDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].issueDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].issuerAssetsIncludingAssociated` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].issuerConditionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].issuerEmployeesIncludingAssociated` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].issuerName` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].issuerNsRemunerationPercent` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].legalHolidayDates` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].legalHolidayDates[]` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].noAcquisitionAssistanceConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].noControlInFactConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].noPortfolioProhibitedAssistanceConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].portfolioConditionsConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].program` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].raiseApprovalReference` | null \| string |  | S350 authorized-raise evidence. The certificate application deadline runs from this raise expiry, independently of fund registration. |
| `schedule350.certificates[].recipientBusinessNumber` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].registrationDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].registrationExpiry` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].relatedGroupVotesPercent` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].securityType` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].sourceCurrency` | null \| string |  | Currency of the certified amount, required on every certificate; retain conversions when it differs from the return. |
| `schedule350.certificates[].status` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.certificates[].supersedesCertificateId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.claim` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.currencyBasis` | null \| object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.currentUse` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.currentUse[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.currentUse[].amount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.currentUse[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.declaredExpiredCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.formRevision` | null \| string |  | Edition of Schedule 350 the claim is prepared on, spelled as the form registry spells it (T2 SCH 350 E (24); E (20) for 2023). Null or blank uses the edition for the taxation year; any other value is refused. |
| `schedule350.lifecycleEvents` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].assessedDebt` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].creditReceived` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].eligibleEquityCapital` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].eventDate` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].eventId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].eventType` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].evidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].monthsHeld` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].poolReconciledToAssessmentConfirmed` | boolean \| null |  | Confirm the affected origin pool reflects the actual provincial certification or assessment after revocation, surrender or a conflicting approval. |
| `schedule350.lifecycleEvents[].prohibitedInvestment` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].provincialAssessmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].remittedAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].statutoryContinuityReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].successorBusinessNumber` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].totalEquityCapital` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].waiverApprovedAmount` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.lifecycleEvents[].waiverEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.openingCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.openingEvidenceReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].assessmentReference` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].certificateIds` | array |  | Retain the original certificate identity or the explicit provincial actual-investment-year reconciliation basis. |
| `schedule350.origins[].certificateIds[]` | null \| string |  | Retain the original certificate identity or the explicit provincial actual-investment-year reconciliation basis. |
| `schedule350.origins[].openingCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].originEarnedCredit` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].originTaxOtherwisePayable` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].originTaxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].originalUnusedEntitlement` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].priorUsage` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].priorUsageCompleteConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.origins[].sourceCurrency` | null \| string |  | Currency of the original cohort and its assessed amounts, required on every origin. Reconcile a currency transition before using the pool. |
| `schedule350.origins[].usageHistory` | array |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[]` | object |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].assessedAmount` | null \| number \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].assessmentReference` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].claimId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].claimedAmount` | null \| number \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].destinationTaxYearId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].filingReference` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].fiscalEnd` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].fiscalStart` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].requestId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].sourceCurrency` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.origins[].usageHistory[].supersedesClaimId` | null \| string |  | Retain filed and assessed credit use by actual destination period, with claim identity, assessment evidence and supersession. Unassessed claims are not assessed usage. |
| `schedule350.priorCreditReceipts` | array |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[]` | object |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].amount` | null \| number \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].evidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].id` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].propertyId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].receiptKind` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].receivedDate` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].sourceCurrency` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].treatment` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].workpaperId` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.receiptsReviewed` | boolean \| null |  | Review actual provincial credit receipts or tax applications and the single linked federal income/property-basis workpaper. Preserve original currency, dates and prior receipt identities. |
| `schedule350.requestedClaim` | null \| number \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.taxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.taxationYearSequenceCompleteConfirmed` | boolean \| null |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.taxationYears` | array |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.taxationYears[]` | object |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.taxationYears[].fiscalEnd` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.taxationYears[].fiscalStart` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule350.taxationYears[].taxYearId` | null \| string |  | Retained source evidence for the certified credit, actual taxation years and explicit allocation; computation validates completeness. |
| `schedule351` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule351.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule351.actualCreditReceipts[]` | object |  |  |
| `schedule351.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule351.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule351.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule351.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule351.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule351.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule351.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule351.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule351.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule351.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule351.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule351.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule351.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule351.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule351.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule351.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule351.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule351.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule351.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule351.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule351.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule351.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule351.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule351.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule351.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule351.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule351.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule351.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule351.priorCreditReceipts[]` | object |  |  |
| `schedule351.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule351.projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule351.projects[].approvedPlanEffectiveDate` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].approvedPlanVersion` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].assistanceExclusionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].capitalMilestones` | array |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].capitalMilestones[]` | object |  |  |
| `schedule351.projects[].capitalMilestones[].actualCapitalCost` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].capitalMilestones[].basis` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].capitalMilestones[].evidenceReference` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].capitalMilestones[].milestoneId` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].capitalMilestones[].months` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].capitalMilestones[].plannedCapitalCost` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].certificateReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].completePartAApplicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].completePriorClaimsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].completionDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].drivingDistanceKm` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].eligibleAreaPeConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].eligibleAreaSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].eligibleRemuneration` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].governmentRevenueShare` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].issuerComponentDescription` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].issuerComponentEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour[]` | object |  | Retained provincial credit labour record input. |
| `schedule351.projects[].labour[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour[].animationSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour[].eligibleSalary` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour[].employeeId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].labour[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketing` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketingHistoryEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketing[]` | object |  | Retained provincial credit marketing record input. |
| `schedule351.projects[].marketing[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketing[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketing[].foodBeverageEntertainment` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketing[].incurredDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketing[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].marketing[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].milestonesConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].ministerApprovedPlanConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].naics2012EligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].naics2012PrincipalActivity` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].nonDuplicatedOutlaysConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].otherEffectiveClaims` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].otherEffectiveClaims[]` | object |  | Retained provincial credit other effective claims record input. |
| `schedule351.projects[].otherEffectiveClaims[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].otherEffectiveClaims[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].otherEffectiveClaims[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].otherEffectiveClaims[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].otherEffectiveClaims[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].partAApprovalDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].partBApplicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].priorMarketingClaimed` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].productionStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[]` | object |  | Retained provincial credit properties record input. |
| `schedule351.projects[].properties[].acquisitionAndUseMatchPlanConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].assistanceEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].availableForUse` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].availableForUseWithoutExcludedDeemingConfirmed` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].capitalAssistanceWorkpaperId` | null \| string |  | Existing government-assistance workpaper that owns this property's CITC capital-cost treatment. |
| `schedule351.projects[].properties[].capitalAssistanceWorkpaperRowKey` | null \| string |  | Stable row key of the property-specific CITC assistance record. Missing or conflicting links hold Schedule 8. |
| `schedule351.projects[].properties[].capitalCost` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].certifiedCreditAllocation` | null \| number \| string |  | Issuer-supported CITC allocation to this property when the project maximum binds across several assets. Missing allocation holds; no proportional allocation is inferred. |
| `schedule351.projects[].properties[].creditAssistanceEntitledDate` | null \| string |  | Evidenced date of entitlement to the property-specific CITC assistance. The certificate issue date is not substituted. |
| `schedule351.projects[].properties[].creditAssistanceEvidenceReference` | null \| string |  | Retained issuer allocation and assistance entitlement evidence for this source property. |
| `schedule351.projects[].properties[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].federalAssistanceEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].federalAssistanceReconciledConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].governmentAssistance` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].leaseQualificationEvidenceReference` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].leaseRole` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].nsUseFraction` | null \| number \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].purchaseDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].qualification` | null \| object |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.acquiredForIncomePurpose` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.acquisitionDate` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.ccaClass` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.hasQualifyingUse` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.isBuilding` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.isLand` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.isNewProperty` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.isNotQualifiedResourceProperty` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualification.reg4600PrescribedPropertyCategory` | array \| boolean \| null \| number \| object \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].qualificationBranch` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].qualificationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].sourceAssetId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].properties[].spaceActivityNaics2012` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].spaceActivityUseConfirmed` | boolean \| null |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].properties[].spaceQualificationEvidenceDate` | null \| string |  | Retained source-property or approved project evidence (NS ITA49A; Reg137/2016 ss.2-9; federal127(9) and Regulation4600). Missing qualification remains unanswered; milestone costs are gross capital costs. |
| `schedule351.projects[].remunerationEligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].remunerationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].remunerationPaidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.projects[].totalProductionOutlays` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule351.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule351.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule38` | null \| object |  | Schedule 38 Part VI Tax on Capital of Financial Institutions input object. Its capital and institution facts support the federal calculation, T2 line 720 and provincial financial-institution capital-tax inputs. Omission supplies no Schedule 38 prepass or fallback identity facts; applicable return triggers still require the relevant facts. |
| `schedule38.hasAcquisitionOfControlThisYear` | boolean \| null \| number \| string |  | s.190.1(6) AoC restriction on unused-credit carryover (s.111(5) same-or-similar-business test, NOT s.111(5.1)). |
| `schedule38.hasFunctionalCurrencyElectionS261` | boolean \| null \| number \| string |  | Functional-currency election under s.261 — translate the $1B fixed amount under s.261(5)(b) at the first-day relevant spot rate. |
| `schedule38.isAuthorizedForeignBank` | boolean \| null \| number \| string |  | Authorized foreign bank — s.190.13(d) 10%-of-RWA capital path. |
| `schedule38.isBank` | boolean \| null |  | s.190(1)(a) — bank? |
| `schedule38.isDepositTakingMortgageLender` | boolean \| null \| number \| string |  | s.190(1)(c) — deposit-taking mortgage lender? |
| `schedule38.isHoldcoUnderS190_1_e` | boolean \| null \| number \| string |  | s.190(1)(e) — holdco with all/substantially-all assets in shares or debt of related (a)-(e) corps (CRA admin practice ≥90% of FMV). |
| `schedule38.isLifeInsuranceCorpInCanada` | boolean \| null |  | s.190(1)(d) — life insurance corp carrying on business in Canada? |
| `schedule38.isTrustCorporation` | boolean \| null \| number \| string |  | s.190(1)(b) — authorized to offer trustee services to the public? |
| `schedule38.relatedSolelyViaCrownControl` | boolean \| null \| number \| string |  | s.190.15(6)(a) — related SOLELY because of Crown control (deemed NOT related for s.190.14/190.15). |
| `schedule38.relatedSolelyViaS251_5_b_Right` | boolean \| null \| number \| string |  | s.190.15(6)(b) — related SOLELY via a s.251(5)(b) right. |
| `schedule38.rightAcquiredForAvoidancePurpose` | boolean \| null \| number \| string |  | s.190.15(6) closing exception: was ONE OF THE MAIN PURPOSES for acquiring the s.251(5)(b) right to avoid a limitation on the amount of a corporation's capital deduction? Avoidance need only be among the main purposes, not the predominant one. Yes treats the right as exercised, so the corporations stay related for the s.190.15 capital deduction. It does not restore relatedness for s.190.14. Required whenever relatedSolelyViaS251_5_b_Right is true: a blank withholds the deeming rather than granting the $1B standalone capital deduction. |
| `schedule384` | null \| object |  | Manitoba paid work experience tax credit periods, eligibility evidence and retained person history. Omit or send null when unopened; an explicit no-claim answer is a disclosed nil and unknown answers hold the credit. |
| `schedule384.actualCreditReceipts` | array \| null |  | Actual receipt ledger reconciled to the existing government-assistance workpaper (ITA s.12(1)(x)). A computed or claimed credit is not a receipt. |
| `schedule384.actualCreditReceipts[]` | object |  |  |
| `schedule384.actualCreditReceipts[].amount` | array \| boolean \| null \| number \| object \| string |  | Actual received amount in Canadian dollars, equal to its government-assistance workpaper row. |
| `schedule384.actualCreditReceipts[].assetBasisTreatmentConfirmed` | array \| boolean \| null \| number \| object \| string |  | Explicit confirmation that the linked workpaper row reduces the related property's cost (ITA 13(7.1), 13(7.4)). |
| `schedule384.actualCreditReceipts[].evidenceRef` | array \| boolean \| null \| number \| object \| string |  | Protected reference substantiating the actual refund or tax application, such as the notice of assessment. |
| `schedule384.actualCreditReceipts[].expenseReductionApplied` | array \| boolean \| null \| number \| object \| string |  | Explicit confirmation that the related salary or wage deduction was reduced. |
| `schedule384.actualCreditReceipts[].id` | array \| boolean \| null \| number \| object \| string |  | Immutable receipt ID beginning S384:; the government-assistance workpaper row carries the same marker. |
| `schedule384.actualCreditReceipts[].originTaxYearEnd` | array \| boolean \| null \| number \| object \| string |  | Taxation year-end of the Schedule 384 credit originally earned. |
| `schedule384.actualCreditReceipts[].partnershipBusinessNumber` | array \| boolean \| null \| number \| object \| string |  | Canonical nine-digit partnership business number for income coordination. |
| `schedule384.actualCreditReceipts[].partnershipIncomeReported` | array \| boolean \| null \| number \| object \| string |  | Explicit confirmation of coordinated partnership income under ITA 12(2.1). |
| `schedule384.actualCreditReceipts[].receiptKind` | array \| boolean \| null \| number \| object \| string |  | Actual refund, tax-payable application or instalment credit; a computed or receivable credit is not a receipt. |
| `schedule384.actualCreditReceipts[].receivedDate` | array \| boolean \| null \| number \| object \| string |  | Date the credit was actually refunded or applied, within this taxation period. |
| `schedule384.actualCreditReceipts[].treatment` | array \| boolean \| null \| number \| object \| string |  | Reviewed federal treatment: income inclusion, earlier inclusion, salary expense reduction, partnership income under ITA 12(2.1) or reduced asset cost. |
| `schedule384.actualCreditReceipts[].treatmentEvidenceRef` | array \| boolean \| null \| number \| object \| string |  | Evidence of the reviewed federal treatment. |
| `schedule384.actualCreditReceipts[].treatmentTaxYearEnd` | array \| boolean \| null \| number \| object \| string |  | Taxation year-end establishing the earlier inclusion or the applied expense reduction. |
| `schedule384.actualCreditReceipts[].workpaperId` | array \| boolean \| null \| number \| object \| string |  | Identity of the one linked government-assistance workpaper. |
| `schedule384.actualCreditReceipts[].workpaperRowKey` | array \| boolean \| null \| number \| object \| string |  | Stable identity of the one linked workpaper row with matching receipt marker, amount and book/tax treatment. |
| `schedule384.claimRequested` | boolean \| null |  | Whether the corporation claims the Manitoba paid work experience tax credit this year. false is a disclosed nil; null holds Schedule 5 line 622. |
| `schedule384.currencyBasis` | object |  | Reporting-currency reconciliation and retained arising-date conversions. Receipt amounts arise on refund or application; historical balances use openingConversion instead. |
| `schedule384.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: amountsInReportingCurrencyConfirmed. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions` | array |  | Retained currency evidence: conversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[]` | object |  | Retained currency evidence: conversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions` | array |  | Retained currency evidence: historicalConversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[]` | object |  | Retained currency evidence: historicalConversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion` | object |  | Retained currency evidence: historicalConversions\[\].conversion. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].filingReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.employerExcluded` | boolean \| null |  | Whether the corporation is a Financial Administration Act reporting organization or an organization described in federal ITA s.149(1)(c) to (d.5); such an organization is not an eligible employer (MB ITA s.10.1(1)). |
| `schedule384.employerResidentOrManitobaPE` | boolean \| null |  | Whether the corporation is resident in Manitoba or has a permanent establishment there; reconciled with the Schedule 5 allocation. |
| `schedule384.history` | array |  | Retained prior-year periods carried from the filed return. Lifetime incentives, completed placements and qualifying months entered on current periods cannot fall below them. |
| `schedule384.history[]` | object |  | One retained prior-year Manitoba paid work experience period. |
| `schedule384.history[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts; legacy records are CAD. Current source amounts have their separate currencyBasis. |
| `schedule384.history[].category` | null \| string |  | Hiring incentive of the retained period. |
| `schedule384.history[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Retained applied boundary receipts with originalAmounts and convertedAmounts. Already-converted balances retain their current unit and are not translated twice. |
| `schedule384.history[].employeeId` | null \| string |  | Identifier of the person across rows and taxation years. |
| `schedule384.history[].incentive` | null \| number \| string |  | Incentive determined for the person and period across all employers in that year. |
| `schedule384.history[].name` | null \| string |  | Name of the person on the retained period. |
| `schedule384.history[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. It translates historical balances, not current receipts. |
| `schedule384.history[].periodEnd` | null \| string |  | Last day of the retained period. |
| `schedule384.history[].periodId` | null \| string |  | Identifier of the retained period row. |
| `schedule384.history[].periodStart` | null \| string |  | First day of the retained period. |
| `schedule384.history[].placementEnd` | null \| string |  | Last day of the retained co-op placement term. |
| `schedule384.history[].placementStart` | null \| string |  | First day of the retained co-op placement term. |
| `schedule384.history[].priorCompletedPlacements` | null \| number \| string |  | Completed placements stated on the retained period. |
| `schedule384.history[].priorIncentives` | null \| number \| string |  | Earlier incentives stated on the retained period. |
| `schedule384.history[].priorQualifyingMonths` | null \| number \| string |  | Qualifying months stated on the retained period. |
| `schedule384.history[].share` | null \| number \| string |  | The filing corporation's A/B share of that incentive, as a decimal from 0 to 1; a successor repeating the identical period claims only the remainder (MB ITA s.10.1(25), (26)). |
| `schedule384.history[].taxYearEnd` | null \| string |  | Year end of the filed return the retained period comes from. |
| `schedule384.journeypersonParticipation` | null \| string |  | How the employer participates in a Manitoba apprenticeship program for the journeyperson incentive: current_apprentice, prior_apprentice, recognized_association or none (MB ITA s.10.1(17)). none makes line 680 nil. |
| `schedule384.journeypersonParticipationEvidence` | null \| string |  | Reference to the record supporting the apprenticeship participation answer; required unless the answer is none. |
| `schedule384.periods` | array |  | One row per person and qualifying period of employment, or per co-op work placement's salary for the year. |
| `schedule384.periodsComplete` | boolean \| null |  | Confirms that every qualifying period and co-op placement for the year is listed. true with no periods is an established nil credit. |
| `schedule384.periods[]` | object |  | One Manitoba paid work experience period or co-op placement. |
| `schedule384.periods[].academicYearEndDate` | null \| string |  | End of the academic year in which the youth completed the approved program; the period must end by December 31 of the following year. |
| `schedule384.periods[].agreementRegistered` | boolean \| null |  | Whether a registered apprenticeship agreement is in effect throughout the period. |
| `schedule384.periods[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts; legacy records are CAD. Current source amounts have their separate currencyBasis. |
| `schedule384.periods[].apprenticeLevel` | null \| number \| string |  | Apprenticeship level for the period; Levels 1 and 2 are early levels. |
| `schedule384.periods[].approvedProgram` | boolean \| null |  | Youth: whether the approved youth work experience training program was completed. Co-op student: whether the placement was developed or approved for an approved co-op program at the start of its term. |
| `schedule384.periods[].category` | null \| string |  | Hiring incentive for the period: youth, coop_student, coop_graduate, apprentice or journeyperson. |
| `schedule384.periods[].certifiedCredit` | null \| number \| string |  | Additional 2015 incentive amount specified on the issued certificate; reconciled with the engine computation of 2014 work, never used as an override. |
| `schedule384.periods[].claimantAssistance` | null \| number \| string |  | Assistance the corporation itself received or is entitled to receive for the person's salary: for an apprentice under a minister-approved shared allocation (MB ITA s.10.1(22)), and for a graduate or journeyperson in a taxation year ending before June 3, 2019, when only that assistance reduces W (s.10.1(5), (8)). |
| `schedule384.periods[].claimantSalary` | null \| number \| string |  | Salary and wages the corporation paid the person for the period, or its pro rata share of the partnership's payments. |
| `schedule384.periods[].completionDate` | null \| string |  | Completion date of the certified level, 110-hour credit or qualifying period; pre-2015 apprentice rate changes key on completion after 2012. |
| `schedule384.periods[].completionWaived` | boolean \| null |  | Whether the issued proof-of-credit certificate records an authority-approved completion waiver under the law governing the period; not an employer election. |
| `schedule384.periods[].credentialHeld` | boolean \| null |  | Whether the graduate received the co-op program credential, or the journeyperson holds the certificate of qualification. |
| `schedule384.periods[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Retained applied boundary receipts with originalAmounts and convertedAmounts. Already-converted balances retain their current unit and are not translated twice. |
| `schedule384.periods[].earnsEducationalCredit` | boolean \| null |  | Whether satisfactory completion earns a credit toward the student's credential. |
| `schedule384.periods[].employeeId` | null \| string |  | Stable identifier of the person across rows and taxation years. |
| `schedule384.periods[].employerFirstPeriodStart` | null \| string |  | Start of the corporation's first qualifying period of employment of this graduate or journeyperson; it must begin within 18 months of completion or certification. |
| `schedule384.periods[].entitledToWages` | boolean \| null |  | Whether the co-op student is entitled to salary or wages for the placement work. |
| `schedule384.periods[].evidenceReference` | null \| string |  | Reference to the payroll and program records supporting the period. |
| `schedule384.periods[].federalApprenticeshipCredit` | null \| number \| string |  | Federal apprenticeship job creation tax credit the corporation may claim for this apprentice and period, even when federal tax is nil; enter 0 when there is none. |
| `schedule384.periods[].federalCreditEntitledAnyPerson` | boolean \| null |  | Before June 14, 2012, whether any person is entitled to the federal apprenticeship credit for the employment; entitlement excludes the entire Manitoba period. |
| `schedule384.periods[].fullTime` | boolean \| null |  | Whether the employment is full-time, at least 35 hours per week. |
| `schedule384.periods[].generalPartner` | boolean \| null |  | Whether the corporation is a general partner of the paying partnership; only a general partner's pro rata share of the salary qualifies. |
| `schedule384.periods[].governmentAssistance` | null \| number \| string |  | Other government assistance received or receivable in respect of that salary; enter 0 when there is none. |
| `schedule384.periods[].highSchoolStudent` | boolean \| null |  | Whether an early-level apprentice is a high school student; that period uses the 25% rate. |
| `schedule384.periods[].levelStartDate` | null \| string |  | Date this apprenticeship level (or high-school 110-hour credit) began; historical early/advanced eligibility uses this date. |
| `schedule384.periods[].ministerApprovedAdditionalEmployment` | boolean \| null |  | Whether the minister approved employment beyond the 24-month limit. |
| `schedule384.periods[].ministerApprovedAdditionalPlacement` | boolean \| null |  | Whether the minister approved the incentive for a placement after five completed placements. |
| `schedule384.periods[].name` | null \| string |  | Name of the qualifying youth, co-op student, graduate, apprentice or journeyperson, printed in column A. |
| `schedule384.periods[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. It translates historical balances, not current receipts. |
| `schedule384.periods[].paidBy` | null \| string |  | taxpayer when the corporation paid the salary; partnership when a partnership in which the corporation is a general partner paid it. |
| `schedule384.periods[].paidMinimumWage` | boolean \| null |  | Whether the apprentice is paid at least the applicable minimum wage. |
| `schedule384.periods[].partnershipExcluded` | boolean \| null |  | Whether the paying partnership is a Financial Administration Act reporting organization or an organization described in federal ITA s.149(1)(c) to (d.5); the partnership is the employer of a period it pays (MB ITA s.10.1(1) "employer"(b)). Required when paidBy is partnership and the corporation is a general partner; every period of the same partnership gives the same answer. |
| `schedule384.periods[].partnershipId` | null \| string |  | Identifier of the paying partnership; required when paidBy is partnership. |
| `schedule384.periods[].partnershipName` | null \| string |  | Name of the paying partnership. |
| `schedule384.periods[].partnershipParticipation` | null \| string |  | How the paying partnership participates in a Manitoba apprenticeship program for a journeyperson period it pays: current_apprentice, prior_apprentice, recognized_association or none (MB ITA s.10.1(17)). none makes that period's incentive nil. |
| `schedule384.periods[].partnershipParticipationEvidence` | null \| string |  | Reference to the record supporting the paying partnership's apprenticeship participation answer; required unless the answer is none. |
| `schedule384.periods[].partnershipResidentOrManitobaPE` | boolean \| null |  | Whether the paying partnership is resident in Manitoba or has a permanent establishment there, for a period it pays. |
| `schedule384.periods[].partnershipYouthApproved` | boolean \| null |  | Whether the paying partnership is approved to provide paid work experience to qualifying youths (MB ITA s.10.1(30)(b)); required on a youth period the partnership pays. |
| `schedule384.periods[].payPeriodStartConfirmed` | boolean \| null |  | Whether the pre-2015 certified employment period began at the beginning of a pay period. |
| `schedule384.periods[].periodEnd` | null \| string |  | Last day of the qualifying period, or of the placement salary period, within this taxation year (yyyy-mm-dd). |
| `schedule384.periods[].periodId` | null \| string |  | Stable identifier of this period row. |
| `schedule384.periods[].periodStart` | null \| string |  | First day of the qualifying period, or of the placement salary period, within this taxation year (yyyy-mm-dd). |
| `schedule384.periods[].permanentPosition` | boolean \| null |  | Whether the graduate or journeyperson holds a permanent position rather than a term or task position. |
| `schedule384.periods[].placementDuringCovidEmergency` | boolean \| null |  | Whether any part of a placement shorter than ten weeks occurred during the 2020 COVID-19 state of emergency, which reads the minimum as eight consecutive weeks. |
| `schedule384.periods[].placementEnd` | null \| string |  | Last day of the co-op work placement term. |
| `schedule384.periods[].placementRoute` | null \| string |  | Co-op placement route: cewil_accredited or approved_program. |
| `schedule384.periods[].placementStart` | null \| string |  | First day of the co-op work placement term. |
| `schedule384.periods[].practicalExperienceAtLevel` | boolean \| null |  | Whether the apprentice is employed at the level and earning its required practical experience. |
| `schedule384.periods[].practicalExperienceHours` | null \| number \| string |  | Hours in the high-school apprentice completed practical-experience credit; the historical Level 1 credit requires 110 hours. |
| `schedule384.periods[].previousCertifiedPeriodEnd` | null \| string |  | Actual end of the preceding certified employment period; a subsequent graduate/journeyperson period must begin immediately afterwards. |
| `schedule384.periods[].priorCertifiedPeriods` | null \| number \| string |  | Number of earlier certified graduate or journeyperson qualifying periods; the historical limit is two certified periods, including waived periods. |
| `schedule384.periods[].priorCompletedPlacements` | null \| number \| string |  | Qualifying placements the student completed before this one; after five, a further placement needs ministerial approval. |
| `schedule384.periods[].priorIncentives` | null \| number \| string |  | Youth or co-op student incentives already determined for this person before this taxation year by any employer; enter 0 when there are none. |
| `schedule384.periods[].priorQualifyingMonths` | null \| number \| string |  | Months the person was already employed as a qualifying graduate or journeyperson; 24 months is the limit without ministerial approval. |
| `schedule384.periods[].productiveWork` | boolean \| null |  | Whether the youth or co-op student performs productive work rather than only observing the work of others. |
| `schedule384.periods[].programCompletedDate` | null \| string |  | Date the youth last completed the approved program, the graduate completed the co-op program, or the journeyperson became certified. |
| `schedule384.periods[].programIdentifier` | null \| string |  | Program, trade or course identifier supporting the period. |
| `schedule384.periods[].proofOfCreditCertificate` | null \| string |  | Issued proof-of-credit certificate serial/reference supporting this completed pre-2015 qualifying period or placement, including any certified completion waiver (s.10.1(11)-(19)); required separately for a 2015 transitional amount. |
| `schedule384.periods[].qualifyingDays` | null \| number \| string |  | Days in the qualifying period of employment. The graduate, apprentice and journeyperson maxima use these days over 365 in every year. |
| `schedule384.periods[].relatedTraining` | boolean \| null |  | Whether the institution is satisfied that most of the work is training directly related to the co-op program. |
| `schedule384.periods[].relatedWork` | boolean \| null |  | Whether the work is related to the graduate's co-op program, or is in or related to the journeyperson's trade. |
| `schedule384.periods[].residentInManitoba` | boolean \| null |  | Whether the graduate, apprentice or journeyperson is resident in Manitoba throughout the period. |
| `schedule384.periods[].residentOnDecember31` | boolean \| null |  | Whether resident in Manitoba on December 31 within the pre-2015 certified employment period; distinct from the later throughout-period test. |
| `schedule384.periods[].residesOutsideWinnipeg` | boolean \| null |  | Whether an early-level apprentice ordinarily resides outside Winnipeg. |
| `schedule384.periods[].seasonalLayoffConfirmed` | boolean \| null |  | For an old journeyperson period, confirms two continuous employment periods total 12 months, separated only by a typical seasonal lay-off of no more than three months (s.10.1(1)); supported by the issued certificate. |
| `schedule384.periods[].sharedApprenticeApproval` | boolean \| null |  | Whether the minister approved a joint application allocating the incentive among the apprentice's employers by salary less assistance (MB ITA s.10.1(22)). |
| `schedule384.periods[].totalSalary` | null \| number \| string |  | Salary and wages all employers paid the person for the period, or under the placement for the year. |
| `schedule384.periods[].workPrimarilyInManitoba` | boolean \| null |  | Whether the work is performed primarily in Manitoba. |
| `schedule384.periods[].workStudyRatioMet` | boolean \| null |  | Whether work-experience time is at least 20% of academic study time in the program. |
| `schedule384.periods[].worksOutsideWinnipeg` | boolean \| null |  | Whether an early-level apprentice's work in the normal course is performed outside Winnipeg; with the residence answer it gives the 20% rate. |
| `schedule384.priorTaxYearEnd` | null \| string |  | Actual end of the immediately preceding taxation year ending in 2014; must be the day immediately before this 2015 taxation year begins. |
| `schedule384.priorTaxYearStart` | null \| string |  | Actual start of the immediately preceding taxation year ending in 2014, for s.10.1(8.1) wages and day-count apportionment. |
| `schedule384.receiptCurrencyBasis` | object |  | Reporting-currency reconciliation and retained arising-date conversions. Receipt amounts arise on refund or application; historical balances use openingConversion instead. |
| `schedule384.receiptCurrencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: amountsInReportingCurrencyConfirmed. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions` | array |  | Retained currency evidence: conversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[]` | object |  | Retained currency evidence: conversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions` | array |  | Retained currency evidence: historicalConversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[]` | object |  | Retained currency evidence: historicalConversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion` | object |  | Retained currency evidence: historicalConversions\[\].conversion. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].filingReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptCurrencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule384.receiptsReviewed` | array \| boolean \| null \| number \| object \| string |  | Explicit review of Schedule 384 credits actually refunded or applied this taxation year, including a known no-receipts answer; required whenever the credit is claimed. |
| `schedule384.transitional2015Reviewed` | boolean \| null |  | Confirmation that the employer reviewed 2014 work for the separate s.10.1(8.1) incentive in its 2015 taxation year; list the eligible periods or confirm an empty list. |
| `schedule384.transitionalPeriods` | array |  | Completed certified placements or periods ending in the 2015 taxation year. Salary, assistance and federal-credit amounts on these rows cover only work in the preceding 2014 taxation year. Full qualifying start/end dates remain on each row. |
| `schedule384.transitionalPeriods[]` | object |  | One certified additional 2015 hiring incentive, calculated from work in the employer's 2014 taxation year. |
| `schedule384.transitionalPeriods[].academicYearEndDate` | null \| string |  | End of the academic year in which the youth completed the approved program; the period must end by December 31 of the following year. |
| `schedule384.transitionalPeriods[].agreementRegistered` | boolean \| null |  | Whether a registered apprenticeship agreement is in effect throughout the period. |
| `schedule384.transitionalPeriods[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts; legacy records are CAD. Current source amounts have their separate currencyBasis. |
| `schedule384.transitionalPeriods[].apprenticeLevel` | null \| number \| string |  | Apprenticeship level for the period; Levels 1 and 2 are early levels. |
| `schedule384.transitionalPeriods[].approvedProgram` | boolean \| null |  | Youth: whether the approved youth work experience training program was completed. Co-op student: whether the placement was developed or approved for an approved co-op program at the start of its term. |
| `schedule384.transitionalPeriods[].category` | null \| string |  | Hiring incentive for the period: youth, coop_student, coop_graduate, apprentice or journeyperson. |
| `schedule384.transitionalPeriods[].certifiedCredit` | null \| number \| string |  | Additional 2015 incentive amount specified on the issued certificate; reconciled with the engine computation of 2014 work, never used as an override. |
| `schedule384.transitionalPeriods[].claimantAssistance` | null \| number \| string |  | Assistance the corporation itself received or is entitled to receive for the person's salary: for an apprentice under a minister-approved shared allocation (MB ITA s.10.1(22)), and for a graduate or journeyperson in a taxation year ending before June 3, 2019, when only that assistance reduces W (s.10.1(5), (8)). |
| `schedule384.transitionalPeriods[].claimantSalary` | null \| number \| string |  | Salary and wages the corporation paid the person for the period, or its pro rata share of the partnership's payments. |
| `schedule384.transitionalPeriods[].completionDate` | null \| string |  | Completion date of the certified level, 110-hour credit or qualifying period; pre-2015 apprentice rate changes key on completion after 2012. |
| `schedule384.transitionalPeriods[].completionWaived` | boolean \| null |  | Whether the issued proof-of-credit certificate records an authority-approved completion waiver under the law governing the period; not an employer election. |
| `schedule384.transitionalPeriods[].credentialHeld` | boolean \| null |  | Whether the graduate received the co-op program credential, or the journeyperson holds the certificate of qualification. |
| `schedule384.transitionalPeriods[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Retained applied boundary receipts with originalAmounts and convertedAmounts. Already-converted balances retain their current unit and are not translated twice. |
| `schedule384.transitionalPeriods[].earnsEducationalCredit` | boolean \| null |  | Whether satisfactory completion earns a credit toward the student's credential. |
| `schedule384.transitionalPeriods[].employeeId` | null \| string |  | Stable identifier of the person across rows and taxation years. |
| `schedule384.transitionalPeriods[].employerFirstPeriodStart` | null \| string |  | Start of the corporation's first qualifying period of employment of this graduate or journeyperson; it must begin within 18 months of completion or certification. |
| `schedule384.transitionalPeriods[].entitledToWages` | boolean \| null |  | Whether the co-op student is entitled to salary or wages for the placement work. |
| `schedule384.transitionalPeriods[].evidenceReference` | null \| string |  | Reference to the payroll and program records supporting the period. |
| `schedule384.transitionalPeriods[].federalApprenticeshipCredit` | null \| number \| string |  | Federal apprenticeship job creation tax credit the corporation may claim for this apprentice and period, even when federal tax is nil; enter 0 when there is none. |
| `schedule384.transitionalPeriods[].federalCreditEntitledAnyPerson` | boolean \| null |  | Before June 14, 2012, whether any person is entitled to the federal apprenticeship credit for the employment; entitlement excludes the entire Manitoba period. |
| `schedule384.transitionalPeriods[].fullTime` | boolean \| null |  | Whether the employment is full-time, at least 35 hours per week. |
| `schedule384.transitionalPeriods[].generalPartner` | boolean \| null |  | Whether the corporation is a general partner of the paying partnership; only a general partner's pro rata share of the salary qualifies. |
| `schedule384.transitionalPeriods[].governmentAssistance` | null \| number \| string |  | Other government assistance received or receivable in respect of that salary; enter 0 when there is none. |
| `schedule384.transitionalPeriods[].highSchoolStudent` | boolean \| null |  | Whether an early-level apprentice is a high school student; that period uses the 25% rate. |
| `schedule384.transitionalPeriods[].levelStartDate` | null \| string |  | Date this apprenticeship level (or high-school 110-hour credit) began; historical early/advanced eligibility uses this date. |
| `schedule384.transitionalPeriods[].ministerApprovedAdditionalEmployment` | boolean \| null |  | Whether the minister approved employment beyond the 24-month limit. |
| `schedule384.transitionalPeriods[].ministerApprovedAdditionalPlacement` | boolean \| null |  | Whether the minister approved the incentive for a placement after five completed placements. |
| `schedule384.transitionalPeriods[].name` | null \| string |  | Name of the qualifying youth, co-op student, graduate, apprentice or journeyperson, printed in column A. |
| `schedule384.transitionalPeriods[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. It translates historical balances, not current receipts. |
| `schedule384.transitionalPeriods[].paidBy` | null \| string |  | taxpayer when the corporation paid the salary; partnership when a partnership in which the corporation is a general partner paid it. |
| `schedule384.transitionalPeriods[].paidMinimumWage` | boolean \| null |  | Whether the apprentice is paid at least the applicable minimum wage. |
| `schedule384.transitionalPeriods[].partnershipExcluded` | boolean \| null |  | Whether the paying partnership is a Financial Administration Act reporting organization or an organization described in federal ITA s.149(1)(c) to (d.5). The exclusion applies only to taxation years ending on or after January 1, 2017, so the 2014 work of a line 125 period never needs it. |
| `schedule384.transitionalPeriods[].partnershipId` | null \| string |  | Identifier of the paying partnership; required when paidBy is partnership. |
| `schedule384.transitionalPeriods[].partnershipName` | null \| string |  | Name of the paying partnership. |
| `schedule384.transitionalPeriods[].partnershipParticipation` | null \| string |  | How the paying partnership participates in a Manitoba apprenticeship program for a line 125 journeyperson period it pays: current_apprentice, prior_apprentice, recognized_association or none (MB ITA s.10.1(17)). none makes that period's additional incentive nil. |
| `schedule384.transitionalPeriods[].partnershipParticipationEvidence` | null \| string |  | Reference to the record supporting the paying partnership's apprenticeship participation answer; required unless the answer is none. |
| `schedule384.transitionalPeriods[].partnershipResidentOrManitobaPE` | boolean \| null |  | Whether the paying partnership is resident in Manitoba or has a permanent establishment there, for a line 125 period it pays. |
| `schedule384.transitionalPeriods[].partnershipYouthApproved` | boolean \| null |  | Whether the paying partnership is approved to provide paid work experience to qualifying youths (MB ITA s.10.1(30)(b)); required on a line 125 youth period the partnership pays. |
| `schedule384.transitionalPeriods[].payPeriodStartConfirmed` | boolean \| null |  | Whether the pre-2015 certified employment period began at the beginning of a pay period. |
| `schedule384.transitionalPeriods[].periodEnd` | null \| string |  | Last day of the qualifying period, or of the placement salary period, within this taxation year (yyyy-mm-dd). |
| `schedule384.transitionalPeriods[].periodId` | null \| string |  | Stable identifier of this period row. |
| `schedule384.transitionalPeriods[].periodStart` | null \| string |  | First day of the qualifying period, or of the placement salary period, within this taxation year (yyyy-mm-dd). |
| `schedule384.transitionalPeriods[].permanentPosition` | boolean \| null |  | Whether the graduate or journeyperson holds a permanent position rather than a term or task position. |
| `schedule384.transitionalPeriods[].placementDuringCovidEmergency` | boolean \| null |  | Whether any part of a placement shorter than ten weeks occurred during the 2020 COVID-19 state of emergency, which reads the minimum as eight consecutive weeks. |
| `schedule384.transitionalPeriods[].placementEnd` | null \| string |  | Last day of the co-op work placement term. |
| `schedule384.transitionalPeriods[].placementRoute` | null \| string |  | Co-op placement route: cewil_accredited or approved_program. |
| `schedule384.transitionalPeriods[].placementStart` | null \| string |  | First day of the co-op work placement term. |
| `schedule384.transitionalPeriods[].practicalExperienceAtLevel` | boolean \| null |  | Whether the apprentice is employed at the level and earning its required practical experience. |
| `schedule384.transitionalPeriods[].practicalExperienceHours` | null \| number \| string |  | Hours in the high-school apprentice completed practical-experience credit; the historical Level 1 credit requires 110 hours. |
| `schedule384.transitionalPeriods[].previousCertifiedPeriodEnd` | null \| string |  | Actual end of the preceding certified employment period; a subsequent graduate/journeyperson period must begin immediately afterwards. |
| `schedule384.transitionalPeriods[].priorCertifiedPeriods` | null \| number \| string |  | Number of earlier certified graduate or journeyperson qualifying periods; the historical limit is two certified periods, including waived periods. |
| `schedule384.transitionalPeriods[].priorCompletedPlacements` | null \| number \| string |  | Qualifying placements the student completed before this one; after five, a further placement needs ministerial approval. |
| `schedule384.transitionalPeriods[].priorIncentives` | null \| number \| string |  | Youth or co-op student incentives already determined for this person before this taxation year by any employer; enter 0 when there are none. |
| `schedule384.transitionalPeriods[].priorQualifyingMonths` | null \| number \| string |  | Months the person was already employed as a qualifying graduate or journeyperson; 24 months is the limit without ministerial approval. |
| `schedule384.transitionalPeriods[].productiveWork` | boolean \| null |  | Whether the youth or co-op student performs productive work rather than only observing the work of others. |
| `schedule384.transitionalPeriods[].programCompletedDate` | null \| string |  | Date the youth last completed the approved program, the graduate completed the co-op program, or the journeyperson became certified. |
| `schedule384.transitionalPeriods[].programIdentifier` | null \| string |  | Program, trade or course identifier supporting the period. |
| `schedule384.transitionalPeriods[].proofOfCreditCertificate` | null \| string |  | Issued proof-of-credit certificate serial/reference supporting this completed pre-2015 qualifying period or placement, including any certified completion waiver (s.10.1(11)-(19)); required separately for a 2015 transitional amount. |
| `schedule384.transitionalPeriods[].qualifyingDays` | null \| number \| string |  | Days in the qualifying period of employment. The graduate, apprentice and journeyperson maxima use these days over 365 in every year. |
| `schedule384.transitionalPeriods[].relatedTraining` | boolean \| null |  | Whether the institution is satisfied that most of the work is training directly related to the co-op program. |
| `schedule384.transitionalPeriods[].relatedWork` | boolean \| null |  | Whether the work is related to the graduate's co-op program, or is in or related to the journeyperson's trade. |
| `schedule384.transitionalPeriods[].residentInManitoba` | boolean \| null |  | Whether the graduate, apprentice or journeyperson is resident in Manitoba throughout the period. |
| `schedule384.transitionalPeriods[].residentOnDecember31` | boolean \| null |  | Whether resident in Manitoba on December 31 within the pre-2015 certified employment period; distinct from the later throughout-period test. |
| `schedule384.transitionalPeriods[].residesOutsideWinnipeg` | boolean \| null |  | Whether an early-level apprentice ordinarily resides outside Winnipeg. |
| `schedule384.transitionalPeriods[].seasonalLayoffConfirmed` | boolean \| null |  | For an old journeyperson period, confirms two continuous employment periods total 12 months, separated only by a typical seasonal lay-off of no more than three months (s.10.1(1)); supported by the issued certificate. |
| `schedule384.transitionalPeriods[].sharedApprenticeApproval` | boolean \| null |  | Whether the minister approved a joint application allocating the incentive among the apprentice's employers by salary less assistance (MB ITA s.10.1(22)). |
| `schedule384.transitionalPeriods[].totalSalary` | null \| number \| string |  | Salary and wages all employers paid the person for the period, or under the placement for the year. |
| `schedule384.transitionalPeriods[].workPrimarilyInManitoba` | boolean \| null |  | Whether the work is performed primarily in Manitoba. |
| `schedule384.transitionalPeriods[].workStudyRatioMet` | boolean \| null |  | Whether work-experience time is at least 20% of academic study time in the program. |
| `schedule384.transitionalPeriods[].worksOutsideWinnipeg` | boolean \| null |  | Whether an early-level apprentice's work in the normal course is performed outside Winnipeg; with the residence answer it gives the 20% rate. |
| `schedule384.youthEmployerApproved` | boolean \| null |  | Whether the corporation is approved to provide paid work experience to qualifying youths (MB ITA s.10.1(30)(b)); required when a youth period is entered. |
| `schedule385` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule387` | null \| object |  | Manitoba Schedule 387 small business venture capital tax credit inputs (T2 SCH 387 E (22)): the SBVC tax credit receipts for securities issued in the year, the corporation's taxation years, the unused credit by year of origin or the history that rebuilds it, carryback requests and this year's answers. Omit it or send null when the form was not opened. The credit claimed reduces Manitoba tax at Schedule 5 line 608. |
| `schedule387.amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule387.carrybacks` | array \| null |  | Requests to apply this year's earned credit to one of the three preceding taxation years. |
| `schedule387.carrybacks[]` | object |  |  |
| `schedule387.carrybacks[].amount` | null \| number \| string |  | The credit to apply to that year, in dollars and cents. |
| `schedule387.carrybacks[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule387.carrybacks[].creditPreviouslyDeducted` | null \| number \| string |  | The SBVC credit already deducted in that year. |
| `schedule387.carrybacks[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule387.carrybacks[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule387.carrybacks[].evidenceReference` | null \| string |  | The notice of assessment or return that supports the target year's figures. |
| `schedule387.carrybacks[].historicalWindowCompleteConfirmed` | boolean \| null |  | For a target ending before April 7, 2021, confirm that the ten preceding years (or all years since incorporation), the target and the following years already ended are complete, including explicit nil credit and tax years. |
| `schedule387.carrybacks[].historicalYears` | array \| null |  | Gross clause (a), clause (b) and tax before SBVC for every historical year in the earlier target's statutory window. Link periods to taxationYears. This return's clause (b) amount and tax come from the engine, so do not enter it here. |
| `schedule387.carrybacks[].historicalYears[]` | object |  |  |
| `schedule387.carrybacks[].historicalYears[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule387.carrybacks[].historicalYears[].clauseA` | null \| number \| string |  | The year's gross s.11.13(3)(a) amount on pre-June 12, 2014 investments, limited to $135,000, before use or expiry; enter 0 when nil. |
| `schedule387.carrybacks[].historicalYears[].clauseB` | null \| number \| string |  | The year's gross s.11.13(3)(b) amount under the target's 2019 text: 45% of eligible investments issued after June 11, 2014 and before 2023, limited to $202,500, before use or expiry; enter 0 when nil. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.carrybacks[].historicalYears[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule387.carrybacks[].historicalYears[].evidenceReference` | null \| string |  | The receipts, return and assessment supporting that year's gross statutory amounts and tax before the credit. Net opening balances alone do not establish the historical window. |
| `schedule387.carrybacks[].historicalYears[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule387.carrybacks[].historicalYears[].taxBeforeCredit` | null \| number \| string |  | The year's Manitoba tax payable if its SBVC credit were nil. The engine applies the older target's $67,500 cap, or $45,000 for a year ending before June 12, 2014, irrespective of the amount actually deducted. |
| `schedule387.carrybacks[].historicalYears[].taxationYearId` | null \| string |  | A taxationYears row in the ten preceding years, the target or the following years before this return. Each required year appears once. |
| `schedule387.carrybacks[].incorporationDate` | null \| string |  | The corporation's incorporation date (YYYY-MM-DD), establishing its first taxation year when fewer than ten years precede the earlier target. |
| `schedule387.carrybacks[].manitobaTaxPayable` | null \| number \| string |  | That year's Manitoba tax payable remaining after its credits. |
| `schedule387.carrybacks[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule387.carrybacks[].targetTaxationYearId` | null \| string |  | The taxationYears row of the first, second or third preceding year. |
| `schedule387.claim` | boolean \| null |  | Whether the corporation has an SBVC tax credit receipt or unused credit to claim this year. The claim is the least of the credit available, Manitoba tax and $120,000; a No with receipts or a balance is held, because unclaimed credit is used up by tax. |
| `schedule387.currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule387.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule387.currencyYears` | array |  | Original reporting currency and first-day BoC evidence for each historical taxation year. Optional legacy omission means CAD. Fixed statutory amounts are read in that year, then follow its ledger currency boundaries. |
| `schedule387.currencyYears[]` | object |  |  |
| `schedule387.currencyYears[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: currencyConversionHistory. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].firstDayRate` | null \| object |  | Original taxation-year currency evidence: firstDayRate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].firstDayRate.firstDayDate` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: firstDayRate.firstDayDate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].firstDayRate.rate` | number \| string |  | Original taxation-year currency evidence: firstDayRate.rate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].firstDayRate.spotRateSource` | string |  | Original taxation-year currency evidence: firstDayRate.spotRateSource. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: openingConversion. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].periodStart` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: periodStart. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].reportingCurrency` | null \| string |  | Original taxation-year currency evidence: reportingCurrency. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.currencyYears[].taxationYearId` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: taxationYearId. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule387.entityContinuityConfirmed` | boolean \| null |  | Confirms that every receipt and unused credit is this corporation's own, with no amalgamation, wind-up or transfer that moves another investor's credit. |
| `schedule387.history` | array \| null |  | Optional earlier years replayed from openingVintages to the year before this return, each with the credit earned, the Manitoba tax before the credit, the credit deducted and the credit carried back. |
| `schedule387.history[]` | object |  |  |
| `schedule387.history[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule387.history[].creditCarriedBack` | null \| number \| string |  | The year's own credit carried back to earlier years (its amount 2D). |
| `schedule387.history[].creditDeducted` | null \| number \| string |  | The SBVC credit the year's return deducted (its amount 2C). |
| `schedule387.history[].creditEarned` | null \| number \| string |  | The credit earned in that year (its line 120), in dollars and cents. |
| `schedule387.history[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule387.history[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.history[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule387.history[].evidenceReference` | null \| string |  | The filed return or assessment for the year. |
| `schedule387.history[].manitobaTaxBeforeCredit` | null \| number \| string |  | The year's Manitoba tax payable if its SBVC credit were nil; the year's capacity uses up unused credit oldest first. |
| `schedule387.history[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule387.history[].taxationYearId` | null \| string |  | The taxationYears row of the replayed year. |
| `schedule387.investorEligibilityConfirmed` | boolean \| null |  | Confirms the corporation is an eligible investor: not a prescribed venture capital or labour-sponsored venture capital corporation and not acting as a securities dealer. |
| `schedule387.openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule387.openingLedgerConfirmed` | boolean \| null |  | Confirms that openingVintages and history give the complete unused credit by year of origin and reflect every earlier year's full claim, including none. |
| `schedule387.openingVintages` | array \| null |  | The unused credit by year of origin at the start of the first history year, or at the start of this year when history is empty. A carried Filemark filing supplies it. |
| `schedule387.openingVintages[]` | object |  |  |
| `schedule387.openingVintages[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule387.openingVintages[].balance` | null \| number \| string |  | The unused credit from that year of origin, in dollars and cents. |
| `schedule387.openingVintages[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule387.openingVintages[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.openingVintages[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule387.openingVintages[].evidenceReference` | null \| string |  | The earlier Schedule 387 or assessment that supports the balance. |
| `schedule387.openingVintages[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule387.openingVintages[].originTaxationYearId` | null \| string |  | The taxationYears row in which the credit was earned. |
| `schedule387.predecessorCredits` | array \| null |  | Unused SBVC credit of a predecessor on an amalgamation, of a subsidiary wound up into the corporation, or of another investor that transferred it. Recorded and disclosed but never added to the opening: Manitoba does not continue an investor's credit. Send an empty list when none. |
| `schedule387.predecessorCredits[]` | object |  |  |
| `schedule387.predecessorCredits[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule387.predecessorCredits[].businessNumber` | null \| string |  | Its business number, when it has one; it cannot be this corporation's own. |
| `schedule387.predecessorCredits[].corporationName` | null \| string |  | The predecessor, wound-up subsidiary or transferor that earned the credit. |
| `schedule387.predecessorCredits[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule387.predecessorCredits[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule387.predecessorCredits[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule387.predecessorCredits[].event` | null \| string |  | amalgamation, winding_up or transfer. |
| `schedule387.predecessorCredits[].eventDate` | null \| string |  | The date of the amalgamation, wind-up or transfer (YYYY-MM-DD). |
| `schedule387.predecessorCredits[].evidenceReference` | null \| string |  | Its filed Schedule 387 or other record of the credit. |
| `schedule387.predecessorCredits[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule387.predecessorCredits[].unusedCredit` | null \| number \| string |  | That corporation's unused SBVC credit at the event, in dollars and cents. |
| `schedule387.priorReceipts` | array \| null |  | Receipts already claimed in earlier taxation years; a receipt earns the credit once. |
| `schedule387.priorReceipts[]` | object |  |  |
| `schedule387.priorReceipts[].evidenceReference` | null \| string |  | The earlier Schedule 387 that claimed it. |
| `schedule387.priorReceipts[].receiptSerial` | null \| string |  | The serial of a receipt claimed in an earlier year. |
| `schedule387.priorReceipts[].taxationYearId` | null \| string |  | The year the receipt was claimed. |
| `schedule387.receipts` | array \| null |  | One row per SBVC tax credit receipt for a security issued to the corporation, or through an eligible partnership, in this taxation year. |
| `schedule387.receiptsCompleteConfirmed` | boolean \| null |  | Confirms that every SBVC tax credit receipt for securities issued in this taxation year is listed in receipts, including none. |
| `schedule387.receipts[]` | object |  |  |
| `schedule387.receipts[].approvalDate` | null \| string |  | The date the issuance was approved (YYYY-MM-DD); approval comes before issue. |
| `schedule387.receipts[].approvalExpiryDate` | null \| string |  | The approval expiry date in the approval notice (YYYY-MM-DD). |
| `schedule387.receipts[].approvalReference` | null \| string |  | The minister's approval notice for the issuance. |
| `schedule387.receipts[].approvedIssuanceConfirmed` | boolean \| null |  | Confirms the security was issued under the minister's approval before it expired and the issuer met the approval's conditions. |
| `schedule387.receipts[].convertedFromReceiptSerial` | null \| string |  | For an equity share received on exercising a convertible right, the serial of the right's receipt. The share keeps that receipt and earns no second credit. |
| `schedule387.receipts[].eligiblePartnershipConfirmed` | boolean \| null |  | For a partnership investment, confirms the partnership is a Manitoba limited partnership with an eligible general partner and met the issuance conditions. |
| `schedule387.receipts[].governmentAssistance` | null \| number \| string |  | Government assistance other than this credit received for the security or partnership interest, in dollars and cents; 0 when none. |
| `schedule387.receipts[].investorBusinessNumber` | null \| string |  | The investor business number printed on the receipt; it must be this corporation's. |
| `schedule387.receipts[].investorConditionsConfirmed` | boolean \| null |  | Confirms the investor conditions: not a 35% specified shareholder in the preceding 24 months, no recent disposition, no existing convertible right, accredited investor or signed risk acknowledgement, and transfer restrictions. |
| `schedule387.receipts[].irrevocableSubscriptionDate` | null \| string |  | The date the subscription became irrevocable (YYYY-MM-DD), on or before the issue date; required when irrevocablySubscribedBeforeIssue is true. |
| `schedule387.receipts[].irrevocablySubscribedBeforeIssue` | boolean \| null |  | Whether the corporation irrevocably subscribed and paid for the security before it was issued; the acquisition is then deemed to occur when it was irrevocably subscribed and paid for, which sets the taxation year of line 102 (MB ITA s.11.13(4)(a)). Required when payment and issue fall in different taxation years. |
| `schedule387.receipts[].issueDate` | null \| string |  | The date the security is issued (YYYY-MM-DD), as the receipt states it; a convertible right is issued when its agreement is entered into and paid for. The rules in force on this date apply. When the security was paid for in another taxation year, answer irrevocablySubscribedBeforeIssue. |
| `schedule387.receipts[].issuerBusinessNumber` | null \| string |  | The issuer's business number, when known. |
| `schedule387.receipts[].issuerGroupId` | null \| string |  | A stable identifier for the issuer with its affiliates and predecessors; the $500,000 investment limit applies across the group. |
| `schedule387.receipts[].issuerGroupInvestmentBefore` | null \| number \| string |  | What the corporation had already paid for qualifying securities of the issuer group immediately before this issuance, including this year's earlier receipts. |
| `schedule387.receipts[].issuerName` | null \| string |  | The issuer named on the receipt. |
| `schedule387.receipts[].noOtherManitobaCreditConfirmed` | boolean \| null |  | Confirms no other Manitoba tax credit is claimed for the same security. |
| `schedule387.receipts[].partnershipBusinessNumber` | null \| string |  | The eligible partnership's business number for a partnership investment. |
| `schedule387.receipts[].partnershipContributionDate` | null \| string |  | The date the corporation paid for its partnership interest (YYYY-MM-DD); it must fall in the approval period. |
| `schedule387.receipts[].partnershipName` | null \| string |  | The eligible partnership's name for a partnership investment. |
| `schedule387.receipts[].paymentDate` | null \| string |  | The date the subscription price was paid (YYYY-MM-DD). |
| `schedule387.receipts[].receiptCredit` | null \| number \| string |  | The credit amount printed on the receipt; it must equal 45% of the amount paid, with or without the assistance. |
| `schedule387.receipts[].receiptEvidenceReference` | null \| string |  | Where the receipt is kept: attached to a paper return or retained for CRA on an electronic filing. |
| `schedule387.receipts[].receiptId` | null \| string |  | A stable identifier for this receipt row, unique in the list. |
| `schedule387.receipts[].receiptSerial` | null \| string |  | The unique serial number the minister assigned to the SBVC tax credit receipt. |
| `schedule387.receipts[].route` | null \| string |  | direct when the security was issued to the corporation, partnership when it was issued to an eligible Manitoba limited partnership (from April 15, 2026). |
| `schedule387.receipts[].securityTermsConfirmed` | boolean \| null |  | Confirms the security has none of the redemption, debt or loss-protection terms that disqualify an equity share or convertible right. |
| `schedule387.receipts[].securityType` | null \| string |  | equity_share, or convertible_right for a right issued from April 15, 2026. |
| `schedule387.receipts[].subscriptionPaid` | null \| number \| string |  | The subscription price the corporation paid, or its traced share of the partnership's investment, in dollars and cents. |
| `schedule387.receipts[].tracedShareConfirmed` | boolean \| null |  | For a partnership investment, confirms subscriptionPaid is the corporation's contribution traced to the security's subscription price, not a profit-sharing allocation. |
| `schedule387.recoveryEvents` | array \| null |  | Redemptions or returns of capital within three years of issue and the recovery tax the issuer withheld. Recorded separately; they never reduce line 608. |
| `schedule387.recoveryEventsReviewed` | boolean \| null |  | Confirms that redemptions and returns of capital within three years of issue were reviewed; required when receipts or unused credit exist. |
| `schedule387.recoveryEvents[]` | object |  |  |
| `schedule387.recoveryEvents[].eventDate` | null \| string |  | The date of the redemption or payment (YYYY-MM-DD). |
| `schedule387.recoveryEvents[].eventId` | null \| string |  | A stable identifier for the event, unique in the list. |
| `schedule387.recoveryEvents[].eventType` | null \| string |  | redemption or return_of_capital. |
| `schedule387.recoveryEvents[].evidenceReference` | null \| string |  | The issuer's withholding receipt or statement. |
| `schedule387.recoveryEvents[].receiptSerial` | null \| string |  | The receipt of the redeemed or returned security. |
| `schedule387.recoveryEvents[].taxWithheld` | null \| number \| string |  | The recovery tax the issuer withheld and remitted to Manitoba, in dollars and cents. |
| `schedule387.taxationYears` | array \| null |  | Every preceding taxation year that an opening credit, history row or carryback names, in order, each with its exact start and end dates. End the list with the year immediately before this return or with this return's own period. |
| `schedule387.taxationYears[]` | object |  |  |
| `schedule387.taxationYears[].end` | null \| string |  | The last day of the taxation year (YYYY-MM-DD). Each year starts the day after the previous one ends and lasts no more than 371 days. |
| `schedule387.taxationYears[].evidenceReference` | null \| string |  | The filed return or record that supports the period. |
| `schedule387.taxationYears[].start` | null \| string |  | The first day of the taxation year (YYYY-MM-DD). |
| `schedule387.taxationYears[].taxationYearId` | null \| string |  | A stable identifier for the taxation year, unique in the list; other rows name the year by it. |
| `schedule388` | object |  | Manitoba per-film salary/production claims, permanent elections, dated expenses/payments and current certificate revisions. Omit or null means unopened; explicit no-claim is disclosed nil. |
| `schedule388.certificateHistoryReconciliationReference` | null \| string |  | Retained Manitoba film-credit fact: certificateHistoryReconciliationReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates` | array |  | Retained Manitoba film-credit fact: certificates. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule388.certificates[].applicationDate` | null \| string |  | Retained Manitoba film-credit fact: applicationDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].certificateId` | null \| string |  | Retained Manitoba film-credit fact: certificateId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].certificateKind` | null \| string |  | Retained Manitoba film-credit fact: certificateKind. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].certificateNumber` | null \| string |  | Retained Manitoba film-credit fact: certificateNumber. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].certifiedAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].certifyingBody` | null \| string |  | Retained Manitoba film-credit fact: certifyingBody. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory` | array |  | Retained Manitoba film-credit fact: claimHistory. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule388.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: assessedAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[].claimId` | null \| string |  | Retained Manitoba film-credit fact: claimId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: claimedAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[].filingReference` | null \| string |  | Retained Manitoba film-credit fact: filingReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: fiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained Manitoba film-credit fact: fiscalStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained Manitoba film-credit fact: sourceCurrency. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained Manitoba film-credit fact: supersedesClaimId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].coveredFrom` | null \| string |  | Retained Manitoba film-credit fact: coveredFrom. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].coveredTo` | null \| string |  | Retained Manitoba film-credit fact: coveredTo. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].eligibilityCertificateId` | null \| string |  | Retained Manitoba film-credit fact: eligibilityCertificateId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: estimatedCreditAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].events` | array |  | Retained Manitoba film-credit fact: events. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule388.certificates[].events[].eventDate` | null \| string |  | Retained Manitoba film-credit fact: eventDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].events[].eventId` | null \| string |  | Retained Manitoba film-credit fact: eventId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].events[].eventKind` | null \| string |  | Retained Manitoba film-credit fact: eventKind. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].events[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].evidenceSha256` | null \| string |  | Retained Manitoba film-credit fact: evidenceSha256. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].issueDate` | null \| string |  | Retained Manitoba film-credit fact: issueDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].program` | null \| string |  | Retained Manitoba film-credit fact: program. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].projects` | array |  | Retained Manitoba film-credit fact: projects. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule388.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule388.certificates[].projects[].projectId` | null \| string |  | Retained Manitoba film-credit fact: projectId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].projects[].projectKind` | null \| string |  | Retained Manitoba film-credit fact: projectKind. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].projects[].projectName` | null \| string |  | Retained Manitoba film-credit fact: projectName. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].recipientBusinessNumber` | null \| string |  | Retained Manitoba film-credit fact: recipientBusinessNumber. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].revision` | null \| string |  | Retained Manitoba film-credit fact: revision. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].sourceCurrency` | null \| string |  | Retained Manitoba film-credit fact: sourceCurrency. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].status` | null \| string |  | Retained Manitoba film-credit fact: status. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].supersedesCertificateId` | null \| string |  | Retained Manitoba film-credit fact: supersedesCertificateId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods` | array |  | Retained Manitoba film-credit fact: taxationPeriods. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule388.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained Manitoba film-credit fact: allocationEvidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule388.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: fiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained Manitoba film-credit fact: fiscalStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained Manitoba film-credit fact: projectAmounts. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule388.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule388.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained Manitoba film-credit fact: projectId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].transfers` | array |  | Retained Manitoba film-credit fact: transfers. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule388.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained Manitoba film-credit fact: approvalEvidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].transfers[].legalBasis` | null \| string |  | Retained Manitoba film-credit fact: legalBasis. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained Manitoba film-credit fact: predecessorBusinessNumber. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained Manitoba film-credit fact: successorBusinessNumber. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].transfers[].transferDate` | null \| string |  | Retained Manitoba film-credit fact: transferDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.certificates[].transfers[].transferId` | null \| string |  | Retained Manitoba film-credit fact: transferId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.claim` | boolean \| null |  | Retained Manitoba film-credit fact: claim. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.contactName` | null \| string |  | Retained Manitoba film-credit fact: contactName. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.contactPhone` | null \| string |  | Retained Manitoba film-credit fact: contactPhone. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis` | object |  | Retained Manitoba film-credit fact: currencyBasis. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: amountsInReportingCurrencyConfirmed. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions` | array |  | Retained Manitoba film-credit fact: conversions. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule388.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: aroseDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: denominatorRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: ministerApprovalRef. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: numeratorRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: originalAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: path. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: rateDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: sourceCurrency. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: sourceRecordId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: spotRateSource. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule388.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule388.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule388.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule388.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule388.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule388.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule388.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule388.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule388.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule388.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule388.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule388.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule388.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule388.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule388.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule388.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained Manitoba film-credit fact: reportingCurrency. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films` | array |  | Retained Manitoba film-credit fact: films. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[]` | object |  | Retained provincial credit films record input. |
| `schedule388.films[].actualDeemedLabourReference` | null \| string |  | Retained Manitoba film-credit fact: actualDeemedLabourReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].allEmployeeWages` | null \| number \| string |  | Retained Manitoba film-credit fact: allEmployeeWages. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].annualDeemedBreakdownReference` | null \| string |  | Retained Manitoba film-credit fact: annualDeemedBreakdownReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].applicationFeePaid` | boolean \| null |  | Retained Manitoba film-credit fact: applicationFeePaid. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].assistance` | array |  | Retained Manitoba film-credit fact: assistance. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].assistance[]` | object |  | Retained provincial credit assistance record input. |
| `schedule388.films[].assistance[].category` | null \| string |  | Retained Manitoba film-credit fact: category. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].assistance[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].assistance[].productionAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: productionAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].assistance[].recoupableOrRepaid` | boolean \| null |  | Retained Manitoba film-credit fact: recoupableOrRepaid. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].assistance[].salaryAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: salaryAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].assistance[].sourceId` | null \| string |  | Retained Manitoba film-credit fact: sourceId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].budget` | null \| number \| string |  | Retained Manitoba film-credit fact: budget. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certificateId` | null \| string |  | Retained Manitoba film-credit fact: certificateId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedBasicRate` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedBasicRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedCompanyRate` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedCompanyRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedDeemingRate` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedDeemingRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedFrequentRate` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedFrequentRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedProducerRate` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedProducerRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedProductionRate` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedProductionRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedRuntimeFraction` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedRuntimeFraction. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].certifiedRuralRate` | null \| number \| string |  | Retained Manitoba film-credit fact: certifiedRuralRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].claimInformationComplete` | boolean \| null |  | Retained Manitoba film-credit fact: claimInformationComplete. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyAllEmployeeWages` | null \| number \| string |  | Retained Manitoba film-credit fact: companyAllEmployeeWages. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyBonusRuleDate` | null \| string |  | Retained Manitoba film-credit fact: companyBonusRuleDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyEligibleEmployeeWages` | null \| number \| string |  | Retained Manitoba film-credit fact: companyEligibleEmployeeWages. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyEvidenceReference` | null \| string |  | Retained Manitoba film-credit fact: companyEvidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyFilmBusiness` | boolean \| null |  | Retained Manitoba film-credit fact: companyFilmBusiness. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyIncorporatedManitoba` | boolean \| null |  | Retained Manitoba film-credit fact: companyIncorporatedManitoba. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyManitobaPe` | boolean \| null |  | Retained Manitoba film-credit fact: companyManitobaPe. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyResidentControlPeriods` | array |  | Retained Manitoba film-credit fact: companyResidentControlPeriods. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyResidentControlPeriods[]` | object |  | Retained provincial credit company resident control periods record input. |
| `schedule388.films[].companyResidentControlPeriods[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyResidentControlPeriods[].fromDate` | null \| string |  | Retained Manitoba film-credit fact: fromDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyResidentControlPeriods[].securityInterest` | boolean \| null |  | Retained Manitoba film-credit fact: securityInterest. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyResidentControlPeriods[].toDate` | null \| string |  | Retained Manitoba film-credit fact: toDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyResidentControlPeriods[].votingPercent` | null \| number \| string |  | Retained Manitoba film-credit fact: votingPercent. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyResidentVotingPercent` | null \| number \| string |  | Retained Manitoba film-credit fact: companyResidentVotingPercent. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyScreenCredit` | null \| string |  | Retained Manitoba film-credit fact: companyScreenCredit. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companySharePeriods` | array |  | Retained Manitoba film-credit fact: companySharePeriods. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companySharePeriods[]` | object |  | Retained provincial credit company share periods record input. |
| `schedule388.films[].companySharePeriods[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companySharePeriods[].fromDate` | null \| string |  | Retained Manitoba film-credit fact: fromDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companySharePeriods[].securityInterest` | boolean \| null |  | Retained Manitoba film-credit fact: securityInterest. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companySharePeriods[].toDate` | null \| string |  | Retained Manitoba film-credit fact: toDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companySharePeriods[].votingPercent` | null \| number \| string |  | Retained Manitoba film-credit fact: votingPercent. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].companyTaxableCanadian` | boolean \| null |  | Retained Manitoba film-credit fact: companyTaxableCanadian. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].competingOwnerAgreementReference` | null \| string |  | Retained Manitoba film-credit fact: competingOwnerAgreementReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].competingPrincipalOwners` | boolean \| null |  | Retained Manitoba film-credit fact: competingPrincipalOwners. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].completed` | boolean \| null |  | Retained Manitoba film-credit fact: completed. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].completionApplicationDate` | null \| string |  | Retained Manitoba film-credit fact: completionApplicationDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].completionDate` | null \| string |  | Retained Manitoba film-credit fact: completionDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].controlChanged` | boolean \| null |  | Retained Manitoba film-credit fact: controlChanged. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].controlChangesReference` | null \| string |  | Retained Manitoba film-credit fact: controlChangesReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].covidActivityEvidenceReference` | null \| string |  | Retained Manitoba film-credit fact: covidActivityEvidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].covidOwnerResumptionDate` | null \| string |  | Retained Manitoba film-credit fact: covidOwnerResumptionDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].currentWindowPhotographyDate` | null \| string |  | Retained Manitoba film-credit fact: currentWindowPhotographyDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].detailedCostReportReference` | null \| string |  | Retained Manitoba film-credit fact: detailedCostReportReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].developmentLabourDate` | null \| string |  | Retained Manitoba film-credit fact: developmentLabourDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].eligibilityEvidenceReference` | null \| string |  | Retained Manitoba film-credit fact: eligibilityEvidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].employeeCount` | null \| number \| string |  | Retained Manitoba film-credit fact: employeeCount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].excludedProduction` | null \| string |  | Retained Manitoba film-credit fact: excludedProduction. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses` | array |  | Retained Manitoba film-credit fact: expenses. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[]` | object |  | Retained provincial credit expenses record input. |
| `schedule388.films[].expenses[].allocatedTotal` | null \| number \| string |  | Retained Manitoba film-credit fact: allocatedTotal. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].allocationAgreementReference` | null \| string |  | Retained Manitoba film-credit fact: allocationAgreementReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].allocationDirection` | null \| string |  | Retained Manitoba film-credit fact: allocationDirection. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].allocationFiledReference` | null \| string |  | Retained Manitoba film-credit fact: allocationFiledReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].amount` | null \| number \| string |  | Retained Manitoba film-credit fact: amount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].applicantAllocation` | null \| number \| string |  | Retained Manitoba film-credit fact: applicantAllocation. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].category` | null \| string |  | Retained Manitoba film-credit fact: category. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].ccaClass` | null \| string |  | Retained Manitoba film-credit fact: ccaClass. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].ccaRate` | null \| number \| string |  | Retained Manitoba film-credit fact: ccaRate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].competingClaim` | boolean \| null |  | Retained Manitoba film-credit fact: competingClaim. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].crewId` | null \| string |  | Retained Manitoba film-credit fact: crewId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].directlyAttributable` | boolean \| null |  | Retained Manitoba film-credit fact: directlyAttributable. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].employerContributions` | null \| number \| string |  | Retained Manitoba film-credit fact: employerContributions. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].exclusion` | null \| string |  | Retained Manitoba film-credit fact: exclusion. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].incurredDate` | null \| string |  | Retained Manitoba film-credit fact: incurredDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].lessorEligible` | boolean \| null |  | Retained Manitoba film-credit fact: lessorEligible. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].lessorManitobaLeasingPe` | boolean \| null |  | Retained Manitoba film-credit fact: lessorManitobaLeasingPe. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].manitobaAddress` | null \| string |  | Retained Manitoba film-credit fact: manitobaAddress. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].manitobaUseDays` | null \| number \| string |  | Retained Manitoba film-credit fact: manitobaUseDays. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].ministerDeterminedEligibleAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: ministerDeterminedEligibleAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].ministerValuationReference` | null \| string |  | Retained Manitoba film-credit fact: ministerValuationReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].necessaryProductionAccommodation` | boolean \| null |  | Retained Manitoba film-credit fact: necessaryProductionAccommodation. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].nonresidentUnavailableResident` | boolean \| null |  | Retained Manitoba film-credit fact: nonresidentUnavailableResident. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].onSetFilmingDay` | boolean \| null |  | Retained Manitoba film-credit fact: onSetFilmingDay. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].openingUccOrAcquisitionCost` | null \| number \| string |  | Retained Manitoba film-credit fact: openingUccOrAcquisitionCost. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].otherCorporationAllocation` | null \| number \| string |  | Retained Manitoba film-credit fact: otherCorporationAllocation. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentAgreementReference` | null \| string |  | Retained Manitoba film-credit fact: parentAgreementReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentFiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: parentFiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentFiscalStart` | null \| string |  | Retained Manitoba film-credit fact: parentFiscalStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentIncurredDate` | null \| string |  | Retained Manitoba film-credit fact: parentIncurredDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentOriginalEligibleAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: parentOriginalEligibleAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentPaymentDate` | null \| string |  | Retained Manitoba film-credit fact: parentPaymentDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentPriorFiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: parentPriorFiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentPriorFiscalStart` | null \| string |  | Retained Manitoba film-credit fact: parentPriorFiscalStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentUnderlyingEligible` | boolean \| null |  | Retained Manitoba film-credit fact: parentUnderlyingEligible. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].parentWhollyOwnedRelationship` | boolean \| null |  | Retained Manitoba film-credit fact: parentWhollyOwnedRelationship. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].partnershipAllMembersEligible` | boolean \| null |  | Retained Manitoba film-credit fact: partnershipAllMembersEligible. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].partnershipCanadianBusiness` | boolean \| null |  | Retained Manitoba film-credit fact: partnershipCanadianBusiness. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].payments` | array |  | Retained Manitoba film-credit fact: payments. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].payments[]` | object |  | Retained provincial credit payments record input. |
| `schedule388.films[].expenses[].payments[].amount` | null \| number \| string |  | Retained Manitoba film-credit fact: amount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].payments[].date` | null \| string |  | Retained Manitoba film-credit fact: date. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].payments[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].payments[].paymentId` | null \| string |  | Retained Manitoba film-credit fact: paymentId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].payrollMethod` | null \| string |  | Retained Manitoba film-credit fact: payrollMethod. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].personallyRenderedAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: personallyRenderedAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].postProductionDuty` | null \| string |  | Retained Manitoba film-credit fact: postProductionDuty. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].previouslyClaimed` | boolean \| null |  | Retained Manitoba film-credit fact: previouslyClaimed. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].propertyId` | null \| string |  | Retained Manitoba film-credit fact: propertyId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].qualifyingAmount` | null \| number \| string |  | Retained Manitoba film-credit fact: qualifyingAmount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].reasonable` | boolean \| null |  | Retained Manitoba film-credit fact: reasonable. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].recipientReference` | null \| string |  | Retained Manitoba film-credit fact: recipientReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].reportedEligibleSalary` | null \| number \| string |  | Retained Manitoba film-credit fact: reportedEligibleSalary. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].residentDecember31Years` | array |  | Retained Manitoba film-credit fact: residentDecember31Years. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].residentDecember31Years[]` | null \| number \| string |  | Retained provincial credit resident december31years record input. |
| `schedule388.films[].expenses[].serviceContractEligible` | boolean \| null |  | Retained Manitoba film-credit fact: serviceContractEligible. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].serviceEnd` | null \| string |  | Retained Manitoba film-credit fact: serviceEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].serviceStart` | null \| string |  | Retained Manitoba film-credit fact: serviceStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].servicesInManitoba` | boolean \| null |  | Retained Manitoba film-credit fact: servicesInManitoba. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].sourceId` | null \| string |  | Retained Manitoba film-credit fact: sourceId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].supplierPrincipallyPersonalServices` | boolean \| null |  | Retained Manitoba film-credit fact: supplierPrincipallyPersonalServices. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].supplierTaxableCanadian` | boolean \| null |  | Retained Manitoba film-credit fact: supplierTaxableCanadian. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].supplierType` | null \| string |  | Retained Manitoba film-credit fact: supplierType. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].supplierWhollyOwnedByIndividual` | boolean \| null |  | Retained Manitoba film-credit fact: supplierWhollyOwnedByIndividual. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].taxableBenefits` | null \| number \| string |  | Retained Manitoba film-credit fact: taxableBenefits. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].technicalServices` | boolean \| null |  | Retained Manitoba film-credit fact: technicalServices. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].traineeCount` | null \| number \| string |  | Retained Manitoba film-credit fact: traineeCount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].traineeWorkExperienceEligible` | boolean \| null |  | Retained Manitoba film-credit fact: traineeWorkExperienceEligible. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].trainingApprovalDate` | null \| string |  | Retained Manitoba film-credit fact: trainingApprovalDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].trainingAuthority` | null \| string |  | Retained Manitoba film-credit fact: trainingAuthority. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].trainingCompleted` | boolean \| null |  | Retained Manitoba film-credit fact: trainingCompleted. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].trainingReference` | null \| string |  | Retained Manitoba film-credit fact: trainingReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].underlyingEligiblePayroll` | null \| number \| string |  | Retained Manitoba film-credit fact: underlyingEligiblePayroll. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].unitId` | null \| string |  | Retained Manitoba film-credit fact: unitId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].expenses[].unitNight` | null \| string |  | Retained Manitoba film-credit fact: unitNight. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].filmId` | null \| string |  | Retained Manitoba film-credit fact: filmId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].finalApplicantProductionCost` | null \| number \| string |  | Actual final applicant production cost for completion certification and its fee. Required on completion; an advance retains annual source costs without guessing a final production total. |
| `schedule388.films[].financialStructureReference` | null \| string |  | Retained Manitoba film-credit fact: financialStructureReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].firstApplicationDate` | null \| string |  | Retained Manitoba film-credit fact: firstApplicationDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].firstApplicationScheme` | null \| string |  | Retained Manitoba film-credit fact: firstApplicationScheme. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].firstTwoFiscalEnds` | array |  | Retained Manitoba film-credit fact: firstTwoFiscalEnds. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].firstTwoFiscalEnds[]` | null \| string |  | Retained provincial credit first two fiscal ends record input. |
| `schedule388.films[].frequentWindowStart` | null \| string |  | Retained Manitoba film-credit fact: frequentWindowStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].genre` | null \| string |  | Retained Manitoba film-credit fact: genre. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].labourReportReference` | null \| string |  | Retained Manitoba film-credit fact: labourReportReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].medium` | null \| string |  | Retained Manitoba film-credit fact: medium. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].mfmEquityInvestor` | boolean \| null |  | Retained Manitoba film-credit fact: mfmEquityInvestor. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].noticeDate` | null \| string |  | Retained Manitoba film-credit fact: noticeDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].noticeReference` | null \| string |  | Retained Manitoba film-credit fact: noticeReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].noticeWaiverReference` | null \| string |  | Retained Manitoba film-credit fact: noticeWaiverReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].noticeWaiverStatus` | null \| string |  | Retained Manitoba film-credit fact: noticeWaiverStatus. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ownerRecognitionReference` | null \| string |  | Retained Manitoba film-credit fact: ownerRecognitionReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ownershipPeriods` | array |  | Retained Manitoba film-credit fact: ownershipPeriods. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ownershipPeriods[]` | object |  | Retained provincial credit ownership periods record input. |
| `schedule388.films[].ownershipPeriods[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ownershipPeriods[].fromDate` | null \| string |  | Retained Manitoba film-credit fact: fromDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ownershipPeriods[].securityInterest` | boolean \| null |  | Retained Manitoba film-credit fact: securityInterest. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ownershipPeriods[].toDate` | null \| string |  | Retained Manitoba film-credit fact: toDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ownershipPeriods[].votingPercent` | null \| number \| string |  | Retained Manitoba film-credit fact: votingPercent. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photography` | array |  | Retained Manitoba film-credit fact: photography. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photographyEnd` | null \| string |  | Retained Manitoba film-credit fact: photographyEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photographyStart` | null \| string |  | Retained Manitoba film-credit fact: photographyStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photographyStartFiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: photographyStartFiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photography[]` | object |  | Retained provincial credit photography record input. |
| `schedule388.films[].photography[].date` | null \| string |  | Retained Manitoba film-credit fact: date. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photography[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photography[].inManitoba` | boolean \| null |  | Retained Manitoba film-credit fact: inManitoba. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photography[].kilometresFromWinnipeg` | null \| number \| string |  | Retained Manitoba film-credit fact: kilometresFromWinnipeg. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].photography[].ruralHours` | null \| number \| string |  | Retained Manitoba film-credit fact: ruralHours. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].postProductionEnd` | null \| string |  | Retained Manitoba film-credit fact: postProductionEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].principalOwnerId` | null \| string |  | Retained Manitoba film-credit fact: principalOwnerId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorAllowedPrincipalOwnerId` | null \| string |  | Retained Manitoba film-credit fact: priorAllowedPrincipalOwnerId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorAllowedPrincipalOwnerReference` | null \| string |  | Retained Manitoba film-credit fact: priorAllowedPrincipalOwnerReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorClaims` | array |  | Retained Manitoba film-credit fact: priorClaims. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorClaims[]` | object |  | Retained provincial credit prior claims record input. |
| `schedule388.films[].priorClaims[].amount` | null \| number \| string |  | Retained Manitoba film-credit fact: amount. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorClaims[].claimId` | null \| string |  | Retained Manitoba film-credit fact: claimId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorClaims[].filingReference` | null \| string |  | Retained Manitoba film-credit fact: filingReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorClaims[].fiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: fiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorClaims[].fiscalStart` | null \| string |  | Retained Manitoba film-credit fact: fiscalStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorClaims[].scheme` | null \| string |  | Retained Manitoba film-credit fact: scheme. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorFiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: priorFiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorFiscalStart` | null \| string |  | Retained Manitoba film-credit fact: priorFiscalStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions` | array |  | Retained Manitoba film-credit fact: priorProductions. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[]` | object |  | Retained provincial credit prior productions record input. |
| `schedule388.films[].priorProductions[].completedEligibleFilm` | boolean \| null |  | Retained Manitoba film-credit fact: completedEligibleFilm. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[].completionCertificateReference` | null \| string |  | Retained Manitoba film-credit fact: completionCertificateReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[].filmId` | null \| string |  | Retained Manitoba film-credit fact: filmId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[].photographyEnd` | null \| string |  | Retained Manitoba film-credit fact: photographyEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[].photographyStart` | null \| string |  | Retained Manitoba film-credit fact: photographyStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[].principalOwnerId` | null \| string |  | Retained Manitoba film-credit fact: principalOwnerId. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[].principalOwnerQualified` | boolean \| null |  | Retained Manitoba film-credit fact: principalOwnerQualified. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].priorProductions[].windowPhotographyDate` | null \| string |  | Retained Manitoba film-credit fact: windowPhotographyDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].producerCredit` | null \| string |  | Retained Manitoba film-credit fact: producerCredit. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].producerEvidenceReference` | null \| string |  | Retained Manitoba film-credit fact: producerEvidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].producerResidentYears` | array |  | Retained Manitoba film-credit fact: producerResidentYears. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].producerResidentYears[]` | null \| number \| string |  | Retained provincial credit producer resident years record input. |
| `schedule388.films[].professionalStandardsConfirmed` | boolean \| null |  | Retained Manitoba film-credit fact: professionalStandardsConfirmed. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].qualifyingOwnEmployeeWages` | null \| number \| string |  | Retained Manitoba film-credit fact: qualifyingOwnEmployeeWages. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].reassessmentWaivers` | array |  | Retained Manitoba film-credit fact: reassessmentWaivers. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].reassessmentWaivers[]` | object |  | Retained provincial credit reassessment waivers record input. |
| `schedule388.films[].reassessmentWaivers[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].reassessmentWaivers[].filedDate` | null \| string |  | Retained Manitoba film-credit fact: filedDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].reassessmentWaivers[].fiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: fiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].reassessmentWaivers[].normalReassessmentEnd` | null \| string |  | Retained Manitoba film-credit fact: normalReassessmentEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].registeredEligibleFilm` | boolean \| null |  | Retained Manitoba film-credit fact: registeredEligibleFilm. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].registrationApplicationDate` | null \| string |  | Retained Manitoba film-credit fact: registrationApplicationDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].registrationReference` | null \| string |  | Retained Manitoba film-credit fact: registrationReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].reportKind` | null \| string |  | Retained Manitoba film-credit fact: reportKind. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].reportReference` | null \| string |  | Retained Manitoba film-credit fact: reportReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ruleVersion` | null \| string |  | Retained Manitoba film-credit fact: ruleVersion. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ruralPeEvidenceReference` | null \| string |  | Retained Manitoba film-credit fact: ruralPeEvidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ruralPeFrom` | null \| string |  | Retained Manitoba film-credit fact: ruralPeFrom. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ruralPeKilometres` | null \| number \| string |  | Retained Manitoba film-credit fact: ruralPeKilometres. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].ruralPeTo` | null \| string |  | Retained Manitoba film-credit fact: ruralPeTo. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears` | array |  | Retained Manitoba film-credit fact: salaryYears. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears[]` | object |  | Retained provincial credit salary years record input. |
| `schedule388.films[].salaryYears[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Historical annual labour currency evidence. Resident salary, nonresident salary and previously claimed deemed salary share the original reporting currency and boundary conversion. |
| `schedule388.films[].salaryYears[].evidenceReference` | null \| string |  | Retained Manitoba film-credit fact: evidenceReference. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears[].fiscalEnd` | null \| string |  | Retained Manitoba film-credit fact: fiscalEnd. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears[].fiscalStart` | null \| string |  | Retained Manitoba film-credit fact: fiscalStart. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Historical annual labour currency evidence. Resident salary, nonresident salary and previously claimed deemed salary share the original reporting currency and boundary conversion. |
| `schedule388.films[].salaryYears[].originReportingCurrency` | null \| string |  | Retained Manitoba film-credit fact: originReportingCurrency. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears[].previouslyClaimedDeemedSalary` | null \| number \| string |  | Retained Manitoba film-credit fact: previouslyClaimedDeemedSalary. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears[].qualifyingNonresidentSalary` | null \| number \| string |  | Retained Manitoba film-credit fact: qualifyingNonresidentSalary. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].salaryYears[].residentEligibleSalary` | null \| number \| string |  | Retained Manitoba film-credit fact: residentEligibleSalary. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].scheme` | null \| string |  | Retained Manitoba film-credit fact: scheme. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].screenCreditApproved` | boolean \| null |  | Retained Manitoba film-credit fact: screenCreditApproved. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].series` | boolean \| null |  | Retained Manitoba film-credit fact: series. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].seriesEligibleRuntimeMinutes` | null \| number \| string |  | Retained Manitoba film-credit fact: seriesEligibleRuntimeMinutes. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].seriesPriorBlockMinutes` | array |  | Retained Manitoba film-credit fact: seriesPriorBlockMinutes. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].seriesPriorBlockMinutes[]` | null \| number \| string |  | Retained provincial credit series prior block minutes record input. |
| `schedule388.films[].seriesTotalRuntimeMinutes` | null \| number \| string |  | Retained Manitoba film-credit fact: seriesTotalRuntimeMinutes. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].storyRightsDate` | null \| string |  | Retained Manitoba film-credit fact: storyRightsDate. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.films[].title` | null \| string |  | Retained Manitoba film-credit fact: title. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.incorporatedCanada` | boolean \| null |  | Retained Manitoba film-credit fact: incorporatedCanada. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.manitobaPe` | boolean \| null |  | Retained Manitoba film-credit fact: manitobaPe. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.primaryFilmBusiness` | boolean \| null |  | Retained Manitoba film-credit fact: primaryFilmBusiness. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.priorCertificateAmendmentsResolved` | boolean \| null |  | Retained Manitoba film-credit fact: priorCertificateAmendmentsResolved. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule388.taxableCanadianCorporation` | boolean \| null |  | Retained Manitoba film-credit fact: taxableCanadianCorporation. Null is unanswered; evidence and statutory eligibility are checked by the S388 builder. |
| `schedule389` | null \| object |  | Manitoba authorized book-publishing claim information. Omit or null for unopened; explicit no-claim is disclosed nil. |
| `schedule389.authorPrintAgreements` | boolean \| null |  | Schedule 389 retained authorPrintAgreements evidence; null remains unanswered. |
| `schedule389.books` | array |  | Schedule 389 retained books evidence; null remains unanswered. |
| `schedule389.booksComplete` | boolean \| null |  | Schedule 389 retained booksComplete evidence; null remains unanswered. |
| `schedule389.books[]` | object |  | Retained provincial credit books record input. |
| `schedule389.books[].allPublisherAllocatedPages` | null \| number \| string |  | Retained Schedule 389 allPublisherAllocatedPages evidence; null remains unanswered. |
| `schedule389.books[].allocatedPages` | null \| number \| string |  | Retained Schedule 389 allocatedPages evidence; null remains unanswered. |
| `schedule389.books[].allocationAgreementFiled` | boolean \| null |  | Retained Schedule 389 allocationAgreementFiled evidence; null remains unanswered. |
| `schedule389.books[].allocationEvidenceReference` | null \| string |  | Retained Schedule 389 allocationEvidenceReference evidence; null remains unanswered. |
| `schedule389.books[].anthology` | boolean \| null |  | Retained Schedule 389 anthology evidence; null remains unanswered. |
| `schedule389.books[].anthologyQualifies` | boolean \| null |  | Retained Schedule 389 anthologyQualifies evidence; null remains unanswered. |
| `schedule389.books[].armLength` | boolean \| null |  | Retained Schedule 389 armLength evidence; null remains unanswered. |
| `schedule389.books[].authorQualifies` | boolean \| null |  | Retained Schedule 389 authorQualifies evidence; null remains unanswered. |
| `schedule389.books[].authors` | null \| string |  | Retained Schedule 389 authors evidence; null remains unanswered. |
| `schedule389.books[].bookId` | null \| string |  | Retained Schedule 389 bookId evidence; null remains unanswered. |
| `schedule389.books[].classification` | null \| string |  | Retained Schedule 389 classification evidence; null remains unanswered. |
| `schedule389.books[].copies` | null \| number \| string |  | Retained Schedule 389 copies evidence; null remains unanswered. |
| `schedule389.books[].creatorFunded` | boolean \| null |  | Retained Schedule 389 creatorFunded evidence; null remains unanswered. |
| `schedule389.books[].evidenceReference` | null \| string |  | Retained Schedule 389 evidenceReference evidence; null remains unanswered. |
| `schedule389.books[].excludedProduct` | boolean \| null |  | Retained Schedule 389 excludedProduct evidence; null remains unanswered. |
| `schedule389.books[].firstEdition` | boolean \| null |  | Retained Schedule 389 firstEdition evidence; null remains unanswered. |
| `schedule389.books[].format` | null \| string |  | Retained Schedule 389 format evidence; null remains unanswered. |
| `schedule389.books[].illustratedChildrenBook` | boolean \| null |  | Retained Schedule 389 illustratedChildrenBook evidence; null remains unanswered. |
| `schedule389.books[].illustratorQualifies` | boolean \| null |  | Retained Schedule 389 illustratorQualifies evidence; null remains unanswered. |
| `schedule389.books[].isbn` | null \| string |  | Retained Schedule 389 isbn evidence; null remains unanswered. |
| `schedule389.books[].nonPeriodical` | boolean \| null |  | Retained Schedule 389 nonPeriodical evidence; null remains unanswered. |
| `schedule389.books[].otherPublisherClaims` | boolean \| null |  | Retained Schedule 389 otherPublisherClaims evidence; null remains unanswered. |
| `schedule389.books[].outsideAdvertising` | boolean \| null |  | Retained Schedule 389 outsideAdvertising evidence; null remains unanswered. |
| `schedule389.books[].pages` | null \| number \| string |  | Retained Schedule 389 pages evidence; null remains unanswered. |
| `schedule389.books[].printedEditionId` | null \| string |  | Retained Schedule 389 printedEditionId evidence; null remains unanswered. |
| `schedule389.books[].printedEditionPages` | null \| number \| string |  | Retained Schedule 389 printedEditionPages evidence; null remains unanswered. |
| `schedule389.books[].prohibitedContent` | boolean \| null |  | Retained Schedule 389 prohibitedContent evidence; null remains unanswered. |
| `schedule389.books[].publicationDate` | null \| string |  | Retained Schedule 389 publicationDate evidence; null remains unanswered. |
| `schedule389.books[].recoverableOnlyFromSales` | boolean \| null |  | Retained Schedule 389 recoverableOnlyFromSales evidence; null remains unanswered. |
| `schedule389.books[].title` | null \| string |  | Retained Schedule 389 title evidence; null remains unanswered. |
| `schedule389.books[].toBePublished` | boolean \| null |  | Retained Schedule 389 toBePublished evidence; null remains unanswered. |
| `schedule389.claimInformationEvidenceReference` | null \| string |  | Schedule 389 retained claimInformationEvidenceReference evidence; null remains unanswered. |
| `schedule389.claimInformationFiledDate` | null \| string |  | Schedule 389 retained claimInformationFiledDate evidence; null remains unanswered. |
| `schedule389.claimInformationStatus` | null \| string |  | Schedule 389 retained claimInformationStatus evidence; null remains unanswered. |
| `schedule389.claimInformationStatusVerified` | boolean \| null |  | Schedule 389 retained claimInformationStatusVerified evidence; null remains unanswered. |
| `schedule389.claimRequested` | boolean \| null |  | Retain authorized claim information, elected amount and timely filing evidence or a captured calculation reference date. File within one year of the filing-due date. There is no statutory tax-credit certificate requirement and no credit carryforward pool. |
| `schedule389.claimedAmount` | null \| number \| string |  | Schedule 389 retained claimedAmount evidence; null remains unanswered. |
| `schedule389.currencyBasis` | object |  | Schedule 389 retained currencyBasis evidence; null remains unanswered. |
| `schedule389.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions` | array |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule389.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule389.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule389.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule389.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule389.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule389.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule389.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule389.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule389.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule389.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule389.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule389.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule389.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule389.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule389.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule389.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule389.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | S389 source currency and conversion evidence under the shared provincial currency contract. Preserve original amounts and bind conversions to the identified cost or payment. |
| `schedule389.expenses` | array |  | Schedule 389 retained expenses evidence; null remains unanswered. |
| `schedule389.expensesComplete` | boolean \| null |  | Schedule 389 retained expensesComplete evidence; null remains unanswered. |
| `schedule389.expenses[]` | object |  | Retained provincial credit expenses record input. |
| `schedule389.expenses[].activity` | null \| string |  | Retained Schedule 389 activity evidence; null remains unanswered. |
| `schedule389.expenses[].amount` | null \| number \| string |  | Retained Schedule 389 amount evidence; null remains unanswered. |
| `schedule389.expenses[].bookId` | null \| string |  | Retained Schedule 389 bookId evidence; null remains unanswered. |
| `schedule389.expenses[].evidenceReference` | null \| string |  | Retained Schedule 389 evidenceReference evidence; null remains unanswered. |
| `schedule389.expenses[].expenseId` | null \| string |  | Retained Schedule 389 expenseId evidence; null remains unanswered. |
| `schedule389.expenses[].incurredDate` | null \| string |  | Retained Schedule 389 incurredDate evidence; null remains unanswered. |
| `schedule389.expenses[].kind` | null \| string |  | Retained Schedule 389 kind evidence; null remains unanswered. |
| `schedule389.expenses[].nonRefundable` | boolean \| null |  | Retained Schedule 389 nonRefundable evidence; null remains unanswered. |
| `schedule389.expenses[].payments` | array |  | Retained Schedule 389 payments evidence; null remains unanswered. |
| `schedule389.expenses[].payments[]` | object |  | Retained provincial credit payments record input. |
| `schedule389.expenses[].payments[].amount` | null \| number \| string |  | Retained Schedule 389 amount evidence; null remains unanswered. |
| `schedule389.expenses[].payments[].evidenceReference` | null \| string |  | Retained Schedule 389 evidenceReference evidence; null remains unanswered. |
| `schedule389.expenses[].payments[].paidDate` | null \| string |  | Retained Schedule 389 paidDate evidence; null remains unanswered. |
| `schedule389.expenses[].payments[].paymentId` | null \| string |  | Retained Schedule 389 paymentId evidence; null remains unanswered. |
| `schedule389.expenses[].payments[].previouslyClaimed` | boolean \| null |  | Retained Schedule 389 previouslyClaimed evidence; null remains unanswered. |
| `schedule389.expenses[].postConsumerPercent` | null \| number \| string |  | Retained Schedule 389 postConsumerPercent evidence; null remains unanswered. |
| `schedule389.expenses[].profitOrRevenueLinked` | boolean \| null |  | Retained Schedule 389 profitOrRevenueLinked evidence; null remains unanswered. |
| `schedule389.expenses[].publicationRelated` | boolean \| null |  | For labour whose activity is other, whether it relates to publishing the books rather than their marketing or promotion (MB ITA s.10.4(3), (4)(a)); null remains unanswered. |
| `schedule389.expenses[].reasonable` | boolean \| null |  | Retained Schedule 389 reasonable evidence; null remains unanswered. |
| `schedule389.expenses[].recipientQualifies` | boolean \| null |  | Retained Schedule 389 recipientQualifies evidence; null remains unanswered. |
| `schedule389.expenses[].recipientType` | null \| string |  | Retained Schedule 389 recipientType evidence; null remains unanswered. |
| `schedule389.expenses[].sourceAmount` | null \| number \| string |  | Retained Schedule 389 sourceAmount evidence; null remains unanswered. |
| `schedule389.expenses[].sourceCurrency` | null \| string |  | Retained Schedule 389 sourceCurrency evidence; null remains unanswered. |
| `schedule389.expenses[].sourceId` | null \| string |  | Retained Schedule 389 sourceId evidence; null remains unanswered. |
| `schedule389.hasManitobaPE` | boolean \| null |  | Schedule 389 retained hasManitobaPE evidence; null remains unanswered. |
| `schedule389.inventoryOrReturnAgreements` | boolean \| null |  | Schedule 389 retained inventoryOrReturnAgreements evidence; null remains unanswered. |
| `schedule389.manitobaEmployeeWages` | null \| number \| string |  | Schedule 389 retained manitobaEmployeeWages evidence; null remains unanswered. |
| `schedule389.payrollBasisConfirmed` | boolean \| null |  | Schedule 389 retained payrollBasisConfirmed evidence; null remains unanswered. |
| `schedule389.primarilyBookPublishing` | boolean \| null |  | Schedule 389 retained primarilyBookPublishing evidence; null remains unanswered. |
| `schedule389.selectsEditsPublishesOffersForSale` | boolean \| null |  | Schedule 389 retained selectsEditsPublishesOffersForSale evidence; null remains unanswered. |
| `schedule389.totalEmployeeWages` | null \| number \| string |  | Schedule 389 retained totalEmployeeWages evidence; null remains unanswered. |
| `schedule389.universityPress` | boolean \| null |  | Schedule 389 retained universityPress evidence; null remains unanswered. |
| `schedule390` | null \| object |  | Manitoba cooperative development tax credit inputs (T2 SCH 390 E (17)): the T2CDTC(MB) receipts for contributions made before April 12, 2017, the tax otherwise payable of each contribution year, every taxation year since the earliest of them, every credit already claimed against them, and this year's claim. Omit it or send null when the form was not opened. The credit claimed reduces Manitoba tax at Schedule 5 line 609. |
| `schedule390.amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule390.carrybacks` | array \| null |  | Part 3 requests to carry this year's excess credit back to the three preceding taxation years ending after 2009, each year once, within that year's Manitoba tax left after prior claims (MB ITA s.7.14(4)). |
| `schedule390.carrybacks[]` | object |  |  |
| `schedule390.carrybacks[].amount` | null \| number \| string |  | Credit carried back to that taxation year, in dollars and cents. |
| `schedule390.carrybacks[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule390.carrybacks[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule390.carrybacks[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.carrybacks[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule390.carrybacks[].evidenceReference` | null \| string |  | Reference to the destination year's assessed Manitoba tax and claims. |
| `schedule390.carrybacks[].manitobaTaxOtherwisePayable` | null \| number \| string |  | That year's Manitoba tax otherwise payable; with its earlier claims it limits the carryback. |
| `schedule390.carrybacks[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule390.carrybacks[].targetTaxationYearId` | null \| string |  | Identifier, from taxationYears, of the preceding taxation year the amount is carried back to. |
| `schedule390.claim` | boolean \| null |  | Whether the corporation claims the Manitoba cooperative development tax credit this taxation year. A No carries the whole unexpired balance; a Yes needs claimAmountMode. |
| `schedule390.claimAmountMode` | null \| string |  | How line 220 is chosen when claim is Yes: maximum claims the lesser of the available credit and the Manitoba tax left at Schedule 5 line 609; selected claims requestedCredit. |
| `schedule390.currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule390.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule390.currencyYears` | array |  | Original reporting currency and first-day BoC evidence for each historical taxation year. Optional legacy omission means CAD. Fixed statutory amounts are read in that year, then follow its ledger currency boundaries. |
| `schedule390.currencyYears[]` | object |  |  |
| `schedule390.currencyYears[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: currencyConversionHistory. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].firstDayRate` | null \| object |  | Original taxation-year currency evidence: firstDayRate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].firstDayRate.firstDayDate` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: firstDayRate.firstDayDate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].firstDayRate.rate` | number \| string |  | Original taxation-year currency evidence: firstDayRate.rate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].firstDayRate.spotRateSource` | string |  | Original taxation-year currency evidence: firstDayRate.spotRateSource. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: openingConversion. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].periodStart` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: periodStart. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].reportingCurrency` | null \| string |  | Original taxation-year currency evidence: reportingCurrency. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.currencyYears[].taxationYearId` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: taxationYearId. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule390.entityContinuityConfirmed` | boolean \| null |  | Confirms that the listed receipts and claims are this corporation's own, with no amalgamation, wind-up or other succession. |
| `schedule390.ledgerCompleteConfirmed` | boolean \| null |  | Confirms that every T2CDTC(MB) receipt for a contribution whose credit can still be used is listed in receipts, including amended receipts. |
| `schedule390.openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule390.originYears` | array \| null |  | One row per contribution year: whether the corporation was an eligible contributor with a Manitoba permanent establishment, and its tax otherwise payable, which fixes the deemed refund and the carryforward. |
| `schedule390.originYears[]` | object |  |  |
| `schedule390.originYears[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule390.originYears[].contributorEvidenceReference` | null \| string |  | The record that supports the contributor type and the Manitoba permanent establishment. |
| `schedule390.originYears[].contributorType` | null \| string |  | manitoba_cooperative or credit_union for an eligible contributor in that year; other when the corporation was neither, which earns no credit. |
| `schedule390.originYears[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule390.originYears[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.originYears[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule390.originYears[].manitobaPermanentEstablishment` | boolean \| null |  | Whether the corporation had a permanent establishment in Manitoba in the contribution year. |
| `schedule390.originYears[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule390.originYears[].taxOtherwisePayable` | null \| number \| string |  | The Manitoba tax otherwise payable in the contribution year, in dollars and cents; it fixes the deemed $750 refund and the carryforward. |
| `schedule390.originYears[].taxOtherwisePayableEvidenceReference` | null \| string |  | The filed return or assessment that supports taxOtherwisePayable. |
| `schedule390.originYears[].taxationYearId` | null \| string |  | The taxationYears row of the contribution year. |
| `schedule390.priorClaims` | array \| null |  | Every Schedule 390 credit deducted in an earlier taxation year, with the contribution years each claim used. Send an empty list when none. |
| `schedule390.priorClaimsCompleteConfirmed` | boolean \| null |  | Confirms that priorClaims records every Schedule 390 credit deducted in an earlier taxation year, with any amended claim that replaced it. |
| `schedule390.priorClaims[]` | object |  |  |
| `schedule390.priorClaims[].allocations` | array \| null |  | The contribution years whose credits this claim used, with the amount used from each; the amounts must add up to the claim. |
| `schedule390.priorClaims[].allocations[]` | object |  |  |
| `schedule390.priorClaims[].allocations[].creditUsed` | null \| number \| string |  | The credit used from that year, in dollars and cents. |
| `schedule390.priorClaims[].allocations[].originTaxationYearId` | null \| string |  | The contribution year whose credit the claim used. |
| `schedule390.priorClaims[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule390.priorClaims[].claimId` | null \| string |  | A stable identifier for this filed claim, unique in the list. |
| `schedule390.priorClaims[].creditClaimed` | null \| number \| string |  | The credit deducted on Schedule 390 for that year, in Canadian dollars and cents. |
| `schedule390.priorClaims[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule390.priorClaims[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.priorClaims[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule390.priorClaims[].evidenceReference` | null \| string |  | The filed return or assessment that records this claim. |
| `schedule390.priorClaims[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule390.priorClaims[].originalCurrency` | null \| string |  | The currency of the claimed credit. Only CAD is accepted for a prior claim. |
| `schedule390.priorClaims[].supersedesClaimId` | null \| string |  | The claimId of an earlier claim for the same taxation year that this amended claim replaces; null for an original claim. |
| `schedule390.priorClaims[].taxationYearId` | null \| string |  | The earlier taxation year in which the credit was deducted; one effective claim per year. |
| `schedule390.receipts` | array \| null |  | The T2CDTC(MB) receipts, one row per receipt, including receipts already fully used or expired. |
| `schedule390.receipts[]` | object |  |  |
| `schedule390.receipts[].administratorName` | null \| string |  | The administrator that issued the receipt. |
| `schedule390.receipts[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule390.receipts[].contributionAmount` | null \| number \| string |  | The contribution shown on the receipt, in Canadian dollars and cents. |
| `schedule390.receipts[].contributionDate` | null \| string |  | The date of the contribution (YYYY-MM-DD). Only a contribution made after September 30, 2010 and before April 12, 2017 earns a credit. |
| `schedule390.receipts[].creditAmount` | null \| number \| string |  | The tax credit shown on the receipt, in dollars and cents; it must agree with the statutory table for the year's contributions. |
| `schedule390.receipts[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule390.receipts[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule390.receipts[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule390.receipts[].evidenceReference` | null \| string |  | Where the receipt is kept, so the credit can be supported on review. |
| `schedule390.receipts[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule390.receipts[].originalCurrency` | null \| string |  | The currency of the receipt amounts. Only CAD carries forward without a currency review. |
| `schedule390.receipts[].receiptId` | null \| string |  | A stable identifier for this receipt, unique in the list; an amended receipt names the one it replaces by it. |
| `schedule390.receipts[].receiptNumber` | null \| string |  | The number printed on the T2CDTC(MB) receipt; one receipt per number. |
| `schedule390.receipts[].sourceBusinessNumber` | null \| string |  | The business number of the corporation the receipt was issued to; it must be this corporation's. |
| `schedule390.receipts[].supersedesReceiptId` | null \| string |  | The receiptId of an earlier receipt this amended receipt replaces; null for an original receipt. |
| `schedule390.receipts[].taxationYearId` | null \| string |  | The taxationYears row in which the contribution was made. |
| `schedule390.requestedCredit` | null \| number \| string |  | The credit to claim on line 220, in dollars and cents, when claimAmountMode is selected. It cannot exceed the available credit or the Manitoba tax left at line 609. |
| `schedule390.taxationYears` | array \| null |  | Every taxation year of the corporation in order, from the earliest contribution year, each with its exact start and end dates. The 10-year carryforward counts these years, short years included. |
| `schedule390.taxationYearsCompleteConfirmed` | boolean \| null |  | Confirms that taxationYears lists every taxation year of the corporation, short years included, from the earliest contribution year up to this return's period. |
| `schedule390.taxationYears[]` | object |  |  |
| `schedule390.taxationYears[].end` | null \| string |  | The last day of the taxation year (YYYY-MM-DD). Each year starts the day after the previous one ends and lasts no more than 371 days. |
| `schedule390.taxationYears[].evidenceReference` | null \| string |  | The filed return or other record that establishes this taxation year's dates. |
| `schedule390.taxationYears[].start` | null \| string |  | The first day of the taxation year (YYYY-MM-DD). |
| `schedule390.taxationYears[].taxationYearId` | null \| string |  | A stable identifier for the taxation year, unique in the list; receipts, contribution years and prior claims name the year by it. |
| `schedule391` | null \| object |  | Manitoba Neighbourhoods Alive! tax credit inputs (T2 SCH 391 E (17)): the eligible donations made before April 12, 2017, the charities and social enterprises they supported, each credit-earned year with its receipted services, every taxation year since the earliest donation, and every credit already deducted. Omit it or send null when the form was not opened. No supported Schedule 5 edition receives line 140, so a positive claim holds the return. |
| `schedule391.amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule391.carrybacks` | array \| null |  | Part 3 requests to apply this year's credit to one of the three preceding taxation years that end after 2011, one row per year. Omit it or send an empty list when none. |
| `schedule391.carrybacks[]` | object |  |  |
| `schedule391.carrybacks[].amount` | null \| number \| string |  | The credit to apply to that year, in dollars and cents. It cannot exceed that year's Manitoba income tax otherwise payable less the Schedule 391 credit already deducted in it. |
| `schedule391.carrybacks[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule391.carrybacks[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule391.carrybacks[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.carrybacks[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule391.carrybacks[].evidenceReference` | null \| string |  | Where that year's assessed Manitoba tax is recorded, such as its notice of assessment. |
| `schedule391.carrybacks[].manitobaTaxOtherwisePayable` | null \| number \| string |  | That year's assessed Manitoba income tax otherwise payable for this credit: the tax left after the Manitoba credits deducted before Schedule 391, before any Schedule 391 credit, in dollars and cents. |
| `schedule391.carrybacks[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule391.carrybacks[].targetTaxationYearId` | null \| string |  | The listed taxation year the credit is applied to: one of the three taxation years immediately before this one, ending after 2011. |
| `schedule391.charities` | array \| null |  | The Manitoba registered charities the donations were made to, one row per charity. |
| `schedule391.charities[]` | object |  |  |
| `schedule391.charities[].charityId` | null \| string |  | A stable identifier for the charity, unique in the list; enterprises, donations and services name the charity by it. |
| `schedule391.charities[].evidenceReference` | null \| string |  | The record that supports the charity's status. |
| `schedule391.charities[].manitobaCharityConfirmed` | boolean \| null |  | Confirms that the charity is a registered charity in Manitoba that carries on the supported enterprise. |
| `schedule391.charities[].name` | null \| string |  | The charity's name. |
| `schedule391.charities[].registrationNumber` | null \| string |  | The charity's registration number. |
| `schedule391.claim` | boolean \| null |  | Whether the corporation claims the Manitoba Neighbourhoods Alive! tax credit this taxation year. No supported Schedule 5 edition receives the claim, so a positive line 140 holds the return; a No carries the whole balance. |
| `schedule391.claimAmountMode` | null \| string |  | How line 140 is chosen when claim is Yes: maximum takes the lesser of the available credit and the Manitoba tax left after Schedule 5 line 609; selected takes requestedCredit. |
| `schedule391.currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule391.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule391.currencyYears` | array |  | Original reporting currency and first-day BoC evidence for each historical taxation year. Optional legacy omission means CAD. Fixed statutory amounts are read in that year, then follow its ledger currency boundaries. |
| `schedule391.currencyYears[]` | object |  |  |
| `schedule391.currencyYears[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: currencyConversionHistory. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].firstDayRate` | null \| object |  | Original taxation-year currency evidence: firstDayRate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].firstDayRate.firstDayDate` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: firstDayRate.firstDayDate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].firstDayRate.rate` | number \| string |  | Original taxation-year currency evidence: firstDayRate.rate. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].firstDayRate.spotRateSource` | string |  | Original taxation-year currency evidence: firstDayRate.spotRateSource. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: openingConversion. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].periodStart` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: periodStart. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].reportingCurrency` | null \| string |  | Original taxation-year currency evidence: reportingCurrency. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.currencyYears[].taxationYearId` | array \| boolean \| null \| number \| object \| string |  | Original taxation-year currency evidence: taxationYearId. Link the listed year and retain its actual first-day BoC rate; historical caps do not use the current year rate. |
| `schedule391.donations` | array \| null |  | The corporation's donations for the supported enterprises, one row per donation, including donations whose credits are used or expired. |
| `schedule391.donations[]` | object |  |  |
| `schedule391.donations[].aggregationThresholdConfirmed` | boolean \| null |  | For a donation under $50,000: whether it reaches $50,000 with the corporation's other donations to the same charity within the four-taxation-year period. |
| `schedule391.donations[].amount` | null \| number \| string |  | The donation shown on the official receipt, in Canadian dollars and cents. |
| `schedule391.donations[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule391.donations[].charityId` | null \| string |  | The charity the donation was made to. |
| `schedule391.donations[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule391.donations[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.donations[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule391.donations[].deductibleConfirmed` | boolean \| null |  | Confirms that the donation is deductible as a charitable gift for the year it was made. |
| `schedule391.donations[].donationId` | null \| string |  | A stable identifier for this donation, unique in the list. |
| `schedule391.donations[].enterpriseId` | null \| string |  | The enterprise the donation was used for or designated to. |
| `schedule391.donations[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule391.donations[].originalCurrency` | null \| string |  | The currency of the donation. Only CAD carries forward without a currency review. |
| `schedule391.donations[].paidDate` | null \| string |  | The date of the donation (YYYY-MM-DD). Only a donation made after April 12, 2011 and before April 12, 2017 is eligible. |
| `schedule391.donations[].receiptReference` | null \| string |  | Where the official donation receipt is kept. |
| `schedule391.donations[].sourceBusinessNumber` | null \| string |  | The business number of the corporation that made the donation; it must be this corporation's. |
| `schedule391.donations[].usedOrDesignatedConfirmed` | boolean \| null |  | Confirms that the charity used the donation for, or designated it to, the enterprise. |
| `schedule391.earnedYears` | array \| null |  | Each taxation year in which a credit was earned or claimed to be earned, with the uncompensated services provided to the enterprise that year. |
| `schedule391.earnedYears[]` | object |  |  |
| `schedule391.earnedYears[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule391.earnedYears[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule391.earnedYears[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.earnedYears[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule391.earnedYears[].filedCreditEarned` | null \| number \| string |  | The credit earned for that year as filed, in dollars and cents, when one was filed; it must agree with the credit the donations and services support. |
| `schedule391.earnedYears[].manitobaPermanentEstablishment` | boolean \| null |  | Whether the corporation had a permanent establishment in Manitoba in that year. |
| `schedule391.earnedYears[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule391.earnedYears[].services` | array \| null |  | The services provided to the enterprise in that year, one row per service. |
| `schedule391.earnedYears[].services[]` | object |  |  |
| `schedule391.earnedYears[].services[].approvedReceiptConfirmed` | boolean \| null |  | Confirms that the charity approved the service and issued its receipt. |
| `schedule391.earnedYears[].services[].charityId` | null \| string |  | The charity that carries on the enterprise. |
| `schedule391.earnedYears[].services[].description` | null \| string |  | What the service was. |
| `schedule391.earnedYears[].services[].enterpriseId` | null \| string |  | The enterprise the service was provided to. |
| `schedule391.earnedYears[].services[].providedDate` | null \| string |  | The date the service was provided (YYYY-MM-DD). |
| `schedule391.earnedYears[].services[].receiptNumber` | null \| string |  | The number of the charity's receipt for the service. |
| `schedule391.earnedYears[].services[].receiptReference` | null \| string |  | Where the service receipt is kept. |
| `schedule391.earnedYears[].services[].serviceId` | null \| string |  | A stable identifier for the service. |
| `schedule391.earnedYears[].services[].uncompensatedConfirmed` | boolean \| null |  | Confirms that the service was provided without compensation. |
| `schedule391.earnedYears[].taxableCanadianCorporation` | boolean \| null |  | Whether the corporation was a taxable Canadian corporation in that year. |
| `schedule391.earnedYears[].taxationYearId` | null \| string |  | The taxationYears row in which the credit is earned. |
| `schedule391.enterprises` | array \| null |  | The social enterprises the donations supported, one row per enterprise, with the answers to each eligible social enterprise test. |
| `schedule391.enterprises[]` | object |  |  |
| `schedule391.enterprises[].barrierEmploymentConfirmed` | boolean \| null |  | Confirms that at least 25% of the enterprise's employees face barriers to employment, as the Act describes them. |
| `schedule391.enterprises[].carriedOnInManitoba` | boolean \| null |  | Whether the enterprise is carried on in Manitoba. |
| `schedule391.enterprises[].charityId` | null \| string |  | The charity that carries on the enterprise. |
| `schedule391.enterprises[].commencedDate` | null \| string |  | The date the enterprise began (YYYY-MM-DD); it must be after April 12, 2011. |
| `schedule391.enterprises[].enterpriseId` | null \| string |  | A stable identifier for the social enterprise, unique in the list. |
| `schedule391.enterprises[].evidenceReference` | null \| string |  | The record that supports the enterprise answers. |
| `schedule391.enterprises[].firstEligibleDonationDate` | null \| string |  | The date of the first eligible donation by any corporation for the enterprise (YYYY-MM-DD); a later donation counts only within four years of it. |
| `schedule391.enterprises[].generatesRevenue` | boolean \| null |  | Whether the enterprise generates revenue from selling goods or services. |
| `schedule391.enterprises[].isBusiness` | boolean \| null |  | Whether the enterprise is a business of the charity. |
| `schedule391.enterprises[].name` | null \| string |  | The enterprise's name. |
| `schedule391.enterprises[].relatedBusiness` | boolean \| null |  | When isBusiness is Yes, whether it is a related business of the charity. |
| `schedule391.entityContinuityConfirmed` | boolean \| null |  | Confirms that the listed donations, credits and claims are this corporation's own, with no amalgamation, wind-up or other succession. |
| `schedule391.ledgerCompleteConfirmed` | boolean \| null |  | Confirms that every eligible donation, supported enterprise, credit-earned year and receipted service is listed. |
| `schedule391.openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule391.priorClaims` | array \| null |  | Every Schedule 391 credit deducted in an earlier taxation year, with the credit-earned years each claim used. Send an empty list when none. |
| `schedule391.priorClaimsCompleteConfirmed` | boolean \| null |  | Confirms that priorClaims records every Schedule 391 credit deducted in an earlier taxation year, with any amended claim that replaced it. |
| `schedule391.priorClaims[]` | object |  |  |
| `schedule391.priorClaims[].allocations` | array \| null |  | The credit-earned years whose credits this claim used, with the amount used from each; the amounts must add up to the claim. |
| `schedule391.priorClaims[].allocations[]` | object |  |  |
| `schedule391.priorClaims[].allocations[].creditUsed` | null \| number \| string |  | The credit used from that year, in dollars and cents. |
| `schedule391.priorClaims[].allocations[].originTaxationYearId` | null \| string |  | The credit-earned year whose credit the claim used. |
| `schedule391.priorClaims[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts. Legacy historical records default to CAD; an authenticated balance cannot be relabelled. Source receipts may use arising-date currencyBasis evidence. |
| `schedule391.priorClaims[].claimId` | null \| string |  | A stable identifier for this filed claim, unique in the list. |
| `schedule391.priorClaims[].creditClaimed` | null \| number \| string |  | The credit deducted on Schedule 391 for that year, in Canadian dollars and cents. |
| `schedule391.priorClaims[].currencyBasis` | object |  | Reporting-currency confirmation and arising-date evidence for source amounts. Historical receipts enter their original taxation-year reporting unit before crossing ledger currency boundaries. |
| `schedule391.priorClaims[].currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: amountsInReportingCurrencyConfirmed. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions` | array |  | Retained source currency evidence: conversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[]` | object |  | Retained source currency evidence: conversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: conversions\[\].spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions` | array |  | Retained source currency evidence: historicalConversions. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[]` | object |  | Retained source currency evidence: historicalConversions\[\]. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion` | object |  | Retained source currency evidence: historicalConversions\[\].conversion. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.path. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].filingReference. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: historicalConversions\[\].reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained source currency evidence: reportingCurrency. The engine validates identity, amount, arising date and permitted rate. |
| `schedule391.priorClaims[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Ordered applied boundary receipts, retaining originalAmounts and convertedAmounts. Each intervening reporting-currency change is preserved; an already converted balance is not converted twice. |
| `schedule391.priorClaims[].evidenceReference` | null \| string |  | The filed return or assessment that records this claim. |
| `schedule391.priorClaims[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied historical currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. Uses the last day of the preceding currency period. |
| `schedule391.priorClaims[].originalCurrency` | null \| string |  | The currency of the claimed credit. Only CAD is accepted for a prior claim. |
| `schedule391.priorClaims[].supersedesClaimId` | null \| string |  | The claimId of an earlier claim for the same taxation year that this amended claim replaces; null for an original claim. |
| `schedule391.priorClaims[].taxationYearId` | null \| string |  | The earlier taxation year in which the credit was deducted; one effective claim per year. |
| `schedule391.requestedCredit` | null \| number \| string |  | The credit for line 140, in dollars and cents, when claimAmountMode is selected. It cannot exceed the available credit or the Manitoba tax left after line 609. |
| `schedule391.taxationYears` | array \| null |  | Every taxation year of the corporation in order, from the earliest donation year, each with its exact start and end dates. The four-year donation window and the 10-year carryforward count these years. |
| `schedule391.taxationYearsCompleteConfirmed` | boolean \| null |  | Confirms that taxationYears lists every taxation year of the corporation, short years included, from the earliest donation year up to this return's period. |
| `schedule391.taxationYears[]` | object |  |  |
| `schedule391.taxationYears[].end` | null \| string |  | The last day of the taxation year (YYYY-MM-DD). Each year starts the day after the previous one ends and lasts no more than 371 days. |
| `schedule391.taxationYears[].evidenceReference` | null \| string |  | The filed return or other record that establishes this taxation year's dates. |
| `schedule391.taxationYears[].start` | null \| string |  | The first day of the taxation year (YYYY-MM-DD). |
| `schedule391.taxationYears[].taxationYearId` | null \| string |  | A stable identifier for the taxation year, unique in the list; donations, credit-earned years and prior claims name the year by it. |
| `schedule392` | null \| object |  | Manitoba data processing investment tax credit assets, filing evidence and partnership allocations for tax years ending before 2025. Omit or null for unopened; explicit no-claim is disclosed nil. |
| `schedule392.affiliatedGroupPrincipalActivityDataProcessing` | boolean \| null |  | Whether data processing is the affiliated group's combined principal Manitoba activity; required when affiliated. |
| `schedule392.affiliatedWithManitobaCorporations` | boolean \| null |  | Whether the corporation is affiliated with corporations that have a Manitoba permanent establishment (s.7.19(3)(c)). |
| `schedule392.assets` | array |  | One record per operator building, operator centre property, data processing property, lessor equipment or lessor building, with its dates, costs, undeducted assistance, eligibility facts, information-filing evidence and lessor prior claims. |
| `schedule392.assetsComplete` | boolean \| null |  | Whether the Schedule 392 asset list is complete, so the s.7.19(4.2) minimum can be tested. |
| `schedule392.assets[]` | object |  |  |
| `schedule392.assets[].acquisitionDate` | null \| string |  | Date the property was acquired or became available for use (YYYY-MM-DD). |
| `schedule392.assets[].acquisitionMethod` | null \| string |  | purchase, construction or lease; a lessor asset is purchased or constructed and data processing property is purchased or leased. |
| `schedule392.assets[].acquisitionYearEnd` | null \| string |  | End of the taxation year in which the property was acquired, which sets the information filing deadline. |
| `schedule392.assets[].assetId` | null \| string |  | Stable identifier of this Schedule 392 asset, unique within the list. |
| `schedule392.assets[].assistanceNotDeducted` | null \| number \| string |  | Government assistance received or receivable that is not already deducted from the cost. |
| `schedule392.assets[].capitalCost` | null \| number \| string |  | Capital cost in the year of purchase or construction, before undeducted assistance. |
| `schedule392.assets[].ccaClass` | null \| string |  | Capital cost allowance class of the property. |
| `schedule392.assets[].component` | null \| string |  | Branch: operator_building, operator_centre_property, data_processing_property, lessor_centre_property or lessor_building (MB ITA s.7.19(1)-(1.1)). |
| `schedule392.assets[].costEvidenceReference` | null \| string |  | Reference to the retained evidence; null remains unanswered. |
| `schedule392.assets[].dataProcessingUse` | boolean \| null |  | Whether the property is used in Manitoba for data processing, as its branch requires. |
| `schedule392.assets[].description` | null \| string |  | Description of the building or property. |
| `schedule392.assets[].includedInCentreCredit` | boolean \| null |  | Whether data processing property is included in any corporation's centre credit, which that branch excludes. |
| `schedule392.assets[].informationEvidenceReference` | null \| string |  | Reference to the retained evidence; null remains unanswered. |
| `schedule392.assets[].informationFiledDate` | null \| string |  | Date the prescribed information was filed (s.7.19(6)(a)). |
| `schedule392.assets[].informationFiledWithThisReturn` | boolean \| null |  | Whether the prescribed information is filed with this return. |
| `schedule392.assets[].leaseTermYears` | null \| number \| string |  | Lease term in years for a lessor building; must be positive. |
| `schedule392.assets[].leasedInYear` | boolean \| null |  | Whether a lessor asset was leased in this taxation year. |
| `schedule392.assets[].leasedWithBuildingAssetId` | null \| string |  | assetId of the lessor building leased with this lessor equipment. |
| `schedule392.assets[].leasingCost` | null \| number \| string |  | Leasing cost for this taxation year, for an asset acquired by lease. |
| `schedule392.assets[].lesseeArmsLength` | boolean \| null |  | Whether the lessee deals at arm's length with the lessor. |
| `schedule392.assets[].lesseeDataProcessingUseThroughoutTerm` | boolean \| null |  | Whether the lessee uses the building for data processing throughout the lease. |
| `schedule392.assets[].lesseeEligibleCorporation` | boolean \| null |  | Whether the lessee is an eligible corporation. |
| `schedule392.assets[].lessorClaimsSameProperty` | boolean \| null |  | Whether a lessor claims the credit for the same leased operator property (s.7.19(6.1)). |
| `schedule392.assets[].neverUsedBeforeAcquisition` | boolean \| null |  | Whether the property was not used or acquired for use before the corporation acquired it. |
| `schedule392.assets[].otherManitobaCreditClaimed` | boolean \| null |  | Whether the same cost supports another Manitoba credit (s.7.19(6)(b)). |
| `schedule392.assets[].predecessorAssetId` | null \| string |  | assetId of the replaced property that was entitled to the credit. |
| `schedule392.assets[].predecessorEvidenceReference` | null \| string |  | Reference to the retained evidence; null remains unanswered. |
| `schedule392.assets[].prescribedProperty` | boolean \| null |  | Whether the property is prescribed for its branch (federal Reg 4600(1) or (2), or Class 46/50 for data processing property). |
| `schedule392.assets[].previousCredits` | null \| number \| string |  | Credits previously claimed for this lessor asset, which reduce its lifetime amount. |
| `schedule392.assets[].previousCreditsEvidenceReference` | null \| string |  | Reference to the retained evidence; null remains unanswered. |
| `schedule392.assets[].refurbished` | boolean \| null |  | Whether centre property is refurbished with at least 50% of its cost attributable to unused components. |
| `schedule392.assets[].replacementForEntitledProperty` | boolean \| null |  | Whether operator property acquired after April 11, 2017 replaces property that was itself entitled to the credit (s.7.19(2.1)). |
| `schedule392.assets[].replacementProperty` | boolean \| null |  | Whether data processing property is replacement property, which that branch excludes. |
| `schedule392.assets[].situatedInManitoba` | boolean \| null |  | Whether the property is situated in Manitoba. |
| `schedule392.claimRequested` | boolean \| null |  | Whether Schedule 392 credits are claimed on Schedule 5 line 324. False is a disclosed nil; null holds the claim. A tax year ending on or after 2025-01-01 refuses a claim by repeal. |
| `schedule392.hasManitobaPE` | boolean \| null |  | Whether the corporation has a permanent establishment in Manitoba; reconciled with Schedule 5. Null remains unanswered. |
| `schedule392.partnershipAllocations` | array |  | Partnership credits allocated to the corporation for lines 309, 499 and 621, by reasonable share or the s.7.19(6.4) whole-credit election, with source evidence. |
| `schedule392.partnershipAllocations[]` | object |  |  |
| `schedule392.partnershipAllocations[].allocationId` | null \| string |  | Stable identifier of this partnership allocation. |
| `schedule392.partnershipAllocations[].amount` | null \| number \| string |  | Credit amount allocated to the corporation. |
| `schedule392.partnershipAllocations[].basis` | null \| string |  | reasonable_share, or election_6_4 for the s.7.19(6.4) whole-credit allocation. |
| `schedule392.partnershipAllocations[].component` | null \| string |  | Branch the allocated credit belongs to: operator, data_processing_property or lessor (lines 309, 499 and 621). |
| `schedule392.partnershipAllocations[].electionFiledWithReturn` | boolean \| null |  | Whether the s.7.19(6.4) election is filed with this return. |
| `schedule392.partnershipAllocations[].limitedPartnership` | boolean \| null |  | Whether the partnership is a limited partnership, which the s.7.19(6.4) election requires. |
| `schedule392.partnershipAllocations[].partnershipId` | null \| string |  | Identifier of the allocating partnership. |
| `schedule392.partnershipAllocations[].partnershipYearEnd` | null \| string |  | End of the partnership fiscal period the allocation comes from. |
| `schedule392.partnershipAllocations[].shareEvidenceReference` | null \| string |  | Reference to the retained evidence; null remains unanswered. |
| `schedule392.partnershipAllocations[].sourceCreditEvidenceReference` | null \| string |  | Reference to the retained evidence; null remains unanswered. |
| `schedule392.partnershipAllocations[].writtenConsent` | boolean \| null |  | Whether the partnership gave written consent to the s.7.19(6.4) election. |
| `schedule392.principalActivityDataProcessing` | boolean \| null |  | Whether data processing is the corporation's principal activity in Manitoba (s.7.19(3)(b)); required for the operator credit. |
| `schedule392.taxableCanadianCorporation` | boolean \| null |  | Whether the corporation is a taxable Canadian corporation (MB ITA s.7.19(2), (3)); null remains unanswered. |
| `schedule394` | null \| object |  | Manitoba legacy rental housing construction credit, ITA s.10.6. Omit or null for unopened; explicit no claim is a disclosed nil. |
| `schedule394.actualCreditReceipts` | array \| null |  | Actual receipt ledger reconciled to the existing government-assistance workpaper (ITA s.12(1)(x); face page 1). An earned or carried credit is not a receipt. |
| `schedule394.actualCreditReceipts[]` | object |  |  |
| `schedule394.actualCreditReceipts[].amount` | array \| boolean \| null \| number \| object \| string |  | Actual applied amount in Canadian dollars, equal to its government-assistance workpaper row. |
| `schedule394.actualCreditReceipts[].assetBasisTreatmentConfirmed` | array \| boolean \| null \| number \| object \| string |  | Explicit confirmation that the linked workpaper row reduces the project's capital cost (ITA 13(7.1) or a 13(7.4) election). |
| `schedule394.actualCreditReceipts[].evidenceRef` | array \| boolean \| null \| number \| object \| string |  | Protected reference substantiating the application, such as the notice of assessment. |
| `schedule394.actualCreditReceipts[].expenseReductionApplied` | array \| boolean \| null \| number \| object \| string |  | Retained for the shared receipt shape; an expense-reduction treatment is refused for this credit (ITA 12(2.2)(a)). |
| `schedule394.actualCreditReceipts[].id` | array \| boolean \| null \| number \| object \| string |  | Immutable receipt ID beginning S394:; the government-assistance workpaper row carries the same marker. |
| `schedule394.actualCreditReceipts[].originTaxYearEnd` | array \| boolean \| null \| number \| object \| string |  | Taxation year-end of the Schedule 394 claim that was applied. |
| `schedule394.actualCreditReceipts[].partnershipBusinessNumber` | array \| boolean \| null \| number \| object \| string |  | Retained for the shared receipt shape; a partnership treatment is refused for this credit. |
| `schedule394.actualCreditReceipts[].partnershipIncomeReported` | array \| boolean \| null \| number \| object \| string |  | Retained for the shared receipt shape; a partnership treatment is refused because the project is the corporation's own Class 1 property. |
| `schedule394.actualCreditReceipts[].receiptKind` | array \| boolean \| null \| number \| object \| string |  | Actual tax-payable application, refund or instalment credit; an earned or carried credit is not a receipt. |
| `schedule394.actualCreditReceipts[].receivedDate` | array \| boolean \| null \| number \| object \| string |  | Date the credit was actually applied against tax, within this taxation period. |
| `schedule394.actualCreditReceipts[].treatment` | array \| boolean \| null \| number \| object \| string |  | Reviewed federal treatment: income inclusion in the year received, earlier inclusion, or reduced capital cost of the Class 1 project. Expense-reduction and partnership treatments are refused. |
| `schedule394.actualCreditReceipts[].treatmentEvidenceRef` | array \| boolean \| null \| number \| object \| string |  | Evidence of the reviewed federal treatment. |
| `schedule394.actualCreditReceipts[].treatmentTaxYearEnd` | array \| boolean \| null \| number \| object \| string |  | Taxation year-end establishing the earlier inclusion. |
| `schedule394.actualCreditReceipts[].workpaperId` | array \| boolean \| null \| number \| object \| string |  | Identity of the one linked government-assistance workpaper. |
| `schedule394.actualCreditReceipts[].workpaperRowKey` | array \| boolean \| null \| number \| object \| string |  | Stable identity of the one linked workpaper row with matching receipt marker, amount and book/tax treatment. |
| `schedule394.claim` | boolean \| null |  | Whether Schedule 394 is completed this year; false is a disclosed nil with no project or carried credit. |
| `schedule394.claimMode` | null \| string |  | maximum or specified line 290 claim within the lesser of amount B and Manitoba tax otherwise payable (s.10.6(3), (4)). |
| `schedule394.currencyBasis` | object |  | Reporting-currency reconciliation and retained arising-date conversions. Receipt amounts arise on refund or application; historical balances use openingConversion instead. |
| `schedule394.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: amountsInReportingCurrencyConfirmed. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions` | array |  | Retained currency evidence: conversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[]` | object |  | Retained currency evidence: conversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions` | array |  | Retained currency evidence: historicalConversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[]` | object |  | Retained currency evidence: historicalConversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion` | object |  | Retained currency evidence: historicalConversions\[\].conversion. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].filingReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.openingCredits` | array |  | Unused credit at the end of the previous year by year of origin, amount A. |
| `schedule394.openingCredits[]` | object |  |  |
| `schedule394.openingCredits[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts; legacy records are CAD. Current source amounts have their separate currencyBasis. |
| `schedule394.openingCredits[].chronologyConfirmed` | boolean \| null |  | Retained Schedule 394 openingCredits chronologyConfirmed evidence; null remains unanswered. |
| `schedule394.openingCredits[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Retained applied boundary receipts with originalAmounts and convertedAmounts. Already-converted balances retain their current unit and are not translated twice. |
| `schedule394.openingCredits[].eventDate` | null \| string |  | Retained Schedule 394 openingCredits eventDate evidence; null remains unanswered. |
| `schedule394.openingCredits[].evidenceReference` | null \| string |  | Retained Schedule 394 openingCredits evidenceReference evidence; null remains unanswered. |
| `schedule394.openingCredits[].legalQualificationConfirmed` | boolean \| null |  | Retained Schedule 394 openingCredits legalQualificationConfirmed evidence; null remains unanswered. |
| `schedule394.openingCredits[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. It translates historical balances, not current receipts. |
| `schedule394.openingCredits[].originId` | null \| string |  | Retained Schedule 394 openingCredits originId evidence; null remains unanswered. |
| `schedule394.openingCredits[].originYearEnd` | null \| string |  | Retained Schedule 394 openingCredits originYearEnd evidence; null remains unanswered. |
| `schedule394.openingCredits[].predecessorBusinessNumber` | null \| string |  | Retained Schedule 394 openingCredits predecessorBusinessNumber evidence; null remains unanswered. |
| `schedule394.openingCredits[].remaining` | null \| number \| string |  | Unused credit of this origin as decimal text. |
| `schedule394.openingCredits[].subsequentYearEnds` | array |  | Every taxation-year end after the origin year through the preceding year (transfers: through the predecessor's last year). |
| `schedule394.openingCredits[].subsequentYearEnds[]` | null \| string |  |  |
| `schedule394.openingCredits[].transferType` | null \| string |  | Retained Schedule 394 openingCredits transferType evidence; null remains unanswered. |
| `schedule394.openingReviewed` | boolean \| null |  | Schedule 394 retained openingReviewed evidence; null remains unanswered. |
| `schedule394.projects` | array |  | Certified rental housing projects, Part 1 columns 1 to 8. |
| `schedule394.projects[]` | object |  |  |
| `schedule394.projects[].affordableUnits` | null \| number \| string |  | Affordable units rented to approved tenants or vacant throughout the certified months. |
| `schedule394.projects[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts; legacy records are CAD. Current source amounts have their separate currencyBasis. |
| `schedule394.projects[].assistance` | array |  | Retained Schedule 394 project assistance evidence; null remains unanswered. |
| `schedule394.projects[].assistance[]` | object |  |  |
| `schedule394.projects[].assistance[].alreadyNetted` | boolean \| null |  | Retained Schedule 394 government assistance alreadyNetted evidence; null remains unanswered. |
| `schedule394.projects[].assistance[].amount` | null \| number \| string |  | Retained Schedule 394 government assistance amount evidence; null remains unanswered. |
| `schedule394.projects[].assistance[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts; legacy records are CAD. Current source amounts have their separate currencyBasis. |
| `schedule394.projects[].assistance[].assistanceId` | null \| string |  | Retained Schedule 394 government assistance assistanceId evidence; null remains unanswered. |
| `schedule394.projects[].assistance[].category` | null \| string |  | Retained Schedule 394 government assistance category evidence; null remains unanswered. |
| `schedule394.projects[].assistance[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Retained applied boundary receipts with originalAmounts and convertedAmounts. Already-converted balances retain their current unit and are not translated twice. |
| `schedule394.projects[].assistance[].evidenceReference` | null \| string |  | Retained Schedule 394 government assistance evidenceReference evidence; null remains unanswered. |
| `schedule394.projects[].assistance[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. It translates historical balances, not current receipts. |
| `schedule394.projects[].availabilityBasis` | null \| string |  | Retained Schedule 394 project availabilityBasis evidence; null remains unanswered. |
| `schedule394.projects[].availableForUseDate` | null \| string |  | Retained Schedule 394 project availableForUseDate evidence; null remains unanswered. |
| `schedule394.projects[].buildingPermitDate` | null \| string |  | Retained Schedule 394 project buildingPermitDate evidence; null remains unanswered. |
| `schedule394.projects[].certificateApplicationDate` | null \| string |  | Retained Schedule 394 project certificateApplicationDate evidence; null remains unanswered. |
| `schedule394.projects[].certificateEvidenceReference` | null \| string |  | Retained Schedule 394 project certificateEvidenceReference evidence; null remains unanswered. |
| `schedule394.projects[].certificateNumber` | null \| string |  | Line 200 certificate number as text; leading zeroes are retained. |
| `schedule394.projects[].certificatePeriodEnd` | null \| string |  | Retained Schedule 394 project certificatePeriodEnd evidence; null remains unanswered. |
| `schedule394.projects[].certificatePeriodStart` | null \| string |  | Retained Schedule 394 project certificatePeriodStart evidence; null remains unanswered. |
| `schedule394.projects[].certificateStatus` | null \| string |  | Retained Schedule 394 project certificateStatus evidence; null remains unanswered. |
| `schedule394.projects[].certifiedMonths` | null \| number \| string |  | Line 225 months the minister certified for this taxation year; never implied. |
| `schedule394.projects[].class1Property` | boolean \| null |  | Retained Schedule 394 project class1Property evidence; null remains unanswered. |
| `schedule394.projects[].constructionKind` | null \| string |  | Retained Schedule 394 project constructionKind evidence; null remains unanswered. |
| `schedule394.projects[].costEvidenceReference` | null \| string |  | Retained Schedule 394 project costEvidenceReference evidence; null remains unanswered. |
| `schedule394.projects[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Retained applied boundary receipts with originalAmounts and convertedAmounts. Already-converted balances retain their current unit and are not translated twice. |
| `schedule394.projects[].excludedFacility` | boolean \| null |  | Retained Schedule 394 project excludedFacility evidence; null remains unanswered. |
| `schedule394.projects[].firstReviewApplicationDate` | null \| string |  | Retained Schedule 394 project firstReviewApplicationDate evidence; null remains unanswered. |
| `schedule394.projects[].grossCapitalCost` | null \| number \| string |  | Project capital cost before government assistance; line 210 deducts unnetted assistance. |
| `schedule394.projects[].landOwnedOrLeased` | boolean \| null |  | Retained Schedule 394 project landOwnedOrLeased evidence; null remains unanswered. |
| `schedule394.projects[].manitobaLocation` | boolean \| null |  | Retained Schedule 394 project manitobaLocation evidence; null remains unanswered. |
| `schedule394.projects[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. It translates historical balances, not current receipts. |
| `schedule394.projects[].projectId` | null \| string |  | Retained Schedule 394 project projectId evidence; null remains unanswered. |
| `schedule394.projects[].residentialUnits` | null \| number \| string |  | Line 220 residential units; at least five. |
| `schedule394.qualifyingEntityCategory` | null \| string |  | Schedule 394 retained qualifyingEntityCategory evidence; null remains unanswered. |
| `schedule394.receiptCurrencyBasis` | object |  | Reporting-currency reconciliation and retained arising-date conversions. Receipt amounts arise on refund or application; historical balances use openingConversion instead. |
| `schedule394.receiptCurrencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: amountsInReportingCurrencyConfirmed. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions` | array |  | Retained currency evidence: conversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[]` | object |  | Retained currency evidence: conversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: conversions\[\].spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions` | array |  | Retained currency evidence: historicalConversions. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[]` | object |  | Retained currency evidence: historicalConversions\[\]. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion` | object |  | Retained currency evidence: historicalConversions\[\].conversion. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.aroseDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.denominatorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.evidenceReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.ministerApprovalRef. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.numeratorRate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.originalAmount. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.path. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.rateDate. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.sourceRecordId. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].conversion.spotRateSource. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].filingReference. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: historicalConversions\[\].reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptCurrencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained currency evidence: reportingCurrency. The engine validates currency, amount, source identity, dates and permitted rate before conversion. |
| `schedule394.receiptsReviewed` | array \| boolean \| null \| number \| object \| string |  | Explicit review of Schedule 394 credits actually applied this taxation year, including a known no-receipts answer; required whenever the schedule is completed. |
| `schedule394.requestedClaim` | null \| number \| string |  | Specified line 290 claim in whole cents; null remains unanswered. |
| `schedule394.taxableCanadianCorporation` | boolean \| null |  | Schedule 394 retained taxableCanadianCorporation evidence; null remains unanswered. |
| `schedule394.transfers` | array |  | Credit continued on a qualifying amalgamation or windup, line 280. |
| `schedule394.transfers[]` | object |  |  |
| `schedule394.transfers[].amountsCurrency` | array \| boolean \| null \| number \| object \| string |  | Currency of the supplied historical monetary amounts; legacy records are CAD. Current source amounts have their separate currencyBasis. |
| `schedule394.transfers[].chronologyConfirmed` | boolean \| null |  | Retained Schedule 394 transfers chronologyConfirmed evidence; null remains unanswered. |
| `schedule394.transfers[].currencyConversionHistory` | array \| boolean \| null \| number \| object \| string |  | Retained applied boundary receipts with originalAmounts and convertedAmounts. Already-converted balances retain their current unit and are not translated twice. |
| `schedule394.transfers[].eventDate` | null \| string |  | Retained Schedule 394 transfers eventDate evidence; null remains unanswered. |
| `schedule394.transfers[].evidenceReference` | null \| string |  | Retained Schedule 394 transfers evidenceReference evidence; null remains unanswered. |
| `schedule394.transfers[].legalQualificationConfirmed` | boolean \| null |  | Retained Schedule 394 transfers legalQualificationConfirmed evidence; null remains unanswered. |
| `schedule394.transfers[].openingConversion` | array \| boolean \| null \| number \| object \| string |  | Applied currency-boundary receipt: sourceCurrency, targetCurrency, boundary, rate, spotRateSource, statutoryDate, quotedDate, conversionAppliedAt, receiptValid and evidenceReference. It translates historical balances, not current receipts. |
| `schedule394.transfers[].originId` | null \| string |  | Retained Schedule 394 transfers originId evidence; null remains unanswered. |
| `schedule394.transfers[].originYearEnd` | null \| string |  | Retained Schedule 394 transfers originYearEnd evidence; null remains unanswered. |
| `schedule394.transfers[].predecessorBusinessNumber` | null \| string |  | Retained Schedule 394 transfers predecessorBusinessNumber evidence; null remains unanswered. |
| `schedule394.transfers[].remaining` | null \| number \| string |  | Unused credit of this origin as decimal text. |
| `schedule394.transfers[].subsequentYearEnds` | array |  | Every taxation-year end after the origin year through the preceding year (transfers: through the predecessor's last year). |
| `schedule394.transfers[].subsequentYearEnds[]` | null \| string |  |  |
| `schedule394.transfers[].transferType` | null \| string |  | Retained Schedule 394 transfers transferType evidence; null remains unanswered. |
| `schedule3CoverageReview` | array \| boolean \| null \| number \| object \| string |  | The reviewed Schedule 3 coverage packet, for callers with no persisted dividends workpaper. It carries schemaVersion 1, reviewed, reviewedAt, Part IV loss-claim and Part 4 exclusion conclusions/amounts, plus the ITA 137(5.1) payer-credit-union election answer and allocations used for the paragraph 137(5.2)(a) section 112 grind and paragraph 137(5.2)(b) income inclusion. If a dividends workpaper already holds a packet, this copy must be identical to it or the request is rejected. |
| `schedule4` | array \| boolean \| null \| number \| object \| string |  | The target's own input blob. Omit it or send null when the form was not opened: the batch asks for it to decide whether you supplied any input for the form before it applies prior-filed continuity, and an unopened form is never read as a form full of zeros. |
| `schedule400` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule426` | null \| object |  | Former British Columbia manufacturing and processing tax credit ledger (T2 SCH 426 E (02), BC Income Tax Act Part 7, repealed April 1, 2026): the balance carried from the previous year, the BC qualified property acquired from April 1, 2000 to July 30, 2001, actual repayments of assistance that reduced its cost, partnership allocations, amalgamation transfers, earlier deductions, carryback requests and the corporation's taxation years. Omit it or send null when the form was not opened. A repayment paid after its property's s.110(2) reporting deadline adds nothing unless an assessment accepted it, and a taxation year ending on or after April 1, 2026 has no credit. No supported Schedule 5 prints line 660, so a claim that stands reduces line 200 and is requested by letter after assessment; nothing reduces British Columbia tax on this return. |
| `schedule426.carrybacks` | array \| null |  | Part 3 requests to apply this year's credit to one of the three preceding taxation years. Within the credit left after line 160 a request reduces line 200 and is made by letter after assessment with the line 160 claim. Send an empty list when there is none. |
| `schedule426.carrybacks[]` | object |  |  |
| `schedule426.carrybacks[].amount` | null \| number \| string |  | The credit to be applied to that year, in dollars and cents. |
| `schedule426.carrybacks[].targetTaxationYearEnd` | null \| string |  | The end of one of the three preceding taxation years the credit is to be applied to (lines 901 to 903). |
| `schedule426.currencyHistory` | null \| object |  | The corporation's ITA s.261 functional-currency history, or null if it never elected. Each ledger amount stays in the currency it was determined in: Canadian dollars for a Canadian currency or reversionary year, the elected currency for a functional currency year (an amount that arose in another currency at its s.261(5)(c) conversion). The history places every amount and gives the Bank of Canada rates that convert it to this return's currency (s.261(7), (12), (15)). A nil worksheet needs no history; a credit on a functional-currency return needs it. |
| `schedule426.currencyHistory.electedCurrency` | null \| string |  | The elected functional currency (USD, EUR, GBP, JPY or AUD), which is this return's reporting currency in a functional currency year. |
| `schedule426.currencyHistory.evidenceReference` | null \| string |  | Where the election, any revocation and the rates are documented. |
| `schedule426.currencyHistory.lastCanadianCurrencyDayRate` | null \| number \| string |  | The Bank of Canada rate, in Canadian dollars per unit of the elected currency, for the last day of the last Canadian currency year. Canadian-currency-year amounts convert at it (s.261(7)); needed only when a converted amount reaches the result. |
| `schedule426.currencyHistory.lastCanadianCurrencyDayRateDate` | null \| string |  | The day the Bank of Canada quoted that rate: the last day itself, or the closest preceding day it quoted, at most seven days earlier. |
| `schedule426.currencyHistory.lastCanadianCurrencyDayRateSource` | null \| string |  | boc_valet or boc_archival_manual; s.261(7) admits only the Bank of Canada rate. |
| `schedule426.currencyHistory.lastCanadianCurrencyYearEnd` | null \| string |  | The end of the last Canadian currency year, the taxation year before the first functional currency year (s.261(1)). |
| `schedule426.currencyHistory.lastFunctionalCurrencyDayRate` | null \| number \| string |  | The Bank of Canada rate, in Canadian dollars per unit of the elected currency, for the last day of the last functional currency year. A reversionary year's functional-currency amounts convert at it (s.261(12)). |
| `schedule426.currencyHistory.lastFunctionalCurrencyDayRateDate` | null \| string |  | The day the Bank of Canada quoted that rate: the last day itself, or the closest preceding day it quoted, at most seven days earlier. |
| `schedule426.currencyHistory.lastFunctionalCurrencyDayRateSource` | null \| string |  | boc_valet or boc_archival_manual; s.261(12) admits only the Bank of Canada rate. |
| `schedule426.currencyHistory.lastFunctionalCurrencyYearEnd` | null \| string |  | After a revocation (s.261(4)), the end of the last functional currency year; null while the election stands. |
| `schedule426.excludedCorporation` | boolean \| null |  | Whether the corporation is excluded from being a qualifying corporation this year under former s.104(1): exempt under BC s.27, controlled by exempt persons, an employee or small business venture capital corporation, or a prescribed corporation. Needed only for a claim on a positive candidate. |
| `schedule426.openingBalance` | null \| number \| string |  | The credit at the end of the previous taxation year (the prior line 200), in dollars and cents of that year's currency, or 0 when none. It must equal, to the cent, the remaining credit the repayment, allocation, transfer and deduction ledger gives; an imported balance alone proves no credit. |
| `schedule426.partnershipAllocations` | array \| null |  | Each s.106 allocation for a partnership fiscal period: the partnership's traced repayment, the corporation's reasonable share and limited-partner status. Send an empty list when there is none. |
| `schedule426.partnershipAllocations[]` | object |  |  |
| `schedule426.partnershipAllocations[].allocationId` | null \| string |  | A stable identifier for the allocation. |
| `schedule426.partnershipAllocations[].atRiskAmount` | null \| number \| string |  | A limited partner's at-risk amount in respect of the partnership at the end of the fiscal period (ITA s.96(2.2), s.127(8.1)(b)), in dollars and cents. |
| `schedule426.partnershipAllocations[].atRiskAmountWhenLastBecameLimitedPartner` | null \| number \| string |  | The corporation's at-risk amount at the time it last became a limited partner of the partnership (ITA s.127(8.2)(a)(i)). |
| `schedule426.partnershipAllocations[].cleanEconomyAllocations` | null \| number \| string |  | Amounts a clean economy allocation provision adds to the corporation's clean economy tax credit at the end of the fiscal period; s.127(8.1)(b) subtracts them from the at-risk amount. Enter 0 when none. |
| `schedule426.partnershipAllocations[].contributionsSinceLastBecameLimitedPartner` | null \| number \| string |  | Contributions described in ITA s.53(1)(e)(iv) made since then and before the end of the fiscal period that increased the at-risk amount (s.127(8.2)(a)(ii)). |
| `schedule426.partnershipAllocations[].corporateSharePercent` | null \| number \| string |  | The corporation's reasonable share of the partnership amount, as a percentage from 0 to 100 (s.106(2)). |
| `schedule426.partnershipAllocations[].determinationReference` | null \| string |  | The assessment or determination that accepted the report, when reportingCondition is determination_accepted. |
| `schedule426.partnershipAllocations[].distributionsSinceLastBecameLimitedPartner` | null \| number \| string |  | Amounts received since then and before the end of the fiscal period as distributions of partnership profits or capital (s.127(8.2)(a)(iv)). |
| `schedule426.partnershipAllocations[].earlierExpenditureBases` | null \| number \| string |  | The partnership expenditures already used in respect of the corporation under s.127(8.1)(a) for earlier periods (s.127(8.2)(a)(v)). Enter 0 when none. |
| `schedule426.partnershipAllocations[].evidenceReference` | null \| string |  | Where the allocation is documented, such as the partnership's information return. |
| `schedule426.partnershipAllocations[].incomeSharesSinceLastBecameLimitedPartner` | null \| number \| string |  | The corporation's shares of partnership income under ITA s.96(1)(f) for this and earlier fiscal periods ending since then (s.127(8.2)(a)(iii)(A)). |
| `schedule426.partnershipAllocations[].limitedPartner` | boolean \| null |  | Whether the corporation is a limited partner at the end of the partnership's fiscal period. A limited partner's counted share cannot exceed 3% of its expenditure base or its at-risk amount (s.106(3), ITA s.127(8.1), (8.2)), so the at-risk fields below are required for it. |
| `schedule426.partnershipAllocations[].limitedPartnersParagraphATotal` | null \| number \| string |  | The total of every limited partner's s.127(8.2)(a) amount at the end of the fiscal period, the corporation's included, from the partnership (s.127(8.2)(b)(ii)). |
| `schedule426.partnershipAllocations[].lossSharesSinceLastBecameLimitedPartner` | null \| number \| string |  | The corporation's shares of partnership losses under ITA s.96(1)(g) for the same periods (s.127(8.2)(a)(iii)(B)). |
| `schedule426.partnershipAllocations[].partnershipFiscalPeriodEnd` | null \| string |  | The end of the partnership fiscal period; the allocation belongs to the corporation's taxation year in which it ends (s.106(1)). A period ending before April 1, 2026 counts for a taxation year ending before that day; one ending on or after it adds nothing. |
| `schedule426.partnershipAllocations[].partnershipIdentifier` | null \| string |  | The partnership's account number or other identifier. |
| `schedule426.partnershipAllocations[].partnershipName` | null \| string |  | The partnership's name. |
| `schedule426.partnershipAllocations[].partnershipRepaymentTraced` | null \| number \| string |  | The partnership's own repayment that repays assistance that reduced its qualified property's cost, in dollars and cents; the partnership amount is 3% of it. |
| `schedule426.partnershipAllocations[].reportingCondition` | null \| string |  | determination_accepted, original_report_only or no_timely_report, as for a repayment (s.110(2)); the partnership computes its own repayment amount under the same deadline (s.106(1)), so null is enough for a fiscal period ending after February 10, 2005. |
| `schedule426.partnershipAllocations[].section17DeductionInAllocationYear` | boolean \| null |  | Whether a BC s.17 deduction was made for the corporate year of the allocation (s.109). |
| `schedule426.priorDeductions` | array \| null |  | Each amount deducted under s.105(1) for an earlier year, with the repayment, allocation, transfer or property it used. This year's own credit applied to an earlier year is a Part 3 carryback, not an earlier deduction, and is refused here. Send an empty list when there is none. |
| `schedule426.priorDeductions[]` | object |  |  |
| `schedule426.priorDeductions[].amount` | null \| number \| string |  | The amount deducted, in dollars and cents. |
| `schedule426.priorDeductions[].appliedTaxationYearEnd` | null \| string |  | The end of the earlier taxation year whose BC tax the deduction reduced. |
| `schedule426.priorDeductions[].deductionId` | null \| string |  | A stable identifier for the earlier deduction. |
| `schedule426.priorDeductions[].evidenceReference` | null \| string |  | Where the deduction is documented, such as the notice of assessment. |
| `schedule426.priorDeductions[].originId` | null \| string |  | The repayment, allocation, transfer or property whose credit the deduction used. |
| `schedule426.priorDeductions[].recordedTaxationYearEnd` | null \| string |  | The end of the taxation year whose Schedule 426 recorded the deduction, when that is not the year it reduced (a Part 3 carryback); the amount is in that year's currency. Null for an ordinary deduction. |
| `schedule426.properties` | array \| null |  | Each BC qualified property the credits relate to, with its acquisition and available-for-use facts, its capital cost and the assistance that reduced it, and the date its prescribed report was filed. Send an empty list when there is none. |
| `schedule426.properties[]` | object |  |  |
| `schedule426.properties[].acquisitionDate` | null \| string |  | The date the corporation acquired the property. Only an acquisition after March 31, 2000 and before July 31, 2001 qualifies (s.104(1)). |
| `schedule426.properties[].assistanceReducingCost` | null \| number \| string |  | Government and non-government assistance received, receivable or expected when the acquisition-year return was filed, which reduced the capital cost (s.105(3)(b)). |
| `schedule426.properties[].availableForUseBasis` | null \| string |  | The available-for-use event the date records, such as first use for the purpose of earning income. |
| `schedule426.properties[].availableForUseDate` | null \| string |  | The earliest ITA s.13(27) or (28) available-for-use time other than the 357-day long stop, or null when none came first. A later date never moves the long stop (s.104(2)). |
| `schedule426.properties[].capitalCost` | null \| number \| string |  | The capital cost without ITA s.21 additions and without s.13(7.1) or (7.4), in dollars and cents (s.105(3)(a), (b)). |
| `schedule426.properties[].category` | null \| string |  | prescribed_building or prescribed_machinery_equipment, as prescribed for the ITA s.127(9) qualified property definition. |
| `schedule426.properties[].ccaClass` | null \| string |  | Column 101, the property's capital cost allowance class. |
| `schedule426.properties[].description` | null \| string |  | A description of the BC qualified property. |
| `schedule426.properties[].evidenceReference` | null \| string |  | Where the property facts are documented, such as the acquisition-year Schedule 426. |
| `schedule426.properties[].excludedProperty` | boolean \| null |  | Whether the property is excluded property, acquired in a year in which any income was exempt (s.104(1)). |
| `schedule426.properties[].intendedUse` | null \| string |  | bc_manufacturing_processing for use in British Columbia primarily to manufacture or process goods for sale or lease, or lease_to_related_qualifying_corporation (s.104(1)(c)). |
| `schedule426.properties[].nonArmsLengthFairMarketValue` | null \| number \| string |  | The fair market value when the property was bought from a non-arm's-length person for more than it (s.105(3)(c)); null otherwise. |
| `schedule426.properties[].notPreviouslyUsed` | boolean \| null |  | Whether the property was not used, or acquired for use or lease, before the corporation acquired it (s.104(1)(b)). |
| `schedule426.properties[].originalApplicationFiledDate` | null \| string |  | The date the prescribed form reporting the property was filed; s.110(2) requires it within 18 months after the acquisition year. |
| `schedule426.properties[].propertyId` | null \| string |  | A stable identifier for the property, kept from year to year. |
| `schedule426.properties[].section17DeductionInDeemedYear` | boolean \| null |  | Whether a section 17 deduction was made for the taxation year in which s.104(2) deems the property acquired (s.109). Asked only while the property's credit year is within the ten-year window. |
| `schedule426.renouncedAmount` | null \| number \| string |  | Line 150, the credit renounced under s.107. Only the credit for property acquired this year can be renounced, which no supported year has, so a positive amount is refused. |
| `schedule426.repayments` | array \| null |  | Each actual repayment of assistance, with the property it relates to, the part that repays assistance that reduced the property's cost and the s.110(2) reporting fact. Send an empty list when there is none. |
| `schedule426.repayments[]` | object |  |  |
| `schedule426.repayments[].actualPayment` | boolean \| null |  | Whether money was actually repaid. A liability or a cancelled promise is not a repayment. |
| `schedule426.repayments[].amountPaid` | null \| number \| string |  | The amount paid, in dollars and cents. |
| `schedule426.repayments[].amountTracedToCostReducingAssistance` | null \| number \| string |  | The part of the payment that can reasonably be considered to repay assistance that reduced the property's s.105(3)(b) capital cost (line 100). |
| `schedule426.repayments[].determinationReference` | null \| string |  | The assessment or determination that accepted the report, when reportingCondition is determination_accepted. |
| `schedule426.repayments[].evidenceReference` | null \| string |  | Where the repayment is documented, such as the payment record and the assistance agreement. |
| `schedule426.repayments[].paymentDate` | null \| string |  | The date the repayment was actually made. One made before April 1, 2026 counts for a taxation year ending before that day even when its own year ends later; one made on or after it adds nothing. |
| `schedule426.repayments[].propertyId` | null \| string |  | The property whose assistance was repaid. |
| `schedule426.repayments[].repaymentId` | null \| string |  | A stable identifier for the repayment. |
| `schedule426.repayments[].reportingCondition` | null \| string |  | determination_accepted when an assessment or determination accepted the s.110(2) report for this amount, original_report_only when only the property was reported on time, or no_timely_report. Only an accepted report admits a repayment paid after the 18-month deadline of its property's acquisition year, so null is enough for such a repayment, and for one outside this year, the ten before it and the three after it; the answer is required only for one paid inside the deadline. |
| `schedule426.repayments[].section17DeductionInPaymentYear` | boolean \| null |  | Whether a BC s.17 deduction was made for the year of the payment, which excludes it (s.109). |
| `schedule426.requestedDeduction` | null \| number \| string |  | Line 160, the credit claimed this year, required when there is a positive candidate. Send 0 to carry the balance. The candidate is this year's and the preceding years' credit up to BC tax; a following year's credit reaches this year only as that year's carryback. A claim up to the candidate reduces line 200 and is requested by letter to the tax centre after assessment, because Schedule 5 has no line 660; a claim above it, or any claim in a taxation year ending on or after April 1, 2026, is refused. |
| `schedule426.section17DeductionThisYear` | boolean \| null |  | Whether a BC s.17 small business tax holiday deduction was made for this year (s.109). Section 17 is limited to a corporation incorporated before April 1, 2001 for the year it began business or the next, so a supported year normally leaves this unanswered. |
| `schedule426.taxationYears` | array \| null |  | The corporation's actual taxation years other than this one, short years included, without gaps, from the year of each credit to this one. They count the ten preceding and three following years; property and repayment years outside them rely on the 53-week bound. |
| `schedule426.taxationYears[]` | object |  |  |
| `schedule426.taxationYears[].end` | null \| string |  | The end date of the taxation year. |
| `schedule426.taxationYears[].evidenceReference` | null \| string |  | Where the year is documented, such as that year's filed return. |
| `schedule426.taxationYears[].start` | null \| string |  | The start date of the taxation year. |
| `schedule426.transfers` | array \| null |  | Each credit vintage continued from a predecessor or wound-up subsidiary under s.108, with its origin year. Send an empty list when there is none. |
| `schedule426.transfers[]` | object |  |  |
| `schedule426.transfers[].amount` | null \| number \| string |  | The credit transferred, in dollars and cents. |
| `schedule426.transfers[].determinationReference` | null \| string |  | The assessment or determination that accepted the predecessor's report, when reportingCondition is determination_accepted. |
| `schedule426.transfers[].eventDate` | null \| string |  | The date of the amalgamation or winding-up; line 110 reports it in that year. A transfer on or after April 1, 2026 carries nothing. |
| `schedule426.transfers[].eventType` | null \| string |  | amalgamation for ITA s.87(1), or winding_up for s.88(1). |
| `schedule426.transfers[].evidenceReference` | null \| string |  | Where the transfer is documented, such as the predecessor's filed Schedule 426. |
| `schedule426.transfers[].federalProvisionApplies` | boolean \| null |  | Confirms that ITA s.87(1) or s.88(1) applied, which s.108 requires. |
| `schedule426.transfers[].originTaxationYearEnd` | null \| string |  | The end of the taxation year the transferred credit arose in; its ten-year window keeps counting from there. |
| `schedule426.transfers[].reportingCondition` | null \| string |  | determination_accepted, original_report_only or no_timely_report for the predecessor's s.110(2) report of this credit, which s.108 makes the corporation's own. A credit whose origin year ended after February 10, 2005 counts only if an assessment accepted its report, so null is enough for one that was not, and for an origin year outside this year, the ten before it and the three after it. |
| `schedule426.transfers[].transferId` | null \| string |  | A stable identifier for the transferred credit vintage. |
| `schedule426.transfers[].transferorBusinessNumber` | null \| string |  | The nine-digit business number of that corporation. |
| `schedule426.transfers[].transferorName` | null \| string |  | The name of the predecessor or subsidiary. |
| `schedule428` | null \| object |  | British Columbia Schedule 428 training tax credit inputs (T2 SCH 428 E (24)): the employer answers, each apprentice with the Training Tax Credits Regulation program, the wage amounts payable and the assistance for them, completions, related-employer and partnership shares, completions already claimed and the filing date. Omit it or send null when the form was not opened; claim=false is a nil. Amount N is refunded at Schedule 5 line 679. |
| `schedule428.actualCreditReceipts` | array |  | Earlier training credits actually refunded, applied against tax payable or credited to instalments in this taxation year, each reconciled to one government-assistance workpaper row; a calculated entitlement is not a receipt. |
| `schedule428.actualCreditReceipts[]` | object |  |  |
| `schedule428.actualCreditReceipts[].amount` | null \| number \| string |  | Amount actually received or applied. It must reconcile to amountCY on the linked government-assistance workpaper row. |
| `schedule428.actualCreditReceipts[].assetBasisTreatmentConfirmed` | boolean \| null |  | Confirmation that a receipt treated as reducing an asset's cost was applied to that basis. |
| `schedule428.actualCreditReceipts[].evidenceRef` | null \| string |  | Reference to the source proving this dated receipt or tax-account application. |
| `schedule428.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Confirmation that the reviewed expense reduction was applied; checked when treatment is expense_reduction. |
| `schedule428.actualCreditReceipts[].id` | null \| string |  | Stable receipt identifier beginning with the schedule's marker (S428: or S430:), matching provincialCreditReceiptId on the linked workpaper row. Each receipt may be linked only once. |
| `schedule428.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Taxation-year end of the credit that produced this receipt. |
| `schedule428.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Nine-digit business-number root of the partnership, for partnership_income treatment. |
| `schedule428.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Confirmation that the receipt was included in the partnership income reported to the corporation; checked for partnership_income treatment. |
| `schedule428.actualCreditReceipts[].receiptKind` | null \| string |  | How the credit was received: refund, tax_payable_application or instalment_credit. |
| `schedule428.actualCreditReceipts[].receivedDate` | null \| string |  | Date the credit was refunded, applied against tax payable or credited to instalments, inside the current taxation year. |
| `schedule428.actualCreditReceipts[].treatment` | null \| string |  | Reviewed federal treatment of the receipt: income_inclusion, previous_tax_inclusion, expense_reduction or partnership_income. It must agree with the linked workpaper's book and tax treatment. |
| `schedule428.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Reference supporting a reviewed exception to current income inclusion. |
| `schedule428.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Taxation-year end supporting the reviewed treatment. |
| `schedule428.actualCreditReceipts[].workpaperId` | null \| string |  | Identifier of the government-assistance workpaper containing the row that accounts for the receipt. |
| `schedule428.actualCreditReceipts[].workpaperRowKey` | null \| string |  | The linked government-assistance row's \_rowKey. |
| `schedule428.assistance` | array \| null |  | Government and non-government assistance related to the wages, received, receivable or expected when the return is filed. Send an empty list when there is none. |
| `schedule428.assistanceLedgerComplete` | boolean \| null |  | Confirms that assistance lists every government and non-government amount related to the wages, including an empty list when there is none. Positive wages without it hold the schedule. |
| `schedule428.assistance[]` | object |  |  |
| `schedule428.assistance[].alreadyNetted` | boolean \| null |  | Whether payroll already deducted the assistance from the wage amount; yes needs grossBeforeNetting to prove it. |
| `schedule428.assistance[].amount` | null \| number \| string |  | The assistance amount. |
| `schedule428.assistance[].assistanceId` | null \| string |  | A stable identifier for the assistance, unique in the list. |
| `schedule428.assistance[].category` | null \| string |  | government, non_government, or one of the amounts that is never designated assistance: bc_training_credit, bc_shipbuilding_credit or federal_apprenticeship_itc. |
| `schedule428.assistance[].evidenceReference` | null \| string |  | The grant letter or statement that supports the assistance. |
| `schedule428.assistance[].program` | null \| string |  | The program or payer that granted the assistance. |
| `schedule428.assistance[].repaidAmount` | null \| number \| string |  | Any part the corporation is legally required to repay. |
| `schedule428.assistance[].sliceId` | null \| string |  | The wage amount the assistance relates to. |
| `schedule428.assistance[].statusAtFiling` | null \| string |  | The status when the return is filed: received, receivable, expected or not_expected. |
| `schedule428.claim` | boolean \| null |  | Whether the corporation claims the credit this taxation year. No is a nil and carries the apprentices; no answer holds the schedule. |
| `schedule428.claimFiledDate` | null \| string |  | The date this schedule was filed, when it has been; the credit needs the schedule filed within 36 months after the year end (BC ITA s.128(2)). |
| `schedule428.claimFilingEvidenceReference` | null \| string |  | The filing confirmation for that date. |
| `schedule428.completions` | array \| null |  | Each level an apprentice completed during the year, one row per completion. |
| `schedule428.completions[]` | object |  |  |
| `schedule428.completions[].certificateKind` | null \| string |  | For a graduation requirement, the credential: certificate_of_qualification, certificate_of_apprenticeship or red_seal_endorsement. |
| `schedule428.completions[].certificateOfQualificationGranted` | boolean \| null |  | Whether a Certificate of Qualification is granted for the program. A Certificate of Apprenticeship graduates the apprentice only where none is (B.C. Reg. 243/2007 s.1 "graduate"); read when the program catalogue does not settle it, and no answer holds the completion. |
| `schedule428.completions[].challengeExam` | boolean \| null |  | Whether the credential was earned by challenge exam, which gives the employer no completion credit. |
| `schedule428.completions[].completionDate` | null \| string |  | The date the level's requirement was met, inside this taxation year. |
| `schedule428.completions[].employeeKey` | null \| string |  | The apprentice who completed the level. |
| `schedule428.completions[].eventId` | null \| string |  | A stable identifier for the completion, unique in the list. |
| `schedule428.completions[].evidenceReference` | null \| string |  | The SkilledTradesBC transcript or certificate that proves the completion. |
| `schedule428.completions[].level` | null \| number \| string |  | The level completed: 3, 4, or 5 for the hydraulic service mechanic program. |
| `schedule428.completions[].program` | null \| object |  | The eligible training program: schedule 2 and the item of the Training Tax Credits Regulation in force on the completion date. |
| `schedule428.completions[].program.accreditationEvidenceReference` | null \| string |  | Not used for a completion; Schedule 2 programs are prescribed. |
| `schedule428.completions[].program.item` | null \| string |  | The item number of the program in Schedule 2 on the completion date. |
| `schedule428.completions[].program.name` | null \| string |  | The program name as printed, kept for review; the item identifies the program. |
| `schedule428.completions[].program.ruleSnapshotDate` | null \| string |  | The date of the regulation text the program was selected from. |
| `schedule428.completions[].program.schedule` | null \| string |  | 2, the eligible training programs of the Training Tax Credits Regulation. |
| `schedule428.completions[].technicalLevelCompleted` | boolean \| null |  | Confirms the technical training level was completed, for a requirement stated as a level. |
| `schedule428.completions[].wagePeriodEnd` | null \| string |  | The last day of that period, in the month of the completion. |
| `schedule428.completions[].wagePeriodStart` | null \| string |  | The first day of the up-to-12-month period whose wages the completion credit uses. |
| `schedule428.completions[].workBasedHours` | null \| number \| string |  | The work-based training hours completed, for a requirement stated in hours. |
| `schedule428.controlledByExemptPersons` | boolean \| null |  | Whether the corporation is controlled by persons exempt from tax. Yes means it is not an eligible employer (BC ITA s.116). |
| `schedule428.currencyBasis` | object |  | ITA s.261(2)(b) and (5)(c), applied by BC ITA s.1(6.1)-(6.2): confirmation that the schedule's source amounts are in the return's reporting currency, with a conversion for each amount entered in another currency at the rate for the day it arose. Required on a functional-currency return; omit it when every amount is in Canadian dollars on a Canadian-dollar return. |
| `schedule428.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | True once every source amount not listed under conversions is confirmed to be in the reporting currency. |
| `schedule428.currencyBasis.conversions` | array |  | One record per source amount entered in another currency; the schedule keeps the original amount. |
| `schedule428.currencyBasis.conversions[]` | object |  |  |
| `schedule428.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Day the amount arose: a wage amount's payable date, a partnership credit's fiscal-period end or a receipt's date. |
| `schedule428.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Canadian dollars per unit of the reporting currency (1 for CAD). |
| `schedule428.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Reference to the arising-day and exchange-rate evidence. |
| `schedule428.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Reference to the Minister's acceptance of an alternative rate, when one is used. |
| `schedule428.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Canadian dollars per unit of the source currency (1 for CAD). |
| `schedule428.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | The amount as entered; it must equal the schedule's current amount. |
| `schedule428.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | The converted amount's path in this schedule, such as wageSlices.0.grossSalaryWages. |
| `schedule428.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Day of the exchange-rate observation: the arising day or the closest preceding published day. |
| `schedule428.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Three-letter code of the currency the amount was entered in. |
| `schedule428.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | The source identity the conversion was recorded against; a changed source record invalidates it. |
| `schedule428.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | boc_valet, boc_archival_manual or minister_alt_rate (a rate the Minister accepts, ITA s.261(1)). |
| `schedule428.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Reference to the currency reconciliation. |
| `schedule428.currencyBasis.historicalConversions` | array |  | Conversions retained from a prior filed claim; they do not compute this year's amounts. |
| `schedule428.currencyBasis.historicalConversions[]` | object |  |  |
| `schedule428.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule428.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule428.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule428.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule428.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule428.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule428.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule428.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule428.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule428.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule428.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule428.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule428.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule428.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule428.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | The reporting currency the amounts are confirmed in; it must match the return's declared currency. |
| `schedule428.employees` | array \| null |  | One row per apprentice employed in a British Columbia position during the year. |
| `schedule428.employees[]` | object |  |  |
| `schedule428.employees[].agreementDate` | null \| string |  | The date the apprenticeship agreement was registered with SkilledTradesBC. The basic credit covers wages payable in the 24 months that follow it. |
| `schedule428.employees[].basicProgram` | null \| object |  | The eligible recognized program for the basic credit: schedule 1 and the item of the Training Tax Credits Regulation, or for Schedule 430 an accredited program. |
| `schedule428.employees[].basicProgram.accreditationEvidenceReference` | null \| string |  | The SkilledTradesBC accreditation evidence for an accredited program. |
| `schedule428.employees[].basicProgram.item` | null \| string |  | The item number of the program in the regulation's schedule, as in force for the wage dates; names are not identifiers. |
| `schedule428.employees[].basicProgram.name` | null \| string |  | The accredited program's name, required when the schedule is accredited. |
| `schedule428.employees[].basicProgram.ruleSnapshotDate` | null \| string |  | The date of the regulation text the program was selected from, kept with the selection. |
| `schedule428.employees[].basicProgram.schedule` | null \| string |  | 1 for a program listed in Schedule 1 of the Training Tax Credits Regulation, or accredited (Schedule 430 only). |
| `schedule428.employees[].bcPositionConfirmed` | boolean \| null |  | Confirms the apprentice's position is in a business carried on in British Columbia and relates to the program. No gives no credit for the apprentice. |
| `schedule428.employees[].displayIdentifier` | null \| string |  | Column A: the SkilledTradesBC identification number, or the employee's social insurance number or name when there is none. |
| `schedule428.employees[].displayIdentifierKind` | null \| string |  | What column A carries: skilledtradesbc_id, sin (nine digits) or name. |
| `schedule428.employees[].employeeKey` | null \| string |  | A stable key for the apprentice, unique in the list; wage amounts, completions and allocations name it. |
| `schedule428.employees[].employmentEnd` | null \| string |  | The last day of this employment, when it ended. An apprentice who left keeps a completion proved for wages paid before. |
| `schedule428.employees[].employmentStart` | null \| string |  | The first day of this employment, when known. |
| `schedule428.employees[].enhancementEvidenceReference` | null \| string |  | The evidence for an enhanced status, such as the certificate of Indian status or the approved disability tax credit certificate. |
| `schedule428.employees[].enhancementStatus` | null \| string |  | Whether the apprentice is registered under the Indian Act or entitled to the disability deduction for the year: indian_act_registered, disability_deduction_entitled, both or not_enhanced. No answer holds the apprentice's rows. |
| `schedule428.employees[].federalApprenticeshipCredit` | null \| string |  | For a Red Seal apprentice, whether the federal apprenticeship job creation credit is claimed: claimed or not_claimed. Claimed needs the Schedule 31 link. |
| `schedule428.employees[].federalSingleClaimerDesignated` | boolean \| null |  | For an apprentice a related employer also employs, whether the agreement designates this corporation to claim the federal credit (ITA s.127(11.4)). No makes the 5.5% base nil. |
| `schedule428.employees[].federalSourceEmploymentId` | null \| string |  | The Schedule 31 Part 19 row this apprentice's federal credit is computed on; the British Columbia credit reduces that row's eligible salary once. |
| `schedule428.employees[].nonArmsLengthEmployersEmploy` | boolean \| null |  | Whether an employer that does not deal with the corporation at arm's length also employs the apprentice in the period (BC ITA s.125). Yes needs a related-employer allocation. Without an answer it is yes when a related employer employs the apprentice and otherwise holds the rows. |
| `schedule428.employees[].redSealProgram` | boolean \| null |  | Whether the apprentice's program is a Red Seal program. Schedule 428 gives no basic credit for it; an enhanced apprentice's Red Seal wages earn the 5.5% eligible-apprentice amount instead. |
| `schedule428.employees[].redSealTradeName` | null \| string |  | The Red Seal trade the apprentice is registered in, printed at line 405. Without it, the trade on the linked Schedule 31 Part 19 row is used; a different trade there, or no trade at all, holds the 5.5% row. |
| `schedule428.employees[].registrationEvidenceReference` | null \| string |  | The transcript or registration record that proves the agreement and its date. |
| `schedule428.employees[].relatedEmployersEmploy` | boolean \| null |  | Whether an employer related to the corporation (ITA s.251(2)) also employs the apprentice. Yes needs the ITA s.127(11.4) designation answer for the 5.5% amount, and makes the s.125 arm's-length answer yes. |
| `schedule428.exemptUnderSection27` | boolean \| null |  | Whether the corporation is exempt from tax under ITA section 149, read in by BC ITA s.27. Yes means it is not an eligible employer (BC ITA s.116). |
| `schedule428.partnerships` | array \| null |  | Each partnership whose credit the corporation shares at line 815, for the fiscal period ending in this taxation year. Send an empty list when there is none. |
| `schedule428.partnerships[]` | object |  |  |
| `schedule428.partnerships[].apprenticeIdentifiers` | array |  | The column A identifiers of the apprentices in the partnership's credit; none may also be claimed directly. |
| `schedule428.partnerships[].apprenticeIdentifiers[]` | null \| string |  |  |
| `schedule428.partnerships[].evidenceReference` | null \| string |  | The partnership statement that supports the amount and share. |
| `schedule428.partnerships[].fiscalPeriodEnd` | null \| string |  | The last day of that fiscal period, inside this taxation year. |
| `schedule428.partnerships[].fiscalPeriodStart` | null \| string |  | The first day of the partnership's fiscal period. |
| `schedule428.partnerships[].partnershipBusinessNumber` | null \| string |  | The partnership's business number. |
| `schedule428.partnerships[].partnershipCredit` | null \| number \| string |  | The credit computed for the partnership as if it were a corporation. |
| `schedule428.partnerships[].partnershipId` | null \| string |  | A stable identifier for the partnership. |
| `schedule428.partnerships[].partnershipName` | null \| string |  | The partnership's name. |
| `schedule428.partnerships[].sharePercent` | null \| number \| string |  | The corporation's reasonable share, in percent, matching its share of income or loss. |
| `schedule428.partnerships[].specifiedMember` | boolean \| null |  | Whether the corporation is a specified member of the partnership (ITA s.248(1)); yes gives a nil share. |
| `schedule428.principalBusinessEvidenceReference` | null \| string |  | Where the principal-business classification is documented, such as the revenue breakdown by activity. Schedule 430 requires it. |
| `schedule428.principalBusinessShipbuilding` | boolean \| null |  | Whether the corporation's principal business is the construction, repair or conversion of ships (BC ITA s.126.1 eligible industry employer). Yes refuses Schedule 428 (s.124.2) and is required for Schedule 430; Schedules 428 and 430 must agree. |
| `schedule428.priorClaimedEvents` | array \| null |  | Completions already claimed on an earlier return for these apprentices; a level earns one completion credit. Carried from the preceding filed schedule. |
| `schedule428.priorClaimedEvents[]` | object |  |  |
| `schedule428.priorClaimedEvents[].claimedTaxYearEnd` | null \| string |  | The end of the taxation year whose return claimed it. |
| `schedule428.priorClaimedEvents[].completionDate` | null \| string |  | The date of that completion. |
| `schedule428.priorClaimedEvents[].employeeKey` | null \| string |  | The apprentice. |
| `schedule428.priorClaimedEvents[].eventId` | null \| string |  | The earlier completion's identifier. |
| `schedule428.priorClaimedEvents[].level` | null \| number \| string |  | The level claimed. |
| `schedule428.priorClaimedEvents[].programItem` | null \| string |  | The program's item number. |
| `schedule428.priorClaimedEvents[].programSchedule` | null \| string |  | The regulation schedule of the program, 2. |
| `schedule428.receiptsReviewed` | boolean \| null |  | Whether actual receipts of earlier credits in this taxation year, including a no-receipt answer, have been reviewed. |
| `schedule428.relatedEmployerAllocations` | array \| null |  | For an apprentice a non-arm's-length employer also employs, how the employers share the one maximum for the row (BC ITA ss.125, 126.5). Send an empty list when there is none. |
| `schedule428.relatedEmployerAllocations[]` | object |  |  |
| `schedule428.relatedEmployerAllocations[].allocationId` | null \| string |  | A stable identifier for the allocation. |
| `schedule428.relatedEmployerAllocations[].basis` | null \| string |  | agreement, or commissioner_determination when the Commissioner allocated it. |
| `schedule428.relatedEmployerAllocations[].employeeKey` | null \| string |  | The apprentice the allocation covers. |
| `schedule428.relatedEmployerAllocations[].eventId` | null \| string |  | For a completion amount, the completion shared. |
| `schedule428.relatedEmployerAllocations[].evidenceReference` | null \| string |  | The filed agreement or the determination. |
| `schedule428.relatedEmployerAllocations[].otherEmployers` | array \| null |  | Each other employer in the group. |
| `schedule428.relatedEmployerAllocations[].otherEmployers[]` | object |  |  |
| `schedule428.relatedEmployerAllocations[].otherEmployers[].businessNumber` | null \| string |  | The other employer's business number. |
| `schedule428.relatedEmployerAllocations[].otherEmployers[].claimedAmount` | null \| number \| string |  | The amount that employer claims under the agreement. |
| `schedule428.relatedEmployerAllocations[].otherEmployers[].employerName` | null \| string |  | The other employer's legal name. |
| `schedule428.relatedEmployerAllocations[].otherEmployers[].ownEntitlement` | null \| number \| string |  | The amount that employer could claim alone for the row. |
| `schedule428.relatedEmployerAllocations[].rowClass` | null \| string |  | The amount shared: basic, completion_level_3, completion_level_4 or eligible_apprentice; an enhanced row shares its ordinary row's maximum. |
| `schedule428.relatedEmployerAllocations[].sharePercent` | null \| number \| string |  | This corporation's agreed share of the group maximum, in percent. |
| `schedule428.taxableIncomeExempt` | boolean \| null |  | Whether all or part of the corporation's taxable income is at any time in the year exempt from tax under Part I of the federal Income Tax Act. Yes means it is not an eligible employer (BC ITA s.116 "eligible employer" (b)(i)). |
| `schedule428.wageSlices` | array \| null |  | Each amount of salary and wages payable to an apprentice, one row per payroll amount, with its exclusions. |
| `schedule428.wageSlices[]` | object |  |  |
| `schedule428.wageSlices[].employeeKey` | null \| string |  | The apprentice the amount is payable to. |
| `schedule428.wageSlices[].excludedBonuses` | null \| number \| string |  | Bonuses, excluded from salary and wages. |
| `schedule428.wageSlices[].excludedProfits` | null \| number \| string |  | Remuneration based on profits, excluded from salary and wages. |
| `schedule428.wageSlices[].excludedSredQualifiedExpenditure` | null \| number \| string |  | The part that is a qualified SR&ED expenditure, excluded only from the eligible-apprentice base. |
| `schedule428.wageSlices[].excludedTaxableBenefits` | null \| number \| string |  | Amounts under ITA sections 6 and 7, excluded from salary and wages. |
| `schedule428.wageSlices[].excludedUnpaidRemuneration` | null \| number \| string |  | Amounts described in ITA s.78(4), excluded from salary and wages. |
| `schedule428.wageSlices[].grossBeforeNetting` | null \| number \| string |  | The gross payroll before an assistance amount was netted, required when assistance is marked as already netted. |
| `schedule428.wageSlices[].grossSalaryWages` | null \| number \| string |  | The gross salary and wages, before the exclusions below. |
| `schedule428.wageSlices[].payableDate` | null \| string |  | The date the amount was payable. Payability, not the payment date, places it in a period. |
| `schedule428.wageSlices[].payrollEvidenceReference` | null \| string |  | The payroll register or slip that supports the amount. |
| `schedule428.wageSlices[].servicePeriodEnd` | null \| string |  | The last day of the service the amount pays for. |
| `schedule428.wageSlices[].servicePeriodStart` | null \| string |  | The first day of the service the amount pays for, when it spans a period. |
| `schedule428.wageSlices[].sliceId` | null \| string |  | A stable identifier for the amount, unique in the list; assistance names it. |
| `schedule429` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule429.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule429.actualCreditReceipts[]` | object |  |  |
| `schedule429.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.allOrSubstantiallyAllEligibleActivitiesConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.appliedForRegistration` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistance` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistanceLedgerCompleteConfirmed` | boolean \| null |  | Confirm the assistance ledger is complete. A positive Schedule 429 claim also requires an explicit assistance list, including an empty list when no assistance applies. |
| `schedule429.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistance[]` | object |  | Retained provincial credit assistance record input. |
| `schedule429.assistance[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistance[].category` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistance[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistance[].legalClassificationConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistance[].payrollSourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.assistance[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.bcTaxExempt` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule429.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule429.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule429.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule429.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule429.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule429.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule429.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule429.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule429.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule429.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.claimsBcSred` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.contactName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.contactPhone` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.controlledByDisqualifiedCorporation` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule429.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule429.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule429.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule429.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule429.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule429.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule429.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule429.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule429.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule429.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule429.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule429.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule429.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule429.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule429.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule429.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule429.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.eligibleBusinessCorporation` | boolean \| null |  | Line 345: whether the corporation was an eligible business corporation under Part 2 of the Small Business Venture Capital Act (former BC ITA s.133(3)(g)). Asked only for a tax year ending before February 22, 2017; a later year answers it no. |
| `schedule429.employeeVcc` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.federalPartIExempt` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.labourSponsoredVcc` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[]` | object |  | Retained provincial credit payroll record input. |
| `schedule429.payroll[].capitalizedOrDeductibleConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].eligibleWages` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].employeeConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].employeeId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].excludedBenefitsRemovedConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].filmWageExclusionConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].filmWageReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].incurredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].incurredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].paidConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].productId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].residencyConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].specifiedEmployee` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].specifiedEmployeeLimit` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.payroll[].specifiedEmployeeLimitEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.personalServicesBusiness` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.principalIdmBusinessConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule429.priorCreditReceipts[]` | object |  |  |
| `schedule429.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule429.products` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.products[]` | object |  | Retained provincial credit products record input. |
| `schedule429.products[].currencyGambling` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.products[].eligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.products[].eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.products[].productId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule429.recipients` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.recipients[]` | object |  | Retained provincial credit recipients record input. |
| `schedule429.recipients[].bcPeConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.recipients[].eligibleWages` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.recipients[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.recipients[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.recipients[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.recipients[].principalIdmBusinessConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.recipients[].recipientId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.registeredEsop` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.smallBusinessVcc` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule429.taxableCanadianThroughoutYearConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule43` | null \| object |  | Schedule 43 inputs for Parts IV.1 and VI.1 tax, dividend allowances, elections and related-corporation transfers. |
| `schedule43.amalgamationElectionReviewComplete` | boolean \| null |  | Complete exchanged-class review under s.87(4.2)(e), including non-qualifying exchanges. |
| `schedule43.amalgamationShareExchanges` | array \| null |  | Predecessor share-class exchanges on an amalgamation, the roster the ITA 87(4.2)(e) election-continuity review reads: one row per exchanged class, carrying the amalgamation date, the predecessor's business number, the predecessor and successor class ids, and the three answers the review turns on (whether a new share was issued for the predecessor share, whether its terms are the same or substantially the same, and whether the predecessor had made the subsection 191.2(1) election). Optional and conditional on there being an amalgamation history at all: where the history applies and the roster is absent, the review raises an election-review error rather than reading the absence as a non-election, and no charging operand moves either way. |
| `schedule43.amalgamationShareExchanges[]` | object |  |  |
| `schedule43.amalgamationShareExchanges[].amalgamationDate` | null \| string |  | Date of the amalgamation the exchange happened on, ISO YYYY-MM-DD. |
| `schedule43.amalgamationShareExchanges[].newShareIssuedForPredecessorShare` | boolean \| null |  | Whether a new share was issued in exchange for the predecessor share. ITA 87(4.2)(e) carries the predecessor's subsection 191.2(1) election forward only on such an exchange. |
| `schedule43.amalgamationShareExchanges[].predecessorBusinessNumber` | null \| string |  | Business number of the predecessor corporation whose class was exchanged. |
| `schedule43.amalgamationShareExchanges[].predecessorElectionMade` | boolean \| null |  | Whether the predecessor had made the subsection 191.2(1) election for the exchanged class. Where the two conditions above hold, that answer is the one that carries to the successor class. |
| `schedule43.amalgamationShareExchanges[].predecessorShareClassId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the predecessor share class given up in the exchange. |
| `schedule43.amalgamationShareExchanges[].sameOrSubstantiallySameTerms` | boolean \| null |  | Whether the new share's terms and conditions are the same as, or substantially the same as, the predecessor share's, the second ITA 87(4.2)(e) condition. |
| `schedule43.amalgamationShareExchanges[].successorShareClassId` | array \| boolean \| null \| number \| object \| string |  | Identifier of the successor (amalgamated corporation) share class received for it. |
| `schedule43.electionUnderS191_2_1Made` | boolean \| null |  | Flag: a s.191.2(1) election is in force for ≥1 class/series of TPS. Required when line 230 > 0. The election is IRREVOCABLE per s.191.2(1) closing words. |
| `schedule43.isAssociatedAndAllocating` | boolean \| null |  | Flag: corporation is associated and allocating the $500K dividend allowance among the associated group. When true, Part 2 rows are required and line 210 sources from this corp's own line-140 row rather than the full line 115. |
| `schedule43.isRestrictedFinancialInstitution` | boolean \| null |  | Flag: the corporation is a restricted financial institution per s.248(1). Required when line 320 > 0. |
| `schedule43.line116DateFiled` | array \| boolean \| null \| number \| object \| string |  | Box 116 — Date the agreement was filed. The form marks this area "do not use"; the value is recorded but not transmitted. |
| `schedule43.line117IsAmendedAgreement` | array \| boolean \| null \| number \| object \| string |  | Box 117 — Is this an amended agreement? |
| `schedule43.line118CalendarYearOfAgreement` | null \| number \| string |  | Box 118 — Calendar year to which the agreement applies. |
| `schedule43.line1BPriorYearNonExcludedDividendsPaid` | null \| number \| string |  | Amount 1B — Prior CALENDAR YEAR non-excluded taxable dividends paid by the corp (or the ASSOCIATED GROUP — see Part 2 point 1) on TPS or shares that would be TPS if issued after June 18, 1987. NOT a printed CRA box code but captured for the line 110 calculation. |
| `schedule43.line210OwnAllocation` | null \| number \| string |  | Optional override for line 210 — the practitioner's own allocation when associated. Defaults to the first Part 2 row's column 140 if not provided. Short-year proration applied at the engine level per the form's Note 1 (< 51 weeks → days/365). |
| `schedule43.line220StpsDividendsPaid` | null \| number \| string |  | Line 220 — Non-excluded taxable dividends paid on STPS in the year. Per s.191.1(1)(a). Allowance is absorbed against STPS first. |
| `schedule43.line230ElectedTpsDividendsPaid` | null \| number \| string |  | Line 230 — Non-excluded taxable dividends paid on TPS (other than STPS) for classes WITH a s.191.2(1) election (40% rate). |
| `schedule43.line240NonElectedTpsDividendsPaid` | null \| number \| string |  | Line 240 — Non-excluded taxable dividends paid on TPS (other than STPS) for classes WITHOUT a s.191.2(1) election (25% rate per s.191.1(1)(a)(iii)). |
| `schedule43.line250TransferredInFromRelatedCorp` | null \| number \| string |  | Line 250 — Part VI.1 tax transferred IN from a related corp under a s.191.3 agreement (Schedule 45 companion). |
| `schedule43.line260TransferredOutToRelatedCorp` | null \| number \| string |  | Line 260 — Part VI.1 tax transferred OUT to a related corp under a s.191.3 agreement. Cannot exceed 3C + 3I + 3Q per s.191.3(1)(b). |
| `schedule43.line310TpsDividendsReceived` | null \| number \| string |  | Line 310 — Non-excepted taxable dividends received on TPS (other than classes the PAYER has elected under s.191.2(1)). |
| `schedule43.line320RfiSharesDividendsReceived` | null \| number \| string |  | Line 320 — RFI-only: non-excepted taxable dividends received on taxable RFI shares per s.187.3. |
| `schedule43.line350PortionAlsoSubjectToPartIv` | null \| number \| string |  | Line 350 — Portion of line 330 also subject to Part IV tax. |
| `schedule43.line370PortionFromConnectedCorps` | null \| number \| string |  | Line 370 — Portion of line 350 received from connected corps. |
| `schedule43.line380PartIvTaxOnLine370Dividends` | null \| number \| string |  | Line 380 — Part IV tax on the dividends reported on line 370. |
| `schedule43.line390PortionFromNonConnectedCorps` | null \| number \| string |  | Line 390 — Portion of line 350 received from non-connected corps. |
| `schedule43.line400EligibleTaxableDividendsFromLine390` | null \| number \| string |  | Line 400 — Eligible-dividend SUBSET of line 390. |
| `schedule43.part2Agreement` | null \| object |  | CAP-R2 — the persisted ITA 191.1(3) agreement attestation. Boxes 116 / 117 / 118 record only WHEN the agreement was filed and WHICH calendar year it names; subsection 191.1(3) grants an allocated allowance only where ALL of the associated corporations filed the prescribed agreement, and paragraph 191.1(6)(b) makes later associated taxation years ending in the same calendar year reuse the first such year's unprorated allowance. Both attestations are tri-state: null is UNANSWERED and keeps line 210 withheld. |
| `schedule43.part2Agreement.attestedFiledByEveryAssociatedTpsPayer` | boolean \| null |  | ITA 191.1(3): the agreement is effective only where ALL of the associated corporations filed it. Null is unanswered. |
| `schedule43.part2Agreement.calendarYear` | null \| number |  | Calendar year the agreement allocates for. Must equal the calendar year in which this return's taxation year ends. |
| `schedule43.part2Agreement.firstTaxYearAllowanceContinuity191_1_6b` | boolean \| null |  | ITA 191.1(6)(b): where more than one associated taxation year ends in the same calendar year, the later years reuse the FIRST such year's unprorated allowance before paragraph (6)(a) prorates. Null is unanswered. |
| `schedule43.part2Rows` | array \| null |  | Allocation rows. |
| `schedule43.part2Rows[]` | object |  |  |
| `schedule43.part2Rows[].businessNumber` | null \| string |  | Column 130 — Business number (or literal "NR" if not registered). |
| `schedule43.part2Rows[].dividendAllowanceAllocated` | null \| number \| string |  | Column 140 — Dividend allowance allocated to this corp. Total of column 140 across all rows cannot exceed line 115. |
| `schedule43.part2Rows[].hasTaxYearEndingInCalendarYear` | boolean \| null |  | Any taxation year ends in the agreement calendar year, s.191.1(6)(b). |
| `schedule43.part2Rows[].id` | null \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule43.part2Rows[].name` | null \| string |  | Column 120 — Name of the associated corporation. |
| `schedule43.part4ExemptionApplies` | boolean \| null |  | Non-printed tri-state for the ITA s.187.1(c) recipient-status exception. Yes means all Part 4 dividends were received while the corporation was private or by a financial intermediary corporation. This answer only reconciles the server-owned private-corporation and ITA 191(1) status facts; it cannot authorize the exemption by itself. New forms initialize it to null (unresolved). |
| `schedule430` | null \| object |  | British Columbia Schedule 430 shipbuilding and ship repair industry tax credit inputs (T2 SCH 430 E (24)) for an eligible industry employer: the same apprentice, wage, assistance, completion and share records as Schedule 428, with the principal-business evidence. Omit it or send null when the form was not opened; claim=false is a nil. Amount L is refunded at Schedule 5 line 681. |
| `schedule430.actualCreditReceipts` | array |  | Earlier training credits actually refunded, applied against tax payable or credited to instalments in this taxation year, each reconciled to one government-assistance workpaper row; a calculated entitlement is not a receipt. |
| `schedule430.actualCreditReceipts[]` | object |  |  |
| `schedule430.actualCreditReceipts[].amount` | null \| number \| string |  | Amount actually received or applied. It must reconcile to amountCY on the linked government-assistance workpaper row. |
| `schedule430.actualCreditReceipts[].assetBasisTreatmentConfirmed` | boolean \| null |  | Confirmation that a receipt treated as reducing an asset's cost was applied to that basis. |
| `schedule430.actualCreditReceipts[].evidenceRef` | null \| string |  | Reference to the source proving this dated receipt or tax-account application. |
| `schedule430.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Confirmation that the reviewed expense reduction was applied; checked when treatment is expense_reduction. |
| `schedule430.actualCreditReceipts[].id` | null \| string |  | Stable receipt identifier beginning with the schedule's marker (S428: or S430:), matching provincialCreditReceiptId on the linked workpaper row. Each receipt may be linked only once. |
| `schedule430.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Taxation-year end of the credit that produced this receipt. |
| `schedule430.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Nine-digit business-number root of the partnership, for partnership_income treatment. |
| `schedule430.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Confirmation that the receipt was included in the partnership income reported to the corporation; checked for partnership_income treatment. |
| `schedule430.actualCreditReceipts[].receiptKind` | null \| string |  | How the credit was received: refund, tax_payable_application or instalment_credit. |
| `schedule430.actualCreditReceipts[].receivedDate` | null \| string |  | Date the credit was refunded, applied against tax payable or credited to instalments, inside the current taxation year. |
| `schedule430.actualCreditReceipts[].treatment` | null \| string |  | Reviewed federal treatment of the receipt: income_inclusion, previous_tax_inclusion, expense_reduction or partnership_income. It must agree with the linked workpaper's book and tax treatment. |
| `schedule430.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Reference supporting a reviewed exception to current income inclusion. |
| `schedule430.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Taxation-year end supporting the reviewed treatment. |
| `schedule430.actualCreditReceipts[].workpaperId` | null \| string |  | Identifier of the government-assistance workpaper containing the row that accounts for the receipt. |
| `schedule430.actualCreditReceipts[].workpaperRowKey` | null \| string |  | The linked government-assistance row's \_rowKey. |
| `schedule430.assistance` | array \| null |  | Government and non-government assistance related to the wages, received, receivable or expected when the return is filed. Send an empty list when there is none. |
| `schedule430.assistanceLedgerComplete` | boolean \| null |  | Confirms that assistance lists every government and non-government amount related to the wages, including an empty list when there is none. Positive wages without it hold the schedule. |
| `schedule430.assistance[]` | object |  |  |
| `schedule430.assistance[].alreadyNetted` | boolean \| null |  | Whether payroll already deducted the assistance from the wage amount; yes needs grossBeforeNetting to prove it. |
| `schedule430.assistance[].amount` | null \| number \| string |  | The assistance amount. |
| `schedule430.assistance[].assistanceId` | null \| string |  | A stable identifier for the assistance, unique in the list. |
| `schedule430.assistance[].category` | null \| string |  | government, non_government, or one of the amounts that is never designated assistance: bc_training_credit, bc_shipbuilding_credit or federal_apprenticeship_itc. |
| `schedule430.assistance[].evidenceReference` | null \| string |  | The grant letter or statement that supports the assistance. |
| `schedule430.assistance[].program` | null \| string |  | The program or payer that granted the assistance. |
| `schedule430.assistance[].repaidAmount` | null \| number \| string |  | Any part the corporation is legally required to repay. |
| `schedule430.assistance[].sliceId` | null \| string |  | The wage amount the assistance relates to. |
| `schedule430.assistance[].statusAtFiling` | null \| string |  | The status when the return is filed: received, receivable, expected or not_expected. |
| `schedule430.claim` | boolean \| null |  | Whether the corporation claims the credit this taxation year. No is a nil and carries the apprentices; no answer holds the schedule. |
| `schedule430.claimFiledDate` | null \| string |  | The date this schedule was filed, when it has been; the credit needs the schedule filed within 36 months after the year end (BC ITA s.128(2)). |
| `schedule430.claimFilingEvidenceReference` | null \| string |  | The filing confirmation for that date. |
| `schedule430.completions` | array \| null |  | Each level an apprentice completed during the year, one row per completion. |
| `schedule430.completions[]` | object |  |  |
| `schedule430.completions[].certificateKind` | null \| string |  | For a graduation requirement, the credential: certificate_of_qualification, certificate_of_apprenticeship or red_seal_endorsement. |
| `schedule430.completions[].certificateOfQualificationGranted` | boolean \| null |  | Whether a Certificate of Qualification is granted for the program. A Certificate of Apprenticeship graduates the apprentice only where none is (B.C. Reg. 243/2007 s.1 "graduate"); read when the program catalogue does not settle it, and no answer holds the completion. |
| `schedule430.completions[].challengeExam` | boolean \| null |  | Whether the credential was earned by challenge exam, which gives the employer no completion credit. |
| `schedule430.completions[].completionDate` | null \| string |  | The date the level's requirement was met, inside this taxation year. |
| `schedule430.completions[].employeeKey` | null \| string |  | The apprentice who completed the level. |
| `schedule430.completions[].eventId` | null \| string |  | A stable identifier for the completion, unique in the list. |
| `schedule430.completions[].evidenceReference` | null \| string |  | The SkilledTradesBC transcript or certificate that proves the completion. |
| `schedule430.completions[].level` | null \| number \| string |  | The level completed: 3, 4, or 5 for the hydraulic service mechanic program. |
| `schedule430.completions[].program` | null \| object |  | The eligible training program: schedule 2 and the item of the Training Tax Credits Regulation in force on the completion date. |
| `schedule430.completions[].program.accreditationEvidenceReference` | null \| string |  | Not used for a completion; Schedule 2 programs are prescribed. |
| `schedule430.completions[].program.item` | null \| string |  | The item number of the program in Schedule 2 on the completion date. |
| `schedule430.completions[].program.name` | null \| string |  | The program name as printed, kept for review; the item identifies the program. |
| `schedule430.completions[].program.ruleSnapshotDate` | null \| string |  | The date of the regulation text the program was selected from. |
| `schedule430.completions[].program.schedule` | null \| string |  | 2, the eligible training programs of the Training Tax Credits Regulation. |
| `schedule430.completions[].technicalLevelCompleted` | boolean \| null |  | Confirms the technical training level was completed, for a requirement stated as a level. |
| `schedule430.completions[].wagePeriodEnd` | null \| string |  | The last day of that period, in the month of the completion. |
| `schedule430.completions[].wagePeriodStart` | null \| string |  | The first day of the up-to-12-month period whose wages the completion credit uses. |
| `schedule430.completions[].workBasedHours` | null \| number \| string |  | The work-based training hours completed, for a requirement stated in hours. |
| `schedule430.controlledByExemptPersons` | boolean \| null |  | Whether the corporation is controlled by persons exempt from tax. Yes means it is not an eligible employer (BC ITA s.116). |
| `schedule430.currencyBasis` | object |  | ITA s.261(2)(b) and (5)(c), applied by BC ITA s.1(6.1)-(6.2): confirmation that the schedule's source amounts are in the return's reporting currency, with a conversion for each amount entered in another currency at the rate for the day it arose. Required on a functional-currency return; omit it when every amount is in Canadian dollars on a Canadian-dollar return. |
| `schedule430.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | True once every source amount not listed under conversions is confirmed to be in the reporting currency. |
| `schedule430.currencyBasis.conversions` | array |  | One record per source amount entered in another currency; the schedule keeps the original amount. |
| `schedule430.currencyBasis.conversions[]` | object |  |  |
| `schedule430.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Day the amount arose: a wage amount's payable date, a partnership credit's fiscal-period end or a receipt's date. |
| `schedule430.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Canadian dollars per unit of the reporting currency (1 for CAD). |
| `schedule430.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Reference to the arising-day and exchange-rate evidence. |
| `schedule430.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Reference to the Minister's acceptance of an alternative rate, when one is used. |
| `schedule430.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Canadian dollars per unit of the source currency (1 for CAD). |
| `schedule430.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | The amount as entered; it must equal the schedule's current amount. |
| `schedule430.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | The converted amount's path in this schedule, such as wageSlices.0.grossSalaryWages. |
| `schedule430.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Day of the exchange-rate observation: the arising day or the closest preceding published day. |
| `schedule430.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Three-letter code of the currency the amount was entered in. |
| `schedule430.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | The source identity the conversion was recorded against; a changed source record invalidates it. |
| `schedule430.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | boc_valet, boc_archival_manual or minister_alt_rate (a rate the Minister accepts, ITA s.261(1)). |
| `schedule430.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Reference to the currency reconciliation. |
| `schedule430.currencyBasis.historicalConversions` | array |  | Conversions retained from a prior filed claim; they do not compute this year's amounts. |
| `schedule430.currencyBasis.historicalConversions[]` | object |  |  |
| `schedule430.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule430.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule430.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule430.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule430.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule430.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule430.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule430.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule430.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule430.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule430.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule430.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule430.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule430.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule430.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | The reporting currency the amounts are confirmed in; it must match the return's declared currency. |
| `schedule430.employees` | array \| null |  | One row per apprentice employed in a British Columbia position during the year. |
| `schedule430.employees[]` | object |  |  |
| `schedule430.employees[].agreementDate` | null \| string |  | The date the apprenticeship agreement was registered with SkilledTradesBC. The basic credit covers wages payable in the 24 months that follow it. |
| `schedule430.employees[].basicProgram` | null \| object |  | The eligible recognized program for the basic credit: schedule 1 and the item of the Training Tax Credits Regulation, or for Schedule 430 an accredited program. |
| `schedule430.employees[].basicProgram.accreditationEvidenceReference` | null \| string |  | The SkilledTradesBC accreditation evidence for an accredited program. |
| `schedule430.employees[].basicProgram.item` | null \| string |  | The item number of the program in the regulation's schedule, as in force for the wage dates; names are not identifiers. |
| `schedule430.employees[].basicProgram.name` | null \| string |  | The accredited program's name, required when the schedule is accredited. |
| `schedule430.employees[].basicProgram.ruleSnapshotDate` | null \| string |  | The date of the regulation text the program was selected from, kept with the selection. |
| `schedule430.employees[].basicProgram.schedule` | null \| string |  | 1 for a program listed in Schedule 1 of the Training Tax Credits Regulation, or accredited (Schedule 430 only). |
| `schedule430.employees[].bcPositionConfirmed` | boolean \| null |  | Confirms the apprentice's position is in a business carried on in British Columbia and relates to the program. No gives no credit for the apprentice. |
| `schedule430.employees[].displayIdentifier` | null \| string |  | Column A: the SkilledTradesBC identification number, or the employee's social insurance number or name when there is none. |
| `schedule430.employees[].displayIdentifierKind` | null \| string |  | What column A carries: skilledtradesbc_id, sin (nine digits) or name. |
| `schedule430.employees[].employeeKey` | null \| string |  | A stable key for the apprentice, unique in the list; wage amounts, completions and allocations name it. |
| `schedule430.employees[].employmentEnd` | null \| string |  | The last day of this employment, when it ended. An apprentice who left keeps a completion proved for wages paid before. |
| `schedule430.employees[].employmentStart` | null \| string |  | The first day of this employment, when known. |
| `schedule430.employees[].enhancementEvidenceReference` | null \| string |  | The evidence for an enhanced status, such as the certificate of Indian status or the approved disability tax credit certificate. |
| `schedule430.employees[].enhancementStatus` | null \| string |  | Whether the apprentice is registered under the Indian Act or entitled to the disability deduction for the year: indian_act_registered, disability_deduction_entitled, both or not_enhanced. No answer holds the apprentice's rows. |
| `schedule430.employees[].federalApprenticeshipCredit` | null \| string |  | For a Red Seal apprentice, whether the federal apprenticeship job creation credit is claimed: claimed or not_claimed. Claimed needs the Schedule 31 link. |
| `schedule430.employees[].federalSingleClaimerDesignated` | boolean \| null |  | For an apprentice a related employer also employs, whether the agreement designates this corporation to claim the federal credit (ITA s.127(11.4)). No makes the 5.5% base nil. |
| `schedule430.employees[].federalSourceEmploymentId` | null \| string |  | The Schedule 31 Part 19 row this apprentice's federal credit is computed on; the British Columbia credit reduces that row's eligible salary once. |
| `schedule430.employees[].nonArmsLengthEmployersEmploy` | boolean \| null |  | Whether an employer that does not deal with the corporation at arm's length also employs the apprentice in the period (BC ITA s.126.5). Yes needs a related-employer allocation. Without an answer it is yes when a related employer employs the apprentice and otherwise holds the rows. |
| `schedule430.employees[].redSealProgram` | boolean \| null |  | Whether the apprentice's program is a Red Seal program. Schedule 428 gives no basic credit for it; an enhanced apprentice's Red Seal wages earn the 5.5% eligible-apprentice amount instead. |
| `schedule430.employees[].redSealTradeName` | null \| string |  | The Red Seal trade the apprentice is registered in. Schedule 428 prints it at line 405; Schedule 430 has no Red Seal row and does not use it. |
| `schedule430.employees[].registrationEvidenceReference` | null \| string |  | The transcript or registration record that proves the agreement and its date. |
| `schedule430.employees[].relatedEmployersEmploy` | boolean \| null |  | Whether an employer related to the corporation (ITA s.251(2)) also employs the apprentice. Yes makes the s.126.5 arm's-length answer yes. |
| `schedule430.exemptUnderSection27` | boolean \| null |  | Whether the corporation is exempt from tax under ITA section 149, read in by BC ITA s.27. Yes means it is not an eligible employer (BC ITA s.116). |
| `schedule430.partnerships` | array \| null |  | Each partnership whose credit the corporation shares at line 815, for the fiscal period ending in this taxation year. Send an empty list when there is none. |
| `schedule430.partnerships[]` | object |  |  |
| `schedule430.partnerships[].apprenticeIdentifiers` | array |  | The column A identifiers of the apprentices in the partnership's credit; none may also be claimed directly. |
| `schedule430.partnerships[].apprenticeIdentifiers[]` | null \| string |  |  |
| `schedule430.partnerships[].evidenceReference` | null \| string |  | The partnership statement that supports the amount and share. |
| `schedule430.partnerships[].fiscalPeriodEnd` | null \| string |  | The last day of that fiscal period, inside this taxation year. |
| `schedule430.partnerships[].fiscalPeriodStart` | null \| string |  | The first day of the partnership's fiscal period. |
| `schedule430.partnerships[].partnershipBusinessNumber` | null \| string |  | The partnership's business number. |
| `schedule430.partnerships[].partnershipCredit` | null \| number \| string |  | The credit computed for the partnership as if it were a corporation. |
| `schedule430.partnerships[].partnershipId` | null \| string |  | A stable identifier for the partnership. |
| `schedule430.partnerships[].partnershipName` | null \| string |  | The partnership's name. |
| `schedule430.partnerships[].sharePercent` | null \| number \| string |  | The corporation's reasonable share, in percent, matching its share of income or loss. |
| `schedule430.partnerships[].specifiedMember` | boolean \| null |  | Whether the corporation is a specified member of the partnership (ITA s.248(1)); yes gives a nil share. |
| `schedule430.principalBusinessEvidenceReference` | null \| string |  | Where the principal-business classification is documented, such as the revenue breakdown by activity. Schedule 430 requires it. |
| `schedule430.principalBusinessShipbuilding` | boolean \| null |  | Whether the corporation's principal business is the construction, repair or conversion of ships (BC ITA s.126.1 eligible industry employer). Yes refuses Schedule 428 (s.124.2) and is required for Schedule 430; Schedules 428 and 430 must agree. |
| `schedule430.priorClaimedEvents` | array \| null |  | Completions already claimed on an earlier return for these apprentices; a level earns one completion credit. Carried from the preceding filed schedule. |
| `schedule430.priorClaimedEvents[]` | object |  |  |
| `schedule430.priorClaimedEvents[].claimedTaxYearEnd` | null \| string |  | The end of the taxation year whose return claimed it. |
| `schedule430.priorClaimedEvents[].completionDate` | null \| string |  | The date of that completion. |
| `schedule430.priorClaimedEvents[].employeeKey` | null \| string |  | The apprentice. |
| `schedule430.priorClaimedEvents[].eventId` | null \| string |  | The earlier completion's identifier. |
| `schedule430.priorClaimedEvents[].level` | null \| number \| string |  | The level claimed. |
| `schedule430.priorClaimedEvents[].programItem` | null \| string |  | The program's item number. |
| `schedule430.priorClaimedEvents[].programSchedule` | null \| string |  | The regulation schedule of the program, 2. |
| `schedule430.receiptsReviewed` | boolean \| null |  | Whether actual receipts of earlier credits in this taxation year, including a no-receipt answer, have been reviewed. |
| `schedule430.relatedEmployerAllocations` | array \| null |  | For an apprentice a non-arm's-length employer also employs, how the employers share the one maximum for the row (BC ITA ss.125, 126.5). Send an empty list when there is none. |
| `schedule430.relatedEmployerAllocations[]` | object |  |  |
| `schedule430.relatedEmployerAllocations[].allocationId` | null \| string |  | A stable identifier for the allocation. |
| `schedule430.relatedEmployerAllocations[].basis` | null \| string |  | agreement, or commissioner_determination when the Commissioner allocated it. |
| `schedule430.relatedEmployerAllocations[].employeeKey` | null \| string |  | The apprentice the allocation covers. |
| `schedule430.relatedEmployerAllocations[].eventId` | null \| string |  | For a completion amount, the completion shared. |
| `schedule430.relatedEmployerAllocations[].evidenceReference` | null \| string |  | The filed agreement or the determination. |
| `schedule430.relatedEmployerAllocations[].otherEmployers` | array \| null |  | Each other employer in the group. |
| `schedule430.relatedEmployerAllocations[].otherEmployers[]` | object |  |  |
| `schedule430.relatedEmployerAllocations[].otherEmployers[].businessNumber` | null \| string |  | The other employer's business number. |
| `schedule430.relatedEmployerAllocations[].otherEmployers[].claimedAmount` | null \| number \| string |  | The amount that employer claims under the agreement. |
| `schedule430.relatedEmployerAllocations[].otherEmployers[].employerName` | null \| string |  | The other employer's legal name. |
| `schedule430.relatedEmployerAllocations[].otherEmployers[].ownEntitlement` | null \| number \| string |  | The amount that employer could claim alone for the row. |
| `schedule430.relatedEmployerAllocations[].rowClass` | null \| string |  | The amount shared: basic, completion_level_3, completion_level_4 or eligible_apprentice; an enhanced row shares its ordinary row's maximum. |
| `schedule430.relatedEmployerAllocations[].sharePercent` | null \| number \| string |  | This corporation's agreed share of the group maximum, in percent. |
| `schedule430.taxableIncomeExempt` | boolean \| null |  | Whether all or part of the corporation's taxable income is at any time in the year exempt from tax under Part I of the federal Income Tax Act. Yes means it is not an eligible employer (BC ITA s.116 "eligible employer" (b)(i)). |
| `schedule430.wageSlices` | array \| null |  | Each amount of salary and wages payable to an apprentice, one row per payroll amount, with its exclusions. |
| `schedule430.wageSlices[]` | object |  |  |
| `schedule430.wageSlices[].employeeKey` | null \| string |  | The apprentice the amount is payable to. |
| `schedule430.wageSlices[].excludedBonuses` | null \| number \| string |  | Bonuses, excluded from salary and wages. |
| `schedule430.wageSlices[].excludedProfits` | null \| number \| string |  | Remuneration based on profits, excluded from salary and wages. |
| `schedule430.wageSlices[].excludedSredQualifiedExpenditure` | null \| number \| string |  | The part that is a qualified SR&ED expenditure, excluded only from the eligible-apprentice base. |
| `schedule430.wageSlices[].excludedTaxableBenefits` | null \| number \| string |  | Amounts under ITA sections 6 and 7, excluded from salary and wages. |
| `schedule430.wageSlices[].excludedUnpaidRemuneration` | null \| number \| string |  | Amounts described in ITA s.78(4), excluded from salary and wages. |
| `schedule430.wageSlices[].grossBeforeNetting` | null \| number \| string |  | The gross payroll before an assistance amount was netted, required when assistance is marked as already netted. |
| `schedule430.wageSlices[].grossSalaryWages` | null \| number \| string |  | The gross salary and wages, before the exclusions below. |
| `schedule430.wageSlices[].payableDate` | null \| string |  | The date the amount was payable. Payability, not the payment date, places it in a period. |
| `schedule430.wageSlices[].payrollEvidenceReference` | null \| string |  | The payroll register or slip that supports the amount. |
| `schedule430.wageSlices[].servicePeriodEnd` | null \| string |  | The last day of the service the amount pays for. |
| `schedule430.wageSlices[].servicePeriodStart` | null \| string |  | The first day of the service the amount pays for, when it spans a period. |
| `schedule430.wageSlices[].sliceId` | null \| string |  | A stable identifier for the amount, unique in the list; assistance names it. |
| `schedule432` | null \| object |  | Programme certificate and eligibility evidence. Omit or send null when unopened; explicit claim=false discloses a nil. |
| `schedule432.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule432.actualCreditReceipts[]` | object |  |  |
| `schedule432.actualCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.actualCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.assistancePostingConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.assistanceReconciliationReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.bcTaxExempt` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[]` | object |  | Retained provincial credit certificates record input. |
| `schedule432.certificates[].applicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].certificateKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].certificateNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].certifyingBody` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[]` | object |  | Retained provincial credit claim history record input. |
| `schedule432.certificates[].claimHistory[].assessedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[].claimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[].claimedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[].filingReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].claimHistory[].supersedesClaimId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].coveredFrom` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].coveredTo` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].eligibilityCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].estimatedCreditAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].events` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].events[]` | object |  | Retained provincial credit events record input. |
| `schedule432.certificates[].events[].eventDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].events[].eventId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].events[].eventKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].events[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].evidenceSha256` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].issueDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].program` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].projects` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].projects[]` | object |  | Retained provincial credit projects record input. |
| `schedule432.certificates[].projects[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for the identified project. Retain its original currency and certificate evidence; it is separate from certified amounts and calculated entitlement. |
| `schedule432.certificates[].projects[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].projects[].projectKind` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].projects[].projectName` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].recipientBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].revision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].sourceCurrency` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].status` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].supersedesCertificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods[]` | object |  | Retained provincial credit taxation periods record input. |
| `schedule432.certificates[].taxationPeriods[].allocationEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate for this exact certificate taxation period. Retain its original currency and evidence; it is separate from certified amounts and does not establish or cap the elected credit. |
| `schedule432.certificates[].taxationPeriods[].fiscalEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods[].fiscalStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods[].projectAmounts` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods[].projectAmounts[]` | object |  | Retained provincial credit project amounts record input. |
| `schedule432.certificates[].taxationPeriods[].projectAmounts[].certifiedAmount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].taxationPeriods[].projectAmounts[].estimatedCreditAmount` | null \| number \| string |  | Issuer estimate allocated to the identified project in this certificate taxation period. Retain its original currency and evidence; it is separate from certified allocations and calculated entitlement. |
| `schedule432.certificates[].taxationPeriods[].projectAmounts[].projectId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].transfers` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].transfers[]` | object |  | Retained provincial credit transfers record input. |
| `schedule432.certificates[].transfers[].approvalEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].transfers[].legalBasis` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].transfers[].predecessorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].transfers[].successorBusinessNumber` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].transfers[].transferDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.certificates[].transfers[].transferId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.claim` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis` | null \| object |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.amountsInReportingCurrencyConfirmed` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[]` | object |  | Retained provincial credit conversions record input. |
| `schedule432.currencyBasis.conversions[].aroseDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].originalAmount` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].path` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].rateDate` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.conversions[].spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.currencyBasis.historicalConversions` | array |  | Retained currency conversions from prior filed claim amounts. |
| `schedule432.currencyBasis.historicalConversions[]` | object |  | One prior filed currency conversion retained for claim continuity. |
| `schedule432.currencyBasis.historicalConversions[].conversion` | object |  | Prior filed currency lineage conversion. |
| `schedule432.currencyBasis.historicalConversions[].conversion.aroseDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion aroseDate. |
| `schedule432.currencyBasis.historicalConversions[].conversion.denominatorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion denominatorRate. |
| `schedule432.currencyBasis.historicalConversions[].conversion.evidenceReference` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion evidenceReference. |
| `schedule432.currencyBasis.historicalConversions[].conversion.ministerApprovalRef` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion ministerApprovalRef. |
| `schedule432.currencyBasis.historicalConversions[].conversion.numeratorRate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion numeratorRate. |
| `schedule432.currencyBasis.historicalConversions[].conversion.originalAmount` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion originalAmount. |
| `schedule432.currencyBasis.historicalConversions[].conversion.path` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion path. |
| `schedule432.currencyBasis.historicalConversions[].conversion.rateDate` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion rateDate. |
| `schedule432.currencyBasis.historicalConversions[].conversion.sourceCurrency` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceCurrency. |
| `schedule432.currencyBasis.historicalConversions[].conversion.sourceRecordId` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion sourceRecordId. |
| `schedule432.currencyBasis.historicalConversions[].conversion.spotRateSource` | array \| boolean \| null \| number \| object \| string |  | Original retained amount conversion spotRateSource. |
| `schedule432.currencyBasis.historicalConversions[].filingReference` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage filingReference. |
| `schedule432.currencyBasis.historicalConversions[].reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Prior filed currency lineage reportingCurrency. |
| `schedule432.currencyBasis.reportingCurrency` | array \| boolean \| null \| number \| object \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.eligibilityEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.filingDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.filingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.formRevision` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.priorCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule432.priorCreditReceipts[]` | object |  |  |
| `schedule432.priorCreditReceipts[].amount` | null \| number \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].evidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].expenseReductionApplied` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].id` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].originTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].partnershipBusinessNumber` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].partnershipIncomeReported` | boolean \| null |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].propertyId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].receiptKind` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].receivedDate` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].sourceCurrency` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].treatment` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].treatmentEvidenceRef` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].treatmentTaxYearEnd` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].workpaperId` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.priorCreditReceipts[].workpaperRowKey` | null \| string |  | Retained actual-credit receipt evidence linked by programme receipt ID to one government-assistance workpaper row. Amount and currency refer to the original receipt; conversion uses its actual received date. The workpaper owns any income or property-cost posting. |
| `schedule432.receiptsReviewed` | boolean \| null |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |
| `schedule432.retrofits` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[]` | object |  | Retained provincial credit retrofits record input. |
| `schedule432.retrofits[].afterEui` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].afterMeasurementEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].afterMeasurementStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[]` | object |  | Retained provincial credit assistance record input. |
| `schedule432.retrofits[].assistance[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[].category` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[].expenditureIds` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[].expenditureIds[]` | null \| string |  | Retained provincial credit expenditure ids record input. |
| `schedule432.retrofits[].assistance[].legalClassificationConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[].obligatoryRepayment` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[].repaymentEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].assistance[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].bankruptcyExclusionReviewedConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].beforeEui` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].beforeMeasurementEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].beforeMeasurementStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].buildingEligibilityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].buildingEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].buildingId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].certificateId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].commissionerApplicationDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].completionDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].completionTaxYearEnd` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].completionTaxYearStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[]` | object |  | Retained provincial credit expenditures record input. |
| `schedule432.retrofits[].expenditures[].agreementDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].amount` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].claimedByAnotherTaxpayer` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].directlyAttributableConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].expenditureClass` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].incurredDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].paidDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].sourceRecordId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].supplierArmsLength` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].expenditures[].supplierGstRegistered` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].interests` | array |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].interests[]` | object |  | Retained provincial credit interests record input. |
| `schedule432.retrofits[].interests[].evidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].interests[].fraction` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].interests[].interestId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].nonDuplicatedClaimConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].partnership` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].qualifiedPersonCertificateDate` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].qualifiedPersonEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].reorganizationContinuityConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].retrofitId` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].targetEui` | null \| number \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].taxationYearSequenceEvidenceReference` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.retrofits[].workStart` | null \| string |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule432.statutoryConditionsConfirmed` | boolean \| null |  | Retained provincial programme evidence; missing facts remain unanswered. Monetary source values may be exact decimal text. |
| `schedule45` | null \| object |  |  |
| `schedule45.isFilingAsTransferor` | boolean \| null |  | Whether this return belongs to the transferor corporation rather than a transferee corporation named in the agreement. |
| `schedule45.line105TotalPartVi1TaxTransferred` | null \| number \| string |  | Box 105: total Part VI.1 tax specified as transferred in the agreement. The total of transferee column 233 cannot exceed this amount. |
| `schedule45.transferees` | array \| null |  | Transferee rows (box 225 / 230 / 233 / 235 per row). |
| `schedule45.transferees[]` | object |  |  |
| `schedule45.transferees[].businessNumber` | null \| string |  | Box 230 — Full 15-character CRA program account (9 digits, 2 letters, and 4 digits). The form does not authorize an "NR" alternative. |
| `schedule45.transferees[].id` | null \| string |  | Stable row identity for retaining the current transferee row through edits and row reordering. |
| `schedule45.transferees[].name` | null \| string |  | Box 225 — Name of the transferee corporation. |
| `schedule45.transferees[].transfereeTaxYearEnd` | null \| string |  | Box 235 — Tax year end (YYYY-MM-DD) to which this agreement applies for the transferee. Per s.191.3(1)(b) this is the transferee's last taxation year ending at or before the end of the transferor's taxation year. |
| `schedule45.transferees[].transferredAmount` | null \| number \| string |  | Box 233 — Part VI.1 tax transferred to this transferee, in CAD. Must be positive. Sum of column 233 across rows feeds box 105 and must not exceed the transferor's gross Part VI.1 tax per s.191.3(1)(c). |
| `schedule46` | null \| object |  | Part II tobacco manufacturing facts and evidence, retained in schedule_46. Omit or null when unopened. |
| `schedule49` | null \| object |  | Schedule 49 agreement and associated-corporation roster, including expenditure-limit allocation rows and rosterComplete. It supports the Schedule 31 SR&ED expenditure limit and associated-group reconciliation. Omission supplies no agreement or complete-roster confirmation; an associated claim still needs its allocation. |
| `schedule49.calendarYear` | null \| number \| string |  | Box 050 — Four-digit calendar year. E (26) coverage starts in 2024. |
| `schedule49.firstSameCalendarYearFilerAllocation` | array \| boolean \| null \| number \| object \| string |  | Reviewed evidence for the filing corporation's Schedule 49 allocation in its first taxation year in which it was associated with the other CCPC in the current calendar year. Required only when `sameCalendarYearAllocationRuleApplies` is true; the backend matches it to the filing BN and enforces the s.127(10.5)(a) carry-through rule. This is evidence, not a derived box. |
| `schedule49.isAmendedAgreement` | boolean \| null |  | Box 075 — Yes/No: amended agreement flag. null = not yet answered. |
| `schedule49.rosterComplete` | boolean \| null |  | Preparer confirmation that the agreement roster includes every corporation required to join it, including every associated CCPC. null means the completeness review has not been answered. |
| `schedule49.rows` | array \| null |  | Rows of associated corporations in the group (CCPCs + non-CCPCs). |
| `schedule49.rows[]` | object |  |  |
| `schedule49.rows[].businessNumber` | null \| string |  | Box 200 — Column 2: business number (CRA 15-character format or "NR"). |
| `schedule49.rows[].expenditureLimitAllocated` | null \| number \| string |  | Box 400 — Column 4: expenditure limit allocated $. Must be 0 when typeOfCorporationCode is 2 — only associated CCPCs share the expenditure limit allocated under s.127(10.3). The group ceiling is ordinarily the s.127(10.2) TCEC amount, or the s.127(10.32)/(10.6) revenue amount when the associated CCPCs make the reform-year election. |
| `schedule49.rows[].id` | null \| string |  | Stable ordinary row identity retained through selection and reordering. |
| `schedule49.rows[].name` | null \| string |  | Box 100 — Column 1: legal name of the associated corporation. |
| `schedule49.rows[].typeOfCorporationCode` | null \| number \| string |  | Box 300 — Column 3: corporation-type code (1 = CCPC, 2 = non-CCPC). |
| `schedule49.s127_10_22Exclusions` | array |  | Corporations declared not associated under ITA subsection 127(10.22) for the expenditure limit, omitted from Schedule 49 while remaining on Schedule 23. Each entry is an object with businessNumber (nine-digit root, program account or NR) and name. NR requires its legal name and must match one unique Schedule 23 and corporate-group member. Missing or duplicate identities hold the allocation; the declaration is preserved exactly as entered. |
| `schedule49.s127_10_22Exclusions[]` | array \| boolean \| null \| number \| object \| string |  | One corporation deemed not associated by ITA subsection 127(10.22) for the purpose of determining the expenditure limit, so it is lawfully omitted from the s.127(10.3) agreement while staying on the s.125(3) business-limit roster: an object with its businessNumber and name, as on Schedule 23 boxes 100/200. The engine cannot derive the test, so the list is published exactly as the return states it; an absent key declares none, and an entry it cannot read holds Schedule 49 instead of shortening the roster into a false reconciliation. |
| `schedule49.sameCalendarYearAllocationRuleApplies` | array \| boolean \| null \| number \| object \| string |  | Tri-state confirmation for E (26) footnote 2. When the filing CCPC has a prior tax year in the same calendar year and was associated in both years, this records whether another associated CCPC also has tax years in that calendar year. null means the practitioner has not yet resolved applicability; false is affirmative non-applicability. |
| `schedule49.sameCalendarYearAssociationTestComplete` | boolean \| null |  | New-client attestation that the full same-other-CCPC association test was completed and, where applicable, that the amount is from the first return of the calendar year. Only the JSON value true satisfies it; any other non-null value is reported as invalid rather than silently treated as false. |
| `schedule490` | array \| boolean \| null \| number \| object \| string |  |  |
| `schedule5` | null \| object |  | The Schedule 5 input blob holding the provincial and territorial allocation answers. Omit it when the corporation sends no Schedule 5 input. |
| `schedule5.bcVentureCapital` | null \| object |  | Retained provincial programme evidence. Missing facts remain unanswered; monetary source values may be exact decimal text. |
| `schedule5.bcVentureCapital.actualCreditReceipts` | array |  | Actual provincial-credit receipt review. Preserve original receipt history; current entitlement is not a receipt. Unknown review holds filing even when a current claim is declined. |

Continued in [part 2 of 2](https://docs.filemark.ca/computations/schedule428.md?part=2).
