[
  {
    "name": "Account",
    "fields": [
      { "name": "id", "type": "Bytes!" },
      { "name": "asBondFacet", "type": "BondFacet" },
      {
        "name": "BondParametersEditedPart1Events",
        "type": "BondParametersEditedPart1!",
        "derived": "emitter"
      },
      {
        "name": "BondParametersEditedPart2Events",
        "type": "BondParametersEditedPart2!",
        "derived": "emitter"
      },
      {
        "name": "CouponsComputedEvents",
        "type": "CouponsComputed!",
        "derived": "emitter"
      },
      {
        "name": "BondsWithdrawnEvents",
        "type": "BondsWithdrawn!",
        "derived": "emitter"
      },
      {
        "name": "BondIssuedEvents",
        "type": "BondIssued!",
        "derived": "emitter"
      },
      {
        "name": "BalloonRateSetEvents",
        "type": "BalloonRateSet!",
        "derived": "emitter"
      },
      {
        "name": "GracePeriodSetEvents",
        "type": "GracePeriodSet!",
        "derived": "emitter"
      },
      {
        "name": "CostEmittentSetEvents",
        "type": "CostEmittentSet!",
        "derived": "emitter"
      },
      {
        "name": "CapitalAmortizationFreePeriodSetEvents",
        "type": "CapitalAmortizationFreePeriodSet!",
        "derived": "emitter"
      },
      {
        "name": "InvestorsCountChangedEvents",
        "type": "InvestorsCountChanged!",
        "derived": "emitter"
      },
      {
        "name": "RevocationsCountChangedEvents",
        "type": "RevocationsCountChanged!",
        "derived": "emitter"
      },
      {
        "name": "CampaignStartAndEndDateSetEvents",
        "type": "CampaignStartAndEndDateSet!",
        "derived": "emitter"
      },
      {
        "name": "CampaignPausedEvents",
        "type": "CampaignPaused!",
        "derived": "emitter"
      },
      {
        "name": "CampaignUnpausedEvents",
        "type": "CampaignUnpaused!",
        "derived": "emitter"
      },
      {
        "name": "MinAndMaxAmountSetEvents",
        "type": "MinAndMaxAmountSet!",
        "derived": "emitter"
      },
      {
        "name": "BondTransferrerdEvents",
        "type": "BondTransferred!",
        "derived": "emitter"
      },
      {
        "name": "ReservedAmountChangedEvents",
        "type": "ReservedAmountChanged!",
        "derived": "emitter"
      },
      {
        "name": "CouponStatusChangedEvents",
        "type": "CouponStatusChanged!",
        "derived": "emitter"
      }
    ]
  },
  {
    "name": "BondFacet",
    "fields": [
      { "name": "asAccount", "type": "Account" },
      {
        "name": "BondInitializedPart1Event",
        "type": "BondInitializedPart1!",
        "derived": "contract"
      },
      {
        "name": "BondInitializedPart2Event",
        "type": "BondInitializedPart2!",
        "derived": "contract"
      },
      {
        "name": "BondParametersEditedPart1Event",
        "type": "BondParametersEditedPart1!",
        "derived": "contract"
      },
      {
        "name": "BondParametersEditedPart2Event",
        "type": "BondParametersEditedPart2!",
        "derived": "contract"
      },
      {
        "name": "CouponsComputedEvent",
        "type": "CouponsComputed!",
        "derived": "contract"
      },
      {
        "name": "BondsWithdrawn",
        "type": "BondsWithdrawn!",
        "derived": "contract"
      },
      { "name": "BondIssued", "type": "BondIssued!", "derived": "contract" },
      {
        "name": "BalloonRateSet",
        "type": "BalloonRateSet!",
        "derived": "contract"
      },
      {
        "name": "GracePeriodSet",
        "type": "GracePeriodSet!",
        "derived": "contract"
      },
      {
        "name": "CapitalAmortizationFreePeriodSet",
        "type": "CapitalAmortizationFreePeriodSet!",
        "derived": "contract"
      },
      {
        "name": "CostEmittentSet",
        "type": "CostEmittentSet!",
        "derived": "contract"
      },
      {
        "name": "InvestorsCountChanged",
        "type": "InvestorsCountChanged!",
        "derived": "contract"
      },
      {
        "name": "RevocationsCountChanged",
        "type": "RevocationsCountChanged!",
        "derived": "contract"
      },
      {
        "name": "CampaignStartAndEndDateSet",
        "type": "CampaignStartAndEndDateSet!",
        "derived": "contract"
      },
      {
        "name": "CampaignPaused",
        "type": "CampaignPaused!",
        "derived": "contract"
      },
      {
        "name": "CampaignUnpaused",
        "type": "CampaignUnpaused!",
        "derived": "contract"
      },
      {
        "name": "MinAndMaxAmountSet",
        "type": "MinAndMaxAmountSet!",
        "derived": "contract"
      },
      {
        "name": "IssueDateSet",
        "type": "IssueDateSet!",
        "derived": "contract"
      },
      {
        "name": "BondTransferred",
        "type": "BondTransferred!",
        "derived": "contract"
      },
      {
        "name": "ReservedAmountChanged",
        "type": "ReservedAmountChanged!",
        "derived": "contract"
      },
      {
        "name": "CouponStatusChanged",
        "type": "CouponStatusChanged!",
        "derived": "contract"
      }
    ]
  },
  {
    "name": "Bond",
    "fields": [
      { "name": "contract", "type": "BondFacet!" },
      { "name": "coupure", "type": "BigInt!" },
      { "name": "grossInterestRate", "type": "BigDecimal!" },
      { "name": "netReturn", "type": "BigDecimal!" },
      { "name": "withholdingTaxRate", "type": "BigDecimal!" },
      { "name": "periodicInterestRate", "type": "BigDecimal!" },
      { "name": "holders", "type": "[Account!]!" },
      { "name": "holdersAmount", "type": "[BigInt!]!" },
      { "name": "reservationsByAddresses", "type": "[Account!]!" },
      { "name": "reservedAmountByAddresses", "type": "[Account!]!" },
      { "name": "reservedAmount", "type": "BigInt!" },
      { "name": "periodicity", "type": "String!" },
      { "name": "methodOfRepayment", "type": "String!" },
      { "name": "duration", "type": "BigInt!" },
      { "name": "gracePeriod", "type": "BigInt!" },
      { "name": "balloonPercentage", "type": "BigDecimal!" },
      { "name": "capitalAmortizationFreePeriod", "type": "BigInt!" },
      { "name": "costEmittent", "type": "BigDecimal!" },
      { "name": "investorsCount", "type": "BigInt!" },
      { "name": "revocationsCount", "type": "BigInt!" },
      { "name": "campaignStartDate", "type": "BigInt!" },
      { "name": "campaignEndDate", "type": "BigInt!" },
      { "name": "paused", "type": "Boolean!" },
      { "name": "maxAmountPerInvestor", "type": "BigDecimal!" },
      { "name": "maxSupply", "type": "BigDecimal!" },
      { "name": "maxAmount", "type": "BigInt!" },
      { "name": "minAmount", "type": "BigInt!" },
      { "name": "issueDate", "type": "BigInt!" },
      { "name": "formOfFinancing", "type": "String!" },
      { "name": "status", "type": "String!" },
      { "name": "cancelRef", "type": "String" },
      { "name": "withdrawRef", "type": "String" },
      { "name": "withdrawStartTime", "type": "BigInt!" },
      { "name": "withdrawEndTime", "type": "BigInt!" },
      { "name": "cancelStartTime", "type": "BigInt!" },
      { "name": "cancelEndTime", "type": "BigInt!" },
      { "name": "hashLockCancel", "type": "Bytes" },
      { "name": "hashLockWithdraw", "type": "Bytes" },
      { "name": "issuedAmount", "type": "BigInt" },
      { "name": "totalAmountOfAssignedBonds", "type": "BigInt!" },
      { "name": "terminated", "type": "Boolean!" },
      { "name": "isReplacementBond", "type": "Boolean!" },
      { "name": "oldBondId", "type": "BigInt" }
    ]
  },
  {
    "name": "Holder",
    "fields": [
      { "name": "contract", "type": "BondFacet!" },
      { "name": "account", "type": "Account!" },
      { "name": "amount", "type": "BigInt!" },
      { "name": "bondId", "type": "String!" },
      { "name": "dateOfOwnership", "type": "BigInt!" }
    ]
  },
  {
    "name": "Transfer",
    "fields": [
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondTransferId", "type": "String!" },
      { "name": "from", "type": "Account!" },
      { "name": "to", "type": "Account!" },
      { "name": "bondId", "type": "String! " },
      { "name": "transferDate", "type": "BigInt!" },
      { "name": "amount", "type": "BigInt!" }
    ]
  },
  {
    "name": "CouponList",
    "fields": [
      { "name": "contract", "type": "BondFacet!" },
      { "name": "couponDate", "type": "[BigInt!]!" },
      { "name": "newCouponDate", "type": "[BigInt!]!" },
      { "name": "remainingCapital", "type": "[BigDecimal!]!" },
      { "name": "capitalRepayment", "type": "[BigDecimal!]!" },
      { "name": "grossInterestRate", "type": "[BigDecimal!]!" },
      { "name": "netInterestRate", "type": "[BigDecimal!]!" },
      { "name": "grossInterest", "type": "[BigDecimal!]!" },
      { "name": "netInterest", "type": "[BigDecimal!]!" },
      { "name": "feeAmount", "type": "[BigDecimal!]!" },
      { "name": "stepUp", "type": "[BigDecimal!]!" },
      { "name": "stepDown", "type": "[BigDecimal!]!" },
      { "name": "fee", "type": "[BigDecimal!]!" },
      { "name": "status", "type": "[String!]!" },
      { "name": "capitalAndInterest", "type": "[BigDecimal!]!" },
      { "name": "totalToBeRepaid", "type": "BigDecimal!" },
      { "name": "totalAmountRepaid", "type": "BigDecimal!" },
      { "name": "capitalRepaid", "type": "BigDecimal!" },
      { "name": "interestRepaid", "type": "BigDecimal!" },
      { "name": "interestTotal", "type": "BigDecimal!" }
    ]
  },
  {
    "name": "BondInitializedPart1",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "coupure", "type": "BigInt!" },
      { "name": "interestNum", "type": "BigDecimal!" },
      { "name": "interestDen", "type": "BigDecimal!" },
      { "name": "withholdingTaxNum", "type": "BigDecimal!" },
      { "name": "withholdingTaxDen", "type": "BigDecimal!" },
      { "name": "issuer", "type": "Account!" }
    ]
  },
  {
    "name": "BondInitializedPart2",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "periodicInterestRate", "type": "BigDecimal!" },
      { "name": "periodicity", "type": "BigInt!" },
      { "name": "duration", "type": "BigInt!" },
      { "name": "methodOfRepayment", "type": "BigInt!" },
      { "name": "netReturn", "type": "BigDecimal!" },
      { "name": "maxSupply", "type": "BigDecimal!" },
      { "name": "formOfFinancing", "type": "BigInt!" }
    ]
  },
  {
    "name": "BondParametersEditedPart1",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "coupure", "type": "BigInt!" },
      { "name": "interestNum", "type": "BigDecimal!" },
      { "name": "interestDen", "type": "BigDecimal!" },
      { "name": "withholdingTaxNum", "type": "BigDecimal!" },
      { "name": "withholdingTaxDen", "type": "BigDecimal!" },
      { "name": "issuer", "type": "Account!" }
    ]
  },
  {
    "name": "BondParametersEditedPart2",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "periodicInterestRate", "type": "BigDecimal!" },
      { "name": "periodicity", "type": "BigInt!" },
      { "name": "duration", "type": "BigInt!" },
      { "name": "methodOfRepayment", "type": "BigInt!" },
      { "name": "netReturn", "type": "BigDecimal!" },
      { "name": "maxSupply", "type": "BigDecimal!" },
      { "name": "formOfFinancing", "type": "BigInt!" }
    ]
  },
  {
    "name": "CouponsComputed",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "couponDates", "type": "[BigInt!]" },
      { "name": "remainingCapital", "type": "[BigDecimal!]" },
      { "name": "capitalRepayment", "type": "[BigDecimal!]" },
      { "name": "grossCoupons", "type": "[BigDecimal!]" },
      { "name": "netCoupons", "type": "[BigDecimal!]" }
    ]
  },
  {
    "name": "BondsWithdrawn",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "holder", "type": "Account!" },
      { "name": "amount", "type": "BigInt!" }
    ]
  },
  {
    "name": "BondIssued",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "issueDate", "type": "BigInt!" },
      { "name": "issuedAmount", "type": "BigInt!" }
    ]
  },
  {
    "name": "BondsBurned",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "holder", "type": "Account!" },
      { "name": "amount", "type": "BigInt!" }
    ]
  },
  {
    "name": "BalloonRateSet",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "balloonRateNum", "type": "BigDecimal!" },
      { "name": "balloonRateDen", "type": "BigDecimal!" }
    ]
  },
  {
    "name": "CostEmittentSet",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "costEmittentNum", "type": "BigDecimal!" },
      { "name": "costEmittentDen", "type": "BigDecimal!" }
    ]
  },
  {
    "name": "GracePeriodSet",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "gracePeriodDuration", "type": "BigInt!" }
    ]
  },
  {
    "name": "CapitalAmortizationFreePeriodSet",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "CapitalAmortizationPeriodDuration", "type": "BigInt!" }
    ]
  },
  {
    "name": "InvestorsCountChanged",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "investorsCount", "type": "BigInt!" }
    ]
  },
  {
    "name": "RevocationsCountChanged",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "revocationsCount", "type": "BigInt!" }
    ]
  },
  {
    "name": "ReservedAmountChanged",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "reservedAmount", "type": "BigInt!" }
    ]
  },
  {
    "name": "CouponStatusChanged",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "lineNumber", "type": "BigInt!" }
    ]
  },
  {
    "name": "CampaignStartAndEndDateSet",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "campaignStartDate", "type": "BigInt!" },
      { "name": "campaignEndDate", "type": "BigInt!" }
    ]
  },
  {
    "name": "CampaignPaused",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" }
    ]
  },
  {
    "name": "CampaignUnpaused",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" }
    ]
  },
  {
    "name": "MinAndMaxAmountSet",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "minAmount", "type": "BigInt!" },
      { "name": "maxAmount", "type": "BigInt!" },
      { "name": "maxAmountPerInvestor", "type": "BigDecimal!" }
    ]
  },
  {
    "name": "IssueDateSet",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "issueDate", "type": "BigInt!" }
    ]
  },
  {
    "name": "BondTransferred",
    "parent": "Event",
    "fields": [
      { "name": "emitter", "type": "Account!" },
      { "name": "transaction", "type": "Transaction!" },
      { "name": "timestamp", "type": "BigInt!" },
      { "name": "contract", "type": "BondFacet!" },
      { "name": "bondTransferId", "type": "String!" },
      { "name": "bondId", "type": "BigInt!" },
      { "name": "oldAccount", "type": "Account!" },
      { "name": "newAccount", "type": "Account!" },
      { "name": "amount", "type": "BigInt!" }
    ]
  }
]
