"use strict";
/* eslint-disable-next-line no-unused-vars */
function __export(m) {
/* eslint-disable-next-line no-prototype-builtins */
    for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
}
Object.defineProperty(exports, "__esModule", { value: true });
/* eslint-disable-next-line no-unused-vars */
var jtv = require('@mojotech/json-type-validation');
/* eslint-disable-next-line no-unused-vars */
var damlTypes = require('@daml/types');
/* eslint-disable-next-line no-unused-vars */
var damlLedger = require('@daml/ledger');

var pkg9e70a8b3510d617f8a136213f33d6a903a10ca0eeec76bb06ba55d1ed9680f69 = require('../../../DA/Internal/Template');

var Fairmint_OpenCapTable_ConvertibleAcceptance = require('../../../Fairmint/OpenCapTable/ConvertibleAcceptance/module');
var Fairmint_OpenCapTable_ConvertibleCancellation = require('../../../Fairmint/OpenCapTable/ConvertibleCancellation/module');
var Fairmint_OpenCapTable_ConvertibleConversion = require('../../../Fairmint/OpenCapTable/ConvertibleConversion/module');
var Fairmint_OpenCapTable_ConvertibleIssuance = require('../../../Fairmint/OpenCapTable/ConvertibleIssuance/module');
var Fairmint_OpenCapTable_ConvertibleRetraction = require('../../../Fairmint/OpenCapTable/ConvertibleRetraction/module');
var Fairmint_OpenCapTable_ConvertibleTransfer = require('../../../Fairmint/OpenCapTable/ConvertibleTransfer/module');
var Fairmint_OpenCapTable_Document = require('../../../Fairmint/OpenCapTable/Document/module');
var Fairmint_OpenCapTable_EquityCompensationAcceptance = require('../../../Fairmint/OpenCapTable/EquityCompensationAcceptance/module');
var Fairmint_OpenCapTable_EquityCompensationCancellation = require('../../../Fairmint/OpenCapTable/EquityCompensationCancellation/module');
var Fairmint_OpenCapTable_EquityCompensationExercise = require('../../../Fairmint/OpenCapTable/EquityCompensationExercise/module');
var Fairmint_OpenCapTable_EquityCompensationIssuance = require('../../../Fairmint/OpenCapTable/EquityCompensationIssuance/module');
var Fairmint_OpenCapTable_EquityCompensationRelease = require('../../../Fairmint/OpenCapTable/EquityCompensationRelease/module');
var Fairmint_OpenCapTable_EquityCompensationRepricing = require('../../../Fairmint/OpenCapTable/EquityCompensationRepricing/module');
var Fairmint_OpenCapTable_EquityCompensationRetraction = require('../../../Fairmint/OpenCapTable/EquityCompensationRetraction/module');
var Fairmint_OpenCapTable_EquityCompensationTransfer = require('../../../Fairmint/OpenCapTable/EquityCompensationTransfer/module');
var Fairmint_OpenCapTable_IssuerAuthorizedSharesAdjustment = require('../../../Fairmint/OpenCapTable/IssuerAuthorizedSharesAdjustment/module');
var Fairmint_OpenCapTable_Stakeholder = require('../../../Fairmint/OpenCapTable/Stakeholder/module');
var Fairmint_OpenCapTable_StakeholderRelationshipChangeEvent = require('../../../Fairmint/OpenCapTable/StakeholderRelationshipChangeEvent/module');
var Fairmint_OpenCapTable_StakeholderStatusChangeEvent = require('../../../Fairmint/OpenCapTable/StakeholderStatusChangeEvent/module');
var Fairmint_OpenCapTable_StockAcceptance = require('../../../Fairmint/OpenCapTable/StockAcceptance/module');
var Fairmint_OpenCapTable_StockCancellation = require('../../../Fairmint/OpenCapTable/StockCancellation/module');
var Fairmint_OpenCapTable_StockClass = require('../../../Fairmint/OpenCapTable/StockClass/module');
var Fairmint_OpenCapTable_StockClassAuthorizedSharesAdjustment = require('../../../Fairmint/OpenCapTable/StockClassAuthorizedSharesAdjustment/module');
var Fairmint_OpenCapTable_StockClassConversionRatioAdjustment = require('../../../Fairmint/OpenCapTable/StockClassConversionRatioAdjustment/module');
var Fairmint_OpenCapTable_StockClassSplit = require('../../../Fairmint/OpenCapTable/StockClassSplit/module');
var Fairmint_OpenCapTable_StockConsolidation = require('../../../Fairmint/OpenCapTable/StockConsolidation/module');
var Fairmint_OpenCapTable_StockConversion = require('../../../Fairmint/OpenCapTable/StockConversion/module');
var Fairmint_OpenCapTable_StockIssuance = require('../../../Fairmint/OpenCapTable/StockIssuance/module');
var Fairmint_OpenCapTable_StockLegendTemplate = require('../../../Fairmint/OpenCapTable/StockLegendTemplate/module');
var Fairmint_OpenCapTable_StockPlan = require('../../../Fairmint/OpenCapTable/StockPlan/module');
var Fairmint_OpenCapTable_StockPlanPoolAdjustment = require('../../../Fairmint/OpenCapTable/StockPlanPoolAdjustment/module');
var Fairmint_OpenCapTable_StockPlanReturnToPool = require('../../../Fairmint/OpenCapTable/StockPlanReturnToPool/module');
var Fairmint_OpenCapTable_StockReissuance = require('../../../Fairmint/OpenCapTable/StockReissuance/module');
var Fairmint_OpenCapTable_StockRepurchase = require('../../../Fairmint/OpenCapTable/StockRepurchase/module');
var Fairmint_OpenCapTable_StockRetraction = require('../../../Fairmint/OpenCapTable/StockRetraction/module');
var Fairmint_OpenCapTable_StockTransfer = require('../../../Fairmint/OpenCapTable/StockTransfer/module');
var Fairmint_OpenCapTable_Types = require('../../../Fairmint/OpenCapTable/Types/module');
var Fairmint_OpenCapTable_VestingAcceleration = require('../../../Fairmint/OpenCapTable/VestingAcceleration/module');
var Fairmint_OpenCapTable_VestingEvent = require('../../../Fairmint/OpenCapTable/VestingEvent/module');
var Fairmint_OpenCapTable_VestingStart = require('../../../Fairmint/OpenCapTable/VestingStart/module');
var Fairmint_OpenCapTable_VestingTerms = require('../../../Fairmint/OpenCapTable/VestingTerms/module');
var Fairmint_OpenCapTable_WarrantAcceptance = require('../../../Fairmint/OpenCapTable/WarrantAcceptance/module');
var Fairmint_OpenCapTable_WarrantCancellation = require('../../../Fairmint/OpenCapTable/WarrantCancellation/module');
var Fairmint_OpenCapTable_WarrantExercise = require('../../../Fairmint/OpenCapTable/WarrantExercise/module');
var Fairmint_OpenCapTable_WarrantIssuance = require('../../../Fairmint/OpenCapTable/WarrantIssuance/module');
var Fairmint_OpenCapTable_WarrantRetraction = require('../../../Fairmint/OpenCapTable/WarrantRetraction/module');
var Fairmint_OpenCapTable_WarrantTransfer = require('../../../Fairmint/OpenCapTable/WarrantTransfer/module');


exports.OcfInitialSharesAuthorized = {
  decoder: damlTypes.lazyMemo(function () { return jtv.oneOf(jtv.object({tag: jtv.constant('OcfInitialSharesNumeric'), value: damlTypes.Numeric(10).decoder, }), jtv.object({tag: jtv.constant('OcfInitialSharesEnum'), value: exports.OcfAuthorizedShares.decoder, })); }),
  encode: function (__typed__) {
  switch(__typed__.tag) {
    case 'OcfInitialSharesNumeric': return {tag: __typed__.tag, value: damlTypes.Numeric(10).encode(__typed__.value)};
    case 'OcfInitialSharesEnum': return {tag: __typed__.tag, value: exports.OcfAuthorizedShares.encode(__typed__.value)};
    default: throw 'unrecognized type tag: ' + __typed__.tag + ' while serializing a value of type OcfInitialSharesAuthorized';
  }
}
,
};



exports.OcfAuthorizedShares = {
  OcfAuthorizedSharesNotApplicable: 'OcfAuthorizedSharesNotApplicable',
  OcfAuthorizedSharesUnlimited: 'OcfAuthorizedSharesUnlimited',
  keys: ['OcfAuthorizedSharesNotApplicable','OcfAuthorizedSharesUnlimited',],
  decoder: damlTypes.lazyMemo(function () { return jtv.oneOf(jtv.constant(exports.OcfAuthorizedShares.OcfAuthorizedSharesNotApplicable), jtv.constant(exports.OcfAuthorizedShares.OcfAuthorizedSharesUnlimited)); }),
  encode: function (__typed__) { return __typed__; },
};



exports.OcfIssuerData = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({id: damlTypes.Text.decoder, country_of_formation: damlTypes.Text.decoder, formation_date: damlTypes.Time.decoder, legal_name: damlTypes.Text.decoder, comments: damlTypes.List(damlTypes.Text).decoder, tax_ids: damlTypes.List(Fairmint_OpenCapTable_Types.OcfTaxID).decoder, address: jtv.Decoder.withDefault(null, damlTypes.Optional(Fairmint_OpenCapTable_Types.OcfAddress).decoder), country_subdivision_of_formation: jtv.Decoder.withDefault(null, damlTypes.Optional(damlTypes.Text).decoder), country_subdivision_name_of_formation: jtv.Decoder.withDefault(null, damlTypes.Optional(damlTypes.Text).decoder), dba: jtv.Decoder.withDefault(null, damlTypes.Optional(damlTypes.Text).decoder), email: jtv.Decoder.withDefault(null, damlTypes.Optional(Fairmint_OpenCapTable_Types.OcfEmail).decoder), initial_shares_authorized: jtv.Decoder.withDefault(null, damlTypes.Optional(exports.OcfInitialSharesAuthorized).decoder), phone: jtv.Decoder.withDefault(null, damlTypes.Optional(Fairmint_OpenCapTable_Types.OcfPhone).decoder), }); }),
  encode: function (__typed__) {
  return {
    id: damlTypes.Text.encode(__typed__.id),
    country_of_formation: damlTypes.Text.encode(__typed__.country_of_formation),
    formation_date: damlTypes.Time.encode(__typed__.formation_date),
    legal_name: damlTypes.Text.encode(__typed__.legal_name),
    comments: damlTypes.List(damlTypes.Text).encode(__typed__.comments),
    tax_ids: damlTypes.List(Fairmint_OpenCapTable_Types.OcfTaxID).encode(__typed__.tax_ids),
    address: damlTypes.Optional(Fairmint_OpenCapTable_Types.OcfAddress).encode(__typed__.address),
    country_subdivision_of_formation: damlTypes.Optional(damlTypes.Text).encode(__typed__.country_subdivision_of_formation),
    country_subdivision_name_of_formation: damlTypes.Optional(damlTypes.Text).encode(__typed__.country_subdivision_name_of_formation),
    dba: damlTypes.Optional(damlTypes.Text).encode(__typed__.dba),
    email: damlTypes.Optional(Fairmint_OpenCapTable_Types.OcfEmail).encode(__typed__.email),
    initial_shares_authorized: damlTypes.Optional(exports.OcfInitialSharesAuthorized).encode(__typed__.initial_shares_authorized),
    phone: damlTypes.Optional(Fairmint_OpenCapTable_Types.OcfPhone).encode(__typed__.phone),
  };
}
,
};



exports.ArchiveByIssuer = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({}); }),
  encode: function (__typed__) {
  return {
  };
}
,
};



exports.CreateWarrantIssuance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({issuance_data: Fairmint_OpenCapTable_WarrantIssuance.OcfWarrantIssuanceData.decoder, }); }),
  encode: function (__typed__) {
  return {
    issuance_data: Fairmint_OpenCapTable_WarrantIssuance.OcfWarrantIssuanceData.encode(__typed__.issuance_data),
  };
}
,
};



exports.CreateWarrantRetraction = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({retraction_data: Fairmint_OpenCapTable_WarrantRetraction.OcfWarrantRetractionTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    retraction_data: Fairmint_OpenCapTable_WarrantRetraction.OcfWarrantRetractionTxData.encode(__typed__.retraction_data),
  };
}
,
};



exports.CreateWarrantTransfer = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({transfer_data: Fairmint_OpenCapTable_WarrantTransfer.OcfWarrantTransferTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    transfer_data: Fairmint_OpenCapTable_WarrantTransfer.OcfWarrantTransferTxData.encode(__typed__.transfer_data),
  };
}
,
};



exports.CreateWarrantExercise = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({exercise_data: Fairmint_OpenCapTable_WarrantExercise.OcfWarrantExerciseTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    exercise_data: Fairmint_OpenCapTable_WarrantExercise.OcfWarrantExerciseTxData.encode(__typed__.exercise_data),
  };
}
,
};



exports.CreateWarrantCancellation = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({cancellation_data: Fairmint_OpenCapTable_WarrantCancellation.OcfWarrantCancellationTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    cancellation_data: Fairmint_OpenCapTable_WarrantCancellation.OcfWarrantCancellationTxData.encode(__typed__.cancellation_data),
  };
}
,
};



exports.CreateWarrantAcceptance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({acceptance_data: Fairmint_OpenCapTable_WarrantAcceptance.OcfWarrantAcceptanceTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    acceptance_data: Fairmint_OpenCapTable_WarrantAcceptance.OcfWarrantAcceptanceTxData.encode(__typed__.acceptance_data),
  };
}
,
};



exports.CreateVestingTerms = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({vesting_terms_data: Fairmint_OpenCapTable_VestingTerms.OcfVestingTermsData.decoder, }); }),
  encode: function (__typed__) {
  return {
    vesting_terms_data: Fairmint_OpenCapTable_VestingTerms.OcfVestingTermsData.encode(__typed__.vesting_terms_data),
  };
}
,
};



exports.CreateVestingStart = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({vesting_data: Fairmint_OpenCapTable_VestingStart.OcfVestingStartTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    vesting_data: Fairmint_OpenCapTable_VestingStart.OcfVestingStartTxData.encode(__typed__.vesting_data),
  };
}
,
};



exports.CreateVestingEvent = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({vesting_data: Fairmint_OpenCapTable_VestingEvent.OcfVestingEventTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    vesting_data: Fairmint_OpenCapTable_VestingEvent.OcfVestingEventTxData.encode(__typed__.vesting_data),
  };
}
,
};



exports.CreateVestingAcceleration = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({acceleration_data: Fairmint_OpenCapTable_VestingAcceleration.OcfVestingAccelerationTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    acceleration_data: Fairmint_OpenCapTable_VestingAcceleration.OcfVestingAccelerationTxData.encode(__typed__.acceleration_data),
  };
}
,
};



exports.CreateStockRetraction = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({retraction_data: Fairmint_OpenCapTable_StockRetraction.OcfStockRetractionTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    retraction_data: Fairmint_OpenCapTable_StockRetraction.OcfStockRetractionTxData.encode(__typed__.retraction_data),
  };
}
,
};



exports.CreateStockTransfer = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({transfer_data: Fairmint_OpenCapTable_StockTransfer.OcfStockTransferTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    transfer_data: Fairmint_OpenCapTable_StockTransfer.OcfStockTransferTxData.encode(__typed__.transfer_data),
  };
}
,
};



exports.CreateStockRepurchase = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({repurchase_data: Fairmint_OpenCapTable_StockRepurchase.OcfStockRepurchaseTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    repurchase_data: Fairmint_OpenCapTable_StockRepurchase.OcfStockRepurchaseTxData.encode(__typed__.repurchase_data),
  };
}
,
};



exports.CreateStockReissuance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({reissuance_data: Fairmint_OpenCapTable_StockReissuance.OcfStockReissuanceTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    reissuance_data: Fairmint_OpenCapTable_StockReissuance.OcfStockReissuanceTxData.encode(__typed__.reissuance_data),
  };
}
,
};



exports.CreateStockPlanReturnToPool = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({return_data: Fairmint_OpenCapTable_StockPlanReturnToPool.OcfStockPlanReturnToPoolTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    return_data: Fairmint_OpenCapTable_StockPlanReturnToPool.OcfStockPlanReturnToPoolTxData.encode(__typed__.return_data),
  };
}
,
};



exports.CreateStockPlanPoolAdjustment = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({adjustment_data: Fairmint_OpenCapTable_StockPlanPoolAdjustment.OcfStockPlanPoolAdjustmentTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    adjustment_data: Fairmint_OpenCapTable_StockPlanPoolAdjustment.OcfStockPlanPoolAdjustmentTxData.encode(__typed__.adjustment_data),
  };
}
,
};



exports.CreateStockPlan = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({plan_data: Fairmint_OpenCapTable_StockPlan.OcfStockPlanData.decoder, }); }),
  encode: function (__typed__) {
  return {
    plan_data: Fairmint_OpenCapTable_StockPlan.OcfStockPlanData.encode(__typed__.plan_data),
  };
}
,
};



exports.CreateStockLegendTemplate = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({template_data: Fairmint_OpenCapTable_StockLegendTemplate.OcfStockLegendTemplateData.decoder, }); }),
  encode: function (__typed__) {
  return {
    template_data: Fairmint_OpenCapTable_StockLegendTemplate.OcfStockLegendTemplateData.encode(__typed__.template_data),
  };
}
,
};



exports.CreateStockIssuance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({issuance_data: Fairmint_OpenCapTable_StockIssuance.OcfStockIssuanceData.decoder, }); }),
  encode: function (__typed__) {
  return {
    issuance_data: Fairmint_OpenCapTable_StockIssuance.OcfStockIssuanceData.encode(__typed__.issuance_data),
  };
}
,
};



exports.CreateStockConversion = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({conversion_data: Fairmint_OpenCapTable_StockConversion.OcfStockConversionTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    conversion_data: Fairmint_OpenCapTable_StockConversion.OcfStockConversionTxData.encode(__typed__.conversion_data),
  };
}
,
};



exports.CreateStockConsolidation = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({consolidation_data: Fairmint_OpenCapTable_StockConsolidation.OcfStockConsolidationTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    consolidation_data: Fairmint_OpenCapTable_StockConsolidation.OcfStockConsolidationTxData.encode(__typed__.consolidation_data),
  };
}
,
};



exports.CreateStockClassSplit = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({split_data: Fairmint_OpenCapTable_StockClassSplit.OcfStockClassSplitTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    split_data: Fairmint_OpenCapTable_StockClassSplit.OcfStockClassSplitTxData.encode(__typed__.split_data),
  };
}
,
};



exports.CreateStockClassConversionRatioAdjustment = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({adjustment_data: Fairmint_OpenCapTable_StockClassConversionRatioAdjustment.OcfStockClassConversionRatioAdjustmentTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    adjustment_data: Fairmint_OpenCapTable_StockClassConversionRatioAdjustment.OcfStockClassConversionRatioAdjustmentTxData.encode(__typed__.adjustment_data),
  };
}
,
};



exports.CreateStockClassAuthorizedSharesAdjustment = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({adjustment_data: Fairmint_OpenCapTable_StockClassAuthorizedSharesAdjustment.OcfStockClassAuthorizedSharesAdjustmentTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    adjustment_data: Fairmint_OpenCapTable_StockClassAuthorizedSharesAdjustment.OcfStockClassAuthorizedSharesAdjustmentTxData.encode(__typed__.adjustment_data),
  };
}
,
};



exports.CreateStockClass = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({stock_class_data: Fairmint_OpenCapTable_StockClass.OcfStockClassData.decoder, }); }),
  encode: function (__typed__) {
  return {
    stock_class_data: Fairmint_OpenCapTable_StockClass.OcfStockClassData.encode(__typed__.stock_class_data),
  };
}
,
};



exports.CreateStockCancellation = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({cancellation_data: Fairmint_OpenCapTable_StockCancellation.OcfStockCancellationTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    cancellation_data: Fairmint_OpenCapTable_StockCancellation.OcfStockCancellationTxData.encode(__typed__.cancellation_data),
  };
}
,
};



exports.CreateStockAcceptance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({acceptance_data: Fairmint_OpenCapTable_StockAcceptance.OcfStockAcceptanceTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    acceptance_data: Fairmint_OpenCapTable_StockAcceptance.OcfStockAcceptanceTxData.encode(__typed__.acceptance_data),
  };
}
,
};



exports.CreateStakeholderStatusChangeEvent = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({event_data: Fairmint_OpenCapTable_StakeholderStatusChangeEvent.OcfStakeholderStatusChangeEventData.decoder, }); }),
  encode: function (__typed__) {
  return {
    event_data: Fairmint_OpenCapTable_StakeholderStatusChangeEvent.OcfStakeholderStatusChangeEventData.encode(__typed__.event_data),
  };
}
,
};



exports.CreateStakeholderRelationshipChangeEvent = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({event_data: Fairmint_OpenCapTable_StakeholderRelationshipChangeEvent.OcfStakeholderRelationshipChangeEventData.decoder, }); }),
  encode: function (__typed__) {
  return {
    event_data: Fairmint_OpenCapTable_StakeholderRelationshipChangeEvent.OcfStakeholderRelationshipChangeEventData.encode(__typed__.event_data),
  };
}
,
};



exports.CreateStakeholder = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({stakeholder_data: Fairmint_OpenCapTable_Stakeholder.OcfStakeholderData.decoder, }); }),
  encode: function (__typed__) {
  return {
    stakeholder_data: Fairmint_OpenCapTable_Stakeholder.OcfStakeholderData.encode(__typed__.stakeholder_data),
  };
}
,
};



exports.CreateIssuerAuthorizedSharesAdjustment = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({adjustment_data: Fairmint_OpenCapTable_IssuerAuthorizedSharesAdjustment.OcfIssuerAuthorizedSharesAdjustmentTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    adjustment_data: Fairmint_OpenCapTable_IssuerAuthorizedSharesAdjustment.OcfIssuerAuthorizedSharesAdjustmentTxData.encode(__typed__.adjustment_data),
  };
}
,
};



exports.CreateEquityCompensationRetraction = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({retraction_data: Fairmint_OpenCapTable_EquityCompensationRetraction.OcfEquityCompensationRetractionTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    retraction_data: Fairmint_OpenCapTable_EquityCompensationRetraction.OcfEquityCompensationRetractionTxData.encode(__typed__.retraction_data),
  };
}
,
};



exports.CreateEquityCompensationTransfer = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({transfer_data: Fairmint_OpenCapTable_EquityCompensationTransfer.OcfEquityCompensationTransferTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    transfer_data: Fairmint_OpenCapTable_EquityCompensationTransfer.OcfEquityCompensationTransferTxData.encode(__typed__.transfer_data),
  };
}
,
};



exports.CreateEquityCompensationRepricing = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({repricing_data: Fairmint_OpenCapTable_EquityCompensationRepricing.OcfEquityCompensationRepricingTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    repricing_data: Fairmint_OpenCapTable_EquityCompensationRepricing.OcfEquityCompensationRepricingTxData.encode(__typed__.repricing_data),
  };
}
,
};



exports.CreateEquityCompensationRelease = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({release_data: Fairmint_OpenCapTable_EquityCompensationRelease.OcfEquityCompensationReleaseTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    release_data: Fairmint_OpenCapTable_EquityCompensationRelease.OcfEquityCompensationReleaseTxData.encode(__typed__.release_data),
  };
}
,
};



exports.CreateEquityCompensationIssuance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({issuance_data: Fairmint_OpenCapTable_EquityCompensationIssuance.OcfEquityCompensationIssuanceTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    issuance_data: Fairmint_OpenCapTable_EquityCompensationIssuance.OcfEquityCompensationIssuanceTxData.encode(__typed__.issuance_data),
  };
}
,
};



exports.CreateEquityCompensationExercise = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({exercise_data: Fairmint_OpenCapTable_EquityCompensationExercise.OcfEquityCompensationExerciseData.decoder, }); }),
  encode: function (__typed__) {
  return {
    exercise_data: Fairmint_OpenCapTable_EquityCompensationExercise.OcfEquityCompensationExerciseData.encode(__typed__.exercise_data),
  };
}
,
};



exports.CreateEquityCompensationCancellation = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({cancellation_data: Fairmint_OpenCapTable_EquityCompensationCancellation.OcfEquityCompensationCancellationTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    cancellation_data: Fairmint_OpenCapTable_EquityCompensationCancellation.OcfEquityCompensationCancellationTxData.encode(__typed__.cancellation_data),
  };
}
,
};



exports.CreateEquityCompensationAcceptance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({acceptance_data: Fairmint_OpenCapTable_EquityCompensationAcceptance.OcfEquityCompensationAcceptanceTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    acceptance_data: Fairmint_OpenCapTable_EquityCompensationAcceptance.OcfEquityCompensationAcceptanceTxData.encode(__typed__.acceptance_data),
  };
}
,
};



exports.CreateDocument = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({document_data: Fairmint_OpenCapTable_Document.OcfDocument.decoder, }); }),
  encode: function (__typed__) {
  return {
    document_data: Fairmint_OpenCapTable_Document.OcfDocument.encode(__typed__.document_data),
  };
}
,
};



exports.CreateConvertibleRetraction = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({retraction_data: Fairmint_OpenCapTable_ConvertibleRetraction.OcfConvertibleRetractionTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    retraction_data: Fairmint_OpenCapTable_ConvertibleRetraction.OcfConvertibleRetractionTxData.encode(__typed__.retraction_data),
  };
}
,
};



exports.CreateConvertibleTransfer = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({transfer_data: Fairmint_OpenCapTable_ConvertibleTransfer.OcfConvertibleTransferTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    transfer_data: Fairmint_OpenCapTable_ConvertibleTransfer.OcfConvertibleTransferTxData.encode(__typed__.transfer_data),
  };
}
,
};



exports.CreateConvertibleIssuance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({issuance_data: Fairmint_OpenCapTable_ConvertibleIssuance.OcfConvertibleIssuanceTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    issuance_data: Fairmint_OpenCapTable_ConvertibleIssuance.OcfConvertibleIssuanceTxData.encode(__typed__.issuance_data),
  };
}
,
};



exports.CreateConvertibleConversion = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({conversion_data: Fairmint_OpenCapTable_ConvertibleConversion.OcfConvertibleConversionTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    conversion_data: Fairmint_OpenCapTable_ConvertibleConversion.OcfConvertibleConversionTxData.encode(__typed__.conversion_data),
  };
}
,
};



exports.CreateConvertibleCancellation = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({cancellation_data: Fairmint_OpenCapTable_ConvertibleCancellation.OcfConvertibleCancellationTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    cancellation_data: Fairmint_OpenCapTable_ConvertibleCancellation.OcfConvertibleCancellationTxData.encode(__typed__.cancellation_data),
  };
}
,
};



exports.CreateConvertibleAcceptance = {
  decoder: damlTypes.lazyMemo(function () { return jtv.object({acceptance_data: Fairmint_OpenCapTable_ConvertibleAcceptance.OcfConvertibleAcceptanceTxData.decoder, }); }),
  encode: function (__typed__) {
  return {
    acceptance_data: Fairmint_OpenCapTable_ConvertibleAcceptance.OcfConvertibleAcceptanceTxData.encode(__typed__.acceptance_data),
  };
}
,
};



exports.Issuer = damlTypes.assembleTemplate(
{
  templateId: '#OpenCapTable-v25:Fairmint.OpenCapTable.Issuer:Issuer',
  keyDecoder: damlTypes.lazyMemo(function () { return jtv.constant(undefined); }),
  keyEncode: function () { throw 'EncodeError'; },
  decoder: damlTypes.lazyMemo(function () { return jtv.object({context: Fairmint_OpenCapTable_Types.Context.decoder, issuer_data: exports.OcfIssuerData.decoder, }); }),
  encode: function (__typed__) {
  return {
    context: Fairmint_OpenCapTable_Types.Context.encode(__typed__.context),
    issuer_data: exports.OcfIssuerData.encode(__typed__.issuer_data),
  };
}
,
  CreateConvertibleAcceptance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateConvertibleAcceptance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateConvertibleAcceptance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateConvertibleAcceptance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleAcceptance.ConvertibleAcceptance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleAcceptance.ConvertibleAcceptance).encode(__typed__); },
  },
  CreateConvertibleCancellation: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateConvertibleCancellation',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateConvertibleCancellation.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateConvertibleCancellation.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleCancellation.ConvertibleCancellation).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleCancellation.ConvertibleCancellation).encode(__typed__); },
  },
  CreateConvertibleConversion: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateConvertibleConversion',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateConvertibleConversion.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateConvertibleConversion.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleConversion.ConvertibleConversion).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleConversion.ConvertibleConversion).encode(__typed__); },
  },
  CreateConvertibleIssuance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateConvertibleIssuance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateConvertibleIssuance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateConvertibleIssuance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleIssuance.ConvertibleIssuance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleIssuance.ConvertibleIssuance).encode(__typed__); },
  },
  CreateConvertibleTransfer: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateConvertibleTransfer',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateConvertibleTransfer.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateConvertibleTransfer.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleTransfer.ConvertibleTransfer).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleTransfer.ConvertibleTransfer).encode(__typed__); },
  },
  CreateConvertibleRetraction: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateConvertibleRetraction',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateConvertibleRetraction.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateConvertibleRetraction.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleRetraction.ConvertibleRetraction).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_ConvertibleRetraction.ConvertibleRetraction).encode(__typed__); },
  },
  CreateDocument: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateDocument',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateDocument.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateDocument.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_Document.Document).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_Document.Document).encode(__typed__); },
  },
  CreateEquityCompensationAcceptance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationAcceptance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationAcceptance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationAcceptance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationAcceptance.EquityCompensationAcceptance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationAcceptance.EquityCompensationAcceptance).encode(__typed__); },
  },
  CreateEquityCompensationCancellation: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationCancellation',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationCancellation.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationCancellation.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationCancellation.EquityCompensationCancellation).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationCancellation.EquityCompensationCancellation).encode(__typed__); },
  },
  CreateEquityCompensationExercise: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationExercise',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationExercise.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationExercise.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationExercise.EquityCompensationExercise).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationExercise.EquityCompensationExercise).encode(__typed__); },
  },
  CreateEquityCompensationIssuance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationIssuance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationIssuance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationIssuance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationIssuance.EquityCompensationIssuance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationIssuance.EquityCompensationIssuance).encode(__typed__); },
  },
  CreateEquityCompensationRelease: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationRelease',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationRelease.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationRelease.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationRelease.EquityCompensationRelease).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationRelease.EquityCompensationRelease).encode(__typed__); },
  },
  CreateEquityCompensationRepricing: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationRepricing',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationRepricing.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationRepricing.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationRepricing.EquityCompensationRepricing).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationRepricing.EquityCompensationRepricing).encode(__typed__); },
  },
  CreateEquityCompensationTransfer: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationTransfer',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationTransfer.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationTransfer.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationTransfer.EquityCompensationTransfer).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationTransfer.EquityCompensationTransfer).encode(__typed__); },
  },
  CreateEquityCompensationRetraction: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateEquityCompensationRetraction',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateEquityCompensationRetraction.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateEquityCompensationRetraction.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationRetraction.EquityCompensationRetraction).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_EquityCompensationRetraction.EquityCompensationRetraction).encode(__typed__); },
  },
  CreateIssuerAuthorizedSharesAdjustment: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateIssuerAuthorizedSharesAdjustment',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateIssuerAuthorizedSharesAdjustment.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateIssuerAuthorizedSharesAdjustment.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_IssuerAuthorizedSharesAdjustment.IssuerAuthorizedSharesAdjustment).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_IssuerAuthorizedSharesAdjustment.IssuerAuthorizedSharesAdjustment).encode(__typed__); },
  },
  CreateStakeholder: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStakeholder',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStakeholder.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStakeholder.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_Stakeholder.Stakeholder).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_Stakeholder.Stakeholder).encode(__typed__); },
  },
  CreateStakeholderRelationshipChangeEvent: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStakeholderRelationshipChangeEvent',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStakeholderRelationshipChangeEvent.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStakeholderRelationshipChangeEvent.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StakeholderRelationshipChangeEvent.StakeholderRelationshipChangeEvent).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StakeholderRelationshipChangeEvent.StakeholderRelationshipChangeEvent).encode(__typed__); },
  },
  CreateStakeholderStatusChangeEvent: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStakeholderStatusChangeEvent',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStakeholderStatusChangeEvent.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStakeholderStatusChangeEvent.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StakeholderStatusChangeEvent.StakeholderStatusChangeEvent).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StakeholderStatusChangeEvent.StakeholderStatusChangeEvent).encode(__typed__); },
  },
  CreateStockAcceptance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockAcceptance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockAcceptance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockAcceptance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockAcceptance.StockAcceptance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockAcceptance.StockAcceptance).encode(__typed__); },
  },
  CreateStockCancellation: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockCancellation',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockCancellation.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockCancellation.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockCancellation.StockCancellation).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockCancellation.StockCancellation).encode(__typed__); },
  },
  CreateStockClass: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockClass',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockClass.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockClass.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClass.StockClass).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClass.StockClass).encode(__typed__); },
  },
  CreateStockClassAuthorizedSharesAdjustment: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockClassAuthorizedSharesAdjustment',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockClassAuthorizedSharesAdjustment.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockClassAuthorizedSharesAdjustment.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClassAuthorizedSharesAdjustment.StockClassAuthorizedSharesAdjustment).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClassAuthorizedSharesAdjustment.StockClassAuthorizedSharesAdjustment).encode(__typed__); },
  },
  CreateStockClassConversionRatioAdjustment: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockClassConversionRatioAdjustment',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockClassConversionRatioAdjustment.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockClassConversionRatioAdjustment.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClassConversionRatioAdjustment.StockClassConversionRatioAdjustment).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClassConversionRatioAdjustment.StockClassConversionRatioAdjustment).encode(__typed__); },
  },
  CreateStockClassSplit: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockClassSplit',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockClassSplit.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockClassSplit.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClassSplit.StockClassSplit).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockClassSplit.StockClassSplit).encode(__typed__); },
  },
  CreateStockConsolidation: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockConsolidation',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockConsolidation.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockConsolidation.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockConsolidation.StockConsolidation).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockConsolidation.StockConsolidation).encode(__typed__); },
  },
  CreateStockConversion: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockConversion',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockConversion.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockConversion.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockConversion.StockConversion).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockConversion.StockConversion).encode(__typed__); },
  },
  CreateStockIssuance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockIssuance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockIssuance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockIssuance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockIssuance.StockIssuance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockIssuance.StockIssuance).encode(__typed__); },
  },
  CreateStockLegendTemplate: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockLegendTemplate',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockLegendTemplate.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockLegendTemplate.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockLegendTemplate.StockLegendTemplate).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockLegendTemplate.StockLegendTemplate).encode(__typed__); },
  },
  CreateStockPlan: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockPlan',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockPlan.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockPlan.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockPlan.StockPlan).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockPlan.StockPlan).encode(__typed__); },
  },
  CreateStockPlanPoolAdjustment: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockPlanPoolAdjustment',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockPlanPoolAdjustment.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockPlanPoolAdjustment.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockPlanPoolAdjustment.StockPlanPoolAdjustment).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockPlanPoolAdjustment.StockPlanPoolAdjustment).encode(__typed__); },
  },
  CreateStockPlanReturnToPool: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockPlanReturnToPool',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockPlanReturnToPool.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockPlanReturnToPool.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockPlanReturnToPool.StockPlanReturnToPool).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockPlanReturnToPool.StockPlanReturnToPool).encode(__typed__); },
  },
  CreateStockReissuance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockReissuance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockReissuance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockReissuance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockReissuance.StockReissuance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockReissuance.StockReissuance).encode(__typed__); },
  },
  CreateStockRepurchase: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockRepurchase',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockRepurchase.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockRepurchase.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockRepurchase.StockRepurchase).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockRepurchase.StockRepurchase).encode(__typed__); },
  },
  CreateStockTransfer: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockTransfer',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockTransfer.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockTransfer.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockTransfer.StockTransfer).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockTransfer.StockTransfer).encode(__typed__); },
  },
  CreateStockRetraction: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateStockRetraction',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateStockRetraction.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateStockRetraction.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_StockRetraction.StockRetraction).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_StockRetraction.StockRetraction).encode(__typed__); },
  },
  CreateVestingAcceleration: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateVestingAcceleration',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateVestingAcceleration.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateVestingAcceleration.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingAcceleration.VestingAcceleration).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingAcceleration.VestingAcceleration).encode(__typed__); },
  },
  CreateVestingEvent: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateVestingEvent',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateVestingEvent.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateVestingEvent.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingEvent.VestingEvent).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingEvent.VestingEvent).encode(__typed__); },
  },
  CreateVestingStart: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateVestingStart',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateVestingStart.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateVestingStart.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingStart.VestingStart).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingStart.VestingStart).encode(__typed__); },
  },
  CreateVestingTerms: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateVestingTerms',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateVestingTerms.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateVestingTerms.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingTerms.VestingTerms).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_VestingTerms.VestingTerms).encode(__typed__); },
  },
  CreateWarrantAcceptance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateWarrantAcceptance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateWarrantAcceptance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateWarrantAcceptance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantAcceptance.WarrantAcceptance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantAcceptance.WarrantAcceptance).encode(__typed__); },
  },
  CreateWarrantCancellation: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateWarrantCancellation',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateWarrantCancellation.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateWarrantCancellation.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantCancellation.WarrantCancellation).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantCancellation.WarrantCancellation).encode(__typed__); },
  },
  CreateWarrantExercise: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateWarrantExercise',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateWarrantExercise.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateWarrantExercise.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantExercise.WarrantExercise).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantExercise.WarrantExercise).encode(__typed__); },
  },
  CreateWarrantTransfer: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateWarrantTransfer',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateWarrantTransfer.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateWarrantTransfer.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantTransfer.WarrantTransfer).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantTransfer.WarrantTransfer).encode(__typed__); },
  },
  CreateWarrantRetraction: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateWarrantRetraction',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateWarrantRetraction.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateWarrantRetraction.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantRetraction.WarrantRetraction).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantRetraction.WarrantRetraction).encode(__typed__); },
  },
  CreateWarrantIssuance: {
    template: function () { return exports.Issuer; },
    choiceName: 'CreateWarrantIssuance',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.CreateWarrantIssuance.decoder; }),
    argumentEncode: function (__typed__) { return exports.CreateWarrantIssuance.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantIssuance.WarrantIssuance).decoder; }),
    resultEncode: function (__typed__) { return damlTypes.ContractId(Fairmint_OpenCapTable_WarrantIssuance.WarrantIssuance).encode(__typed__); },
  },
  Archive: {
    template: function () { return exports.Issuer; },
    choiceName: 'Archive',
    argumentDecoder: damlTypes.lazyMemo(function () { return pkg9e70a8b3510d617f8a136213f33d6a903a10ca0eeec76bb06ba55d1ed9680f69.DA.Internal.Template.Archive.decoder; }),
    argumentEncode: function (__typed__) { return pkg9e70a8b3510d617f8a136213f33d6a903a10ca0eeec76bb06ba55d1ed9680f69.DA.Internal.Template.Archive.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.Unit.decoder; }),
    resultEncode: function (__typed__) { return damlTypes.Unit.encode(__typed__); },
  },
  ArchiveByIssuer: {
    template: function () { return exports.Issuer; },
    choiceName: 'ArchiveByIssuer',
    argumentDecoder: damlTypes.lazyMemo(function () { return exports.ArchiveByIssuer.decoder; }),
    argumentEncode: function (__typed__) { return exports.ArchiveByIssuer.encode(__typed__); },
    resultDecoder: damlTypes.lazyMemo(function () { return damlTypes.Unit.decoder; }),
    resultEncode: function (__typed__) { return damlTypes.Unit.encode(__typed__); },
  },
}

);


damlTypes.registerTemplate(exports.Issuer, ['b9490175a4f1a4f2dae27f0293c1954bd4c49bbdfdde8c87fa08c2b43c1b5b9c', '#OpenCapTable-v25']);

