@aephia/atlas-kit 0.6.0-next.49 → 0.6.0-next.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/client/contracts.d.ts +3 -3
  2. package/dist/client/contracts.d.ts.map +1 -1
  3. package/dist/identity/actions/index.d.ts.map +1 -1
  4. package/dist/identity/actions/index.js +12 -7
  5. package/dist/identity/actions/index.js.map +1 -1
  6. package/dist/internal/c4/game.d.ts +6 -0
  7. package/dist/internal/c4/game.d.ts.map +1 -1
  8. package/dist/internal/c4/game.js +40 -2
  9. package/dist/internal/c4/game.js.map +1 -1
  10. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -1
  11. package/dist/internal/planning/character-registration-guard.js +9 -0
  12. package/dist/internal/planning/character-registration-guard.js.map +1 -1
  13. package/dist/internal/planning/character-registration.d.ts +12 -2
  14. package/dist/internal/planning/character-registration.d.ts.map +1 -1
  15. package/dist/internal/planning/character-registration.js +42 -6
  16. package/dist/internal/planning/character-registration.js.map +1 -1
  17. package/dist/internal/planning/xp-runtime.d.ts +3 -2
  18. package/dist/internal/planning/xp-runtime.d.ts.map +1 -1
  19. package/dist/internal/planning/xp-runtime.js +7 -10
  20. package/dist/internal/planning/xp-runtime.js.map +1 -1
  21. package/dist/planning/execution.d.ts.map +1 -1
  22. package/dist/planning/execution.js +55 -19
  23. package/dist/planning/execution.js.map +1 -1
  24. package/dist/planning/index.d.ts +4 -0
  25. package/dist/planning/index.d.ts.map +1 -1
  26. package/dist/planning/index.js +23 -0
  27. package/dist/planning/index.js.map +1 -1
  28. package/dist/registry/onboarding.d.ts +8 -1
  29. package/dist/registry/onboarding.d.ts.map +1 -1
  30. package/dist/registry/onboarding.js +16 -3
  31. package/dist/registry/onboarding.js.map +1 -1
  32. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import type { Address as KitAddress, Commitment as KitCommitment, GetAccountInfoApi, GetBlockHeightApi, GetLatestBlockhashApi, GetMultipleAccountsApi, GetProgramAccountsApi, GetSignatureStatusesApi, Rpc, SendTransactionApi, SimulateTransactionApi } from '@solana/kit';
1
+ import type { Address as KitAddress, Commitment as KitCommitment, GetAccountInfoApi, GetBlockHeightApi, GetLatestBlockhashApi, GetFeeForMessageApi, GetMultipleAccountsApi, GetProgramAccountsApi, GetSignatureStatusesApi, Rpc, SendTransactionApi, SimulateTransactionApi } from '@solana/kit';
2
2
  import type { RegistrySnapshotStore } from '../registry/index.js';
3
3
  import type { SageSdkError } from './errors.js';
4
4
  /** A z.ink/Solana account address represented by `@solana/kit`.
@@ -29,7 +29,7 @@ export type SageRpc = Rpc<GetAccountInfoApi & GetMultipleAccountsApi & GetProgra
29
29
  /** The minimal Kit RPC surface used for explicit write-side operations.
30
30
  *
31
31
  * Context creation only retains this transport; it never invokes it. Assembly
32
- * uses it for blockhash lifetime, signer-free simulation, submission, and
32
+ * uses it for blockhash lifetime, current registration fees, signer-free simulation, submission, and
33
33
  * confirmation during explicit Plan operations.
34
34
  *
35
35
  * @example
@@ -39,7 +39,7 @@ export type SageRpc = Rpc<GetAccountInfoApi & GetMultipleAccountsApi & GetProgra
39
39
  * const ctx = createSageContext({ cluster: 'zink-ptr', rpc, writeRpc });
40
40
  * ```
41
41
  */
42
- export type SageWriteRpc = Rpc<GetBlockHeightApi & GetLatestBlockhashApi & SimulateTransactionApi & SendTransactionApi & GetSignatureStatusesApi>;
42
+ export type SageWriteRpc = Rpc<GetBlockHeightApi & GetLatestBlockhashApi & GetFeeForMessageApi & SimulateTransactionApi & SendTransactionApi & GetSignatureStatusesApi>;
43
43
  /** Stable account and gameplay entity identifiers used by cache keys and references.
44
44
  *
45
45
  * @example
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/client/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/client/contracts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAgB7D,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AA+BD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,IAAI,CAAC,CA8Gf;AAED,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAe7D,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AA+BD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,IAAI,CAAC,CAsHf;AAED,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,qBAAqB,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { readCharacterInitialization } from '../../registry/onboarding.js';
2
+ import { calculateRegistrationFunding, isEmptySystemAccount, } from '../../internal/planning/character-registration.js';
1
3
  import { isAddress, isOffCurveAddress } from '@solana/kit';
2
4
  import { hashAccountState } from '../../internal/planning/account-state.js';
3
5
  import { InvalidActionInputError, SageSdkError } from '../../client/errors.js';
@@ -7,7 +9,6 @@ import { characterAccountDefinition, profileAccountDefinition, findCharacterPda,
7
9
  import { requireGameAddress } from '../../internal/game-context.js';
8
10
  import { RENT_ADDRESS, readRent, } from '../../internal/planning/faction-enrollment.js';
9
11
  import { resolveCharacterRegistrationXpRuntime } from '../../internal/planning/xp-runtime.js';
10
- import { getCareerXpBudgetDecoder } from '../../internal/c4/runtime-bindings.js';
11
12
  import { createPlan } from '../../planning/index.js';
12
13
  function validateOptions(input) {
13
14
  if (input === null || typeof input !== 'object' || Array.isArray(input))
@@ -63,7 +64,7 @@ export async function planRegisterCharacter(ctx, profileAddress, input) {
63
64
  if (profileAccount.executable)
64
65
  fail(`Profile ${profileAddress} is executable instead of Profile state. Select a valid Player Profile account and retry.`, profileAddress);
65
66
  profileAccountDefinition.decode(profileAccount);
66
- if (characterAccount) {
67
+ if (characterAccount && !isEmptySystemAccount(characterAccount)) {
67
68
  if (characterAccount.executable)
68
69
  fail(`Canonical Character ${character} is executable instead of Character state. Verify the configured Game and account data before retrying.`, character);
69
70
  const existing = characterAccountDefinition.decode(characterAccount);
@@ -71,6 +72,7 @@ export async function planRegisterCharacter(ctx, profileAddress, input) {
71
72
  fail(`Canonical Character ${character} contains a different Profile or Game relationship. Verify the deployment and refresh the account; do not treat it as a missing Character.`, character);
72
73
  fail(`Character ${character} is already registered for Profile ${profileAddress} in Game ${game}. Read and reuse it with getCharacterForProfile or maybeGetCharacterForProfile; registration is not idempotent.`, character);
73
74
  }
75
+ const initialization = await readCharacterInitialization(ctx);
74
76
  const xp = await resolveCharacterRegistrationXpRuntime(ctx, {
75
77
  game,
76
78
  character,
@@ -83,11 +85,11 @@ export async function planRegisterCharacter(ctx, profileAddress, input) {
83
85
  funderAccount.data.length !== 0)
84
86
  fail(`Character storage funder ${funder} must be an existing non-executable System wallet. Select and fund that signer separately, then prepare registration again.`, funder);
85
87
  const minimum = readRent(rentAccount);
86
- const funding = minimum(characterAccountDefinition.minimumDataLength) +
87
- minimum(getCareerXpBudgetDecoder().fixedSize);
88
+ const storage = calculateRegistrationFunding(minimum, initialization.characterSize, characterAccount?.lamports ?? 0n, xp.budgetLamports);
89
+ const funding = storage.requiredLamports;
88
90
  if (funderAccount.lamports < funding)
89
- fail(`Character storage funder ${funder} needs ${funding - funderAccount.lamports} more native lamports to create the ${characterAccountDefinition.minimumDataLength}-byte Character and ${getCareerXpBudgetDecoder().fixedSize}-byte Career XP budget. Fund it separately, refresh it, and prepare registration again.`, funder);
90
- const summary = `Register canonical Character ${character} and Career XP budget ${xp.xpBudget} for existing Profile ${profileAddress} in Game ${game}. Funder ${funder} is the sole instruction signer and provides the observed ${funding} lamports of account storage funding; transaction fees are separate. XP budget configuration ${xp.xpBudgetConfig} remains Game-owned and is not created. No Profile-authority or faction signature is required. Funding is revalidated before signing; fees, intervening changes and final creation remain chain-authoritative. Simulate before signing, then use getCharacterForProfile after confirmed execution to verify the Profile/Game identity.`;
91
+ fail(`Character storage funder ${funder} needs ${funding - funderAccount.lamports} more native lamports. Fund it separately and recreate registration.`, funder);
92
+ const summary = `Register canonical Character ${character} and Career XP budget ${xp.xpBudget} for existing Profile ${profileAddress} in Game ${game}. Funder ${funder} is the sole instruction signer and provides the observed ${funding} lamports of account storage funding; transaction fees are separate. Character v0 allocates ${initialization.characterSize} bytes, Career XP budget v1 allocates 280 bytes with reconciliation marker 1. Net storage debit is ${storage.netDebit} lamports, including a ${storage.refund} lamport Character refund after budget funding; excess budget funding is retained. Valid empty System pre-funded targets are supported. XP budget configuration ${xp.xpBudgetConfig} remains Game-owned and is not created. No Profile-authority or faction signature is required. Funding is revalidated before signing; fees, intervening changes and final creation remain chain-authoritative. Simulate before signing, then use getCharacterForProfile after confirmed execution to verify the Profile/Game identity.`;
91
93
  return createPlan({
92
94
  kind: 'identity.register-character',
93
95
  summary,
@@ -102,7 +104,10 @@ export async function planRegisterCharacter(ctx, profileAddress, input) {
102
104
  xpBudget: xp.xpBudget,
103
105
  xpBudgetConfig: xp.xpBudgetConfig,
104
106
  maximumFunderDebit: funding,
105
- describes: `Create canonical Character ${character} and Career XP budget ${xp.xpBudget} with at most ${funding} lamports of storage funding from System wallet ${funder}; require current Game 2, valid Profile and XP configuration, and both targets to remain absent.`,
107
+ ...initialization,
108
+ characterLamports: characterAccount?.lamports ?? 0n,
109
+ budgetLamports: xp.budgetLamports,
110
+ describes: `Create canonical Character ${character} and Career XP budget ${xp.xpBudget} with at most ${funding} lamports of storage funding from System wallet ${funder}; require current Game 2, valid Profile and XP configuration, and both targets to remain absent or valid empty System accounts. Initial allocation, refunds and final funder rent status are rechecked before signing.`,
106
111
  },
107
112
  ],
108
113
  steps: [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"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"}
@@ -202,6 +202,12 @@ export interface GameCombatConfigurationData {
202
202
  export declare function validateGameAccountLayout(account: RawAccount): void;
203
203
  /** Registry-owned runtime version read after complete, exact Game validation. */
204
204
  export declare function decodeGameRuntimeVersion(account: RawAccount): number;
205
+ /** Qualified #621 initialization projection; unrelated Game economics are excluded. */
206
+ export declare function decodeCharacterInitialization(account: RawAccount): {
207
+ version: number;
208
+ characterGrowth: number;
209
+ bytes: Uint8Array;
210
+ };
205
211
  /** Full decoded cargo rows after one registry-owned Game validation and exact decode. */
206
212
  export declare function decodeGameCargoConfigurationRows(account: RawAccount): {
207
213
  readonly cache: Address;
@@ -1 +1 @@
1
- {"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/game.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/game.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { translateClaimStakeBuildingDefinitionsSection, } from './claim-stake-building-definitions.js';
2
2
  import { shipDefinitionByteLength, habBuildingDefinitionByteLength, researchNodeByteLength, } from './game-definition-layout.js';
3
3
  import { translateClaimStakeDefinitionsSection, containerDefinitionByteLength, validateDefinitionIndex, } from './claim-stake-definitions.js';
4
- import { GAME_DISCRIMINATOR, SAGE_PROGRAM_ADDRESS, SizeClass, Tier, XpCategory, getGameDecoder, getShipEncoder, } from '@staratlas/dev-sage';
5
- import { AccountDecodeError, InvalidAccountOwnerError, InvalidDiscriminatorError, } from '../../client/errors.js';
4
+ import { GAME_DISCRIMINATOR, SAGE_PROGRAM_ADDRESS, SizeClass, Tier, XpCategory, getGameDecoder, getCharacterModifiersEncoder, getResearchNodeEncoder, getShipEncoder, } from '@staratlas/dev-sage';
5
+ import { AccountDecodeError, SageSdkError, InvalidAccountOwnerError, InvalidDiscriminatorError, } from '../../client/errors.js';
6
6
  import { translateCharacterModifier } from './character-modifier.js';
7
7
  import { translateShipStats } from './ship-stats.js';
8
8
  const GAME_MINIMUM_DATA_LENGTH = GAME_DISCRIMINATOR.length;
@@ -42,6 +42,44 @@ export function decodeGameRuntimeVersion(account) {
42
42
  validateGameAccount(account);
43
43
  return decodeExactly(account).version;
44
44
  }
45
+ /** Qualified #621 initialization projection; unrelated Game economics are excluded. */
46
+ export function decodeCharacterInitialization(account) {
47
+ validateGameAccount(account);
48
+ const game = decodeExactly(account);
49
+ validateDefinitionIndex(account, 'research node', game.researchTreeDefinitions.nodes, (node) => getResearchNodeEncoder().encode(node).length, (node) => node.id);
50
+ const node = game.researchTreeDefinitions.nodes.unsizedList.find((node) => node.id === 0);
51
+ if (!node)
52
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Starting research node 0 is missing. Refresh the Game before registering a Character.', { address: account.address });
53
+ const encoder = getCharacterModifiersEncoder();
54
+ const initial = {
55
+ seqId: game.researchTreeDefinitions.seqId,
56
+ unupdatedCount: 0,
57
+ unlockedNodes: new Set([0]),
58
+ nodeLevels: new Map([[0, 1]]),
59
+ modifiers: node.modifier,
60
+ };
61
+ const bytes = encoder.encode(initial);
62
+ const empty = encoder.encode({
63
+ ...initial,
64
+ unlockedNodes: new Set(),
65
+ nodeLevels: new Map(),
66
+ modifiers: {
67
+ ...node.modifier,
68
+ researchTags: new Set(),
69
+ cargoCategories: new Set(),
70
+ rareMineralDiscovery: new Map(),
71
+ },
72
+ });
73
+ // Include the copied XP sequence, not mutable XP bank/config economics.
74
+ const projection = new Uint8Array(bytes.length + 4);
75
+ projection.set(bytes);
76
+ new DataView(projection.buffer).setUint32(bytes.length, game.xpDefinitions.seqId, true);
77
+ return {
78
+ version: game.version,
79
+ characterGrowth: bytes.length - empty.length,
80
+ bytes: projection,
81
+ };
82
+ }
45
83
  function shipSize(sizeClass) {
46
84
  switch (sizeClass) {
47
85
  case SizeClass.XxSmall:
@@ -1 +1 @@
1
- {"version":3,"file":"game.js","sourceRoot":"","sources":["../../../src/internal/c4/game.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6CAA6C,GAE9C,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,wBAAwB,EACxB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qCAAqC,EACrC,6BAA6B,EAC7B,uBAAuB,GAExB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,SAAS,EACT,IAAI,EACJ,UAAU,EACV,cAAc,EACd,cAAc,GAOf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAErE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGrD,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,MAAM,CAAC;AAC3D,MAAM,gBAAgB,GAAG,WAAW,CAAC;AACrC,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAC9C,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAC/B,CAAC;AAuOF,SAAS,gBAAgB,CAAC,IAAgB;IACxC,OAAO,0BAA0B,CAAC,KAAK,CACrC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CACtC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAmB;IAC9C,IAAI,OAAO,CAAC,KAAK,KAAK,oBAAoB,EAAE,CAAC;QAC3C,MAAM,IAAI,wBAAwB,CAChC,MAAM,EACN,OAAO,CAAC,OAAO,EACf,oBAAoB,EACpB,OAAO,CAAC,KAAK,CACd,CAAC;IACJ,CAAC;IACD,IACE,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,wBAAwB;QAC9C,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,EAC/B,CAAC;QACD,MAAM,IAAI,yBAAyB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAAmB;IACxC,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,IAAI,UAAU,CAClB,WAAW,MAAM,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,uDAAuD,CACnG,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,yBAAyB,CAAC,OAAmB;IAC3D,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,aAAa,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,wBAAwB,CAAC,OAAmB;IAC1D,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;AACxC,CAAC;AAED,SAAS,QAAQ,CAAC,SAAoB;IACpC,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,SAAS,CAAC,OAAO;YACpB,OAAO,UAAU,CAAC;QACpB,KAAK,SAAS,CAAC,MAAM;YACnB,OAAO,SAAS,CAAC;QACnB,KAAK,SAAS,CAAC,KAAK;YAClB,OAAO,OAAO,CAAC;QACjB,KAAK,SAAS,CAAC,MAAM;YACnB,OAAO,QAAQ,CAAC;QAClB,KAAK,SAAS,CAAC,KAAK;YAClB,OAAO,OAAO,CAAC;QACjB,KAAK,SAAS,CAAC,OAAO;YACpB,OAAO,SAAS,CAAC;QACnB,KAAK,SAAS,CAAC,SAAS;YACtB,OAAO,WAAW,CAAC;QACrB,KAAK,SAAS,CAAC,KAAK;YAClB,OAAO,OAAO,CAAC;QACjB,0EAA0E;QAC1E;YACE,MAAM,IAAI,UAAU,CAAC,+BAA+B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EAAU,EAAE,IAAU;IAC3C,OAAO;QACL,EAAE;QACF,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;QAC1C,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;QACnC,KAAK,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EAAU,EAAE,KAAgB;IAClD,OAAO;QACL,UAAU,EAAE,KAAK,CAAC,QAAQ;QAC1B,EAAE;QACF,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;QAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAU;IACvC,OAAO;QACL,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAC9D,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,CAC3C;QACD,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK;KACxC,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,gCAAgC,CAAC,OAAmB;IAKlE,IAAI,OAAO,CAAC,UAAU;QACpB,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CAAC,kDAAkD,CAAC,CACnE,CAAC;IACJ,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK;QACvC,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK;QAClC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;KACrD,CAAC;AACJ,CAAC;AAKD,mFAAmF;AACnF,MAAM,UAAU,2BAA2B,CAAC,IAAU;IACpD,OAAO,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,+BAA+B,CAAC,OAAmB;IAKjE,IAAI,OAAO,CAAC,UAAU;QACpB,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CAAC,iDAAiD,CAAC,CAClE,CAAC;IACJ,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,uBAAuB,CACrB,OAAO,EACP,MAAM,EACN,IAAI,CAAC,eAAe,CAAC,KAAK,EAC1B,wBAAwB,EACxB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAChB,CAAC;IACF,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK;QACtC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY;QAC/C,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW;KAC7C,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,4BAA4B,CAC1C,OAAmB;IAEnB,OAAO,+BAA+B,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAU;IACvC,OAAO;QACL,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACtE,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CACvE;QACD,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK;KACvC,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAmB,EAAE,IAAU;IAChE,MAAM,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,KAAK,CACtE,CAAC,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAC3C,CAAC;IACF,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CACZ,kEAAkE,CACnE,EACD,QAAQ,OAAO,CAAC,OAAO,6HAA6H,CACrJ,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,KAGd;IACC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,4BAA4B,CACnC,OAAmB,EACnB,IAAU;IAEV,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,GAAG,CAChE,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE;QACxB,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC;YACzC,UAAU,CAAC,WAAW,GAAG,CAAC;YAC1B,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAClD,CAAC;YACD,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CACZ,mBAAmB,OAAO,aAAa,UAAU,CAAC,WAAW,uBAAuB,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CACjH,EACD,QAAQ,OAAO,CAAC,OAAO,wHAAwH,CAChJ,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO;YACP,OAAO,EAAE,UAAU,CAAC,OAAO;iBACxB,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC;iBAChC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAChB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;gBAChC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;aACvB,CAAC,CAAC;SACN,CAAC;IACJ,CAAC,CACF,CAAC;IACF,OAAO;QACL,uBAAuB,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;QACrD,sBAAsB,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;QACnD,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;QAC5C,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACrD,0BAA0B,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB;QAC3D,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;QACtC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3C,0BAA0B,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB;QAC3D,mCAAmC,EAAE,KAAK,CACxC,IAAI,CAAC,MAAM,CAAC,mCAAmC,CAChD;QACD,oBAAoB,EAAE;YACpB,WAAW;YACX,UAAU,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK;SAC5C;KACF,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,MAAM,2BAA2B;AACtC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,MAAM,CAAC,OAAmB;QACxB,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC7B,OAAO,4BAA4B,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,aAAa,EAAE,0BAA0B;IACzC,iBAAiB,EAAE,wBAAwB;IAC3C,cAAc,EAAE,oBAAoB;IACpC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,mBAAmB;CAC9B,CAAC,CAAC;AAEL,SAAS,IAAI,CAAC,KAAW;IACvB,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,IAAI,CAAC,GAAG;YACX,OAAO,KAAK,CAAC;QACf,KAAK,IAAI,CAAC,GAAG;YACX,OAAO,KAAK,CAAC;QACf,KAAK,IAAI,CAAC,KAAK;YACb,OAAO,OAAO,CAAC;QACjB,KAAK,IAAI,CAAC,IAAI;YACZ,OAAO,MAAM,CAAC;QAChB,KAAK,IAAI,CAAC,IAAI;YACZ,OAAO,MAAM,CAAC;QAChB,0EAA0E;QAC1E;YACE,MAAM,IAAI,UAAU,CAAC,oBAAoB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAiD;IAEjD,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC;QACzC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,0BAA0B,CAAC;QACnD,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC;QACrC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,EAAU,EACV,KAA4B;IAK5B,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,EAAE;QACF,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;QAC3C,sBAAsB,EAAE,KAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC;QAC3D,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC;QACvC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC;QAC3C,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC;QACvC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;KACvB,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAA4B;IAE5B,OAAO;QACL,gBAAgB,EAAE,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAC/C,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CACvD;QACD,2BAA2B,EAAE,KAAK,CAAC,gBAAgB;QACnD,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,EAAE,EAAE,KAAK,CAAC,UAAU;QACpB,WAAW,EAAE,KAAK,CAAC,sBAAsB;QACzC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QACpC,SAAS,EAAE,iBAAiB,CAAC,KAAK,CAAC,iBAAiB,CAAC;QACrD,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;QAC3C,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACnE,OAAO;YACP,cAAc,EAAE,IAAI,CAAC,QAAQ,EAAE;YAC/B,iBAAiB,EAAE,IAAI,CAAC,GAAG;SAC5B,CAAC,CAAC;QACH,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC;QACvC,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3D,OAAO;YACP,WAAW;SACZ,CAAC,CAAC;QACH,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC;QACvC,sBAAsB,EAAE,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC;QACvD,mBAAmB,EAAE,KAAK,CAAC,eAAe;QAC1C,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,iBAAiB,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;QAC7C,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CACnC,IAAU;IAEV,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC;IAC3C,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACvE,GAAG,oBAAoB,CACrB,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAE,CAAC,GAAG,EAC1C,UAAU,CACX;YACD,0BAA0B,EAAE,MAAM,CAAC,mBAAmB;YACtD,sBAAsB,EAAE,MAAM,CAAC,WAAW;SAC3C,CAAC,CAAC;QACH,0BAA0B,EAAE,MAAM,CAAC,mBAAmB;QACtD,sBAAsB,EAAE,MAAM,CAAC,WAAW;QAC1C,UAAU,EAAE,MAAM,CAAC,KAAK;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CACnC,IAAU;IAEV,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC;IAC3C,OAAO;QACL,WAAW,EACT,MAAM,CAAC,sBAAsB,CAAC,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC;QACrE,UAAU,EAAE,MAAM,CAAC,KAAK;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,aAAa,GAAG;IACpB,CAAC,UAAU,CAAC,WAAW,EAAE,cAAc,CAAC;IACxC,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;IAC7B,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;IAC3B,CAAC,UAAU,CAAC,UAAU,EAAE,aAAa,CAAC;IACtC,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC7B,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC;IACjC,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC;IACjC,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC;CACwC,CAAC;AAExE,SAAS,UAAU,CAAC,KAAiB;IACnC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,UAAU,CAAC,WAAW;YACzB,OAAO,cAAc,CAAC;QACxB,KAAK,UAAU,CAAC,OAAO;YACrB,OAAO,OAAO,CAAC;QACjB,KAAK,UAAU,CAAC,KAAK;YACnB,OAAO,OAAO,CAAC;QACjB,KAAK,UAAU,CAAC,UAAU;YACxB,OAAO,aAAa,CAAC;QACvB,KAAK,UAAU,CAAC,MAAM;YACpB,OAAO,QAAQ,CAAC;QAClB,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO,UAAU,CAAC;QACpB,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO,UAAU,CAAC;QACpB,KAAK,UAAU,CAAC,MAAM;YACpB,OAAO,QAAQ,CAAC;QAClB,0EAA0E;QAC1E;YACE,MAAM,IAAI,UAAU,CAAC,0BAA0B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAU;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;IAClC,OAAO;QACL,YAAY,EAAE;YACZ,qBAAqB,EAAE,MAAM,CAAC,kBAAkB,CAAC,cAAc;YAC/D,kCAAkC,EAChC,MAAM,CAAC,kBAAkB,CAAC,gBAAgB;YAC5C,6BAA6B,EAC3B,MAAM,CAAC,kBAAkB,CAAC,kBAAkB;YAC9C,aAAa,EAAE,MAAM,CAAC,kBAAkB,CAAC,WAAW;YACpD,sBAAsB,EACpB,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,gBAAgB;YACxE,yBAAyB,EAAE,MAAM,CAAC,kBAAkB,CAAC,iBAAiB;YACtE,oBAAoB,EAAE,MAAM,CAAC,kBAAkB,CAAC,oBAAoB;YACpE,MAAM,EAAE,MAAM,CAAC,kBAAkB,CAAC,MAAM;SACzC;QACD,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC1D,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,KAAK,EAAE,SAAS,CAAC,OAAO;YACxB,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,KAAK,EAAE,SAAS,CAAC,KAAK;SACvB,CAAC,CAAC;QACH,MAAM,EAAE;YACN,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO;YACpC,mBAAmB,EAAE,MAAM,CAAC,YAAY,CAAC,gBAAgB;YACzD,gBAAgB,EAAE,aAAa,CAAC,MAAM,CACpC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CACb,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,KAAK,CAAC,CACjE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC;SAClC;QACD,UAAU,EAAE,MAAM,CAAC,KAAK;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAmB,EAAE,IAAU;IAC1D,IAAI,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CAAC,kDAAkD,CAAC,EAClE,QAAQ,OAAO,CAAC,OAAO,+GAA+G,CACvI,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAkB;IAC/C,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,gBAAgB;QACpD,YAAY,EAAE,IAAI,CAAC,SAAS;QAC5B,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/D,OAAO;YACP,WAAW;SACZ,CAAC,CAAC;QACH,qBAAqB,EAAE,IAAI,CAAC,aAAa;QACzC,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC;QACnD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;QAC1C,cAAc,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC;YAC9B,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,IAAU;IAEV,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CACvD,qBAAqB,CACtB;QACD,UAAU,EAAE,IAAI,CAAC,uBAAuB,CAAC,KAAK;KAC/C,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,0BAA0B,CACxC,OAAmB,EACnB,QASG;IAEH,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACtC,uBAAuB,CACrB,OAAO,EACP,cAAc,EACd,IAAI,CAAC,sBAAsB,CAAC,YAAY,EACxC,6BAA6B,CAC9B,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACtC,uBAAuB,CACrB,OAAO,EACP,cAAc,EACd,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,EAClD,+BAA+B,EAC/B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CACxB,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,uBAAuB,CACrB,OAAO,EACP,eAAe,EACf,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAClC,sBAAsB,EACtB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAChB,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,uBAAuB,CACrB,OAAO,EACP,MAAM,EACN,IAAI,CAAC,eAAe,CAAC,KAAK,EAC1B,wBAAwB,EACxB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAChB,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,OAAO;QACL,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;YAChC,CAAC,CAAC;gBACE,SAAS,EAAE,6CAA6C,CACtD,OAAO,EACP,IAAI,CACL;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;YAClC,CAAC,CAAC,EAAE,WAAW,EAAE,qCAAqC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;YACvE,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5B,CAAC,CAAC,EAAE,KAAK,EAAE,qBAAqB,CAAC,IAAI,CAAC,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;YACnC,CAAC,CAAC,EAAE,YAAY,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;YACnC,CAAC,CAAC,EAAE,YAAY,EAAE,4BAA4B,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC/B,CAAC,CAAC,EAAE,QAAQ,EAAE,wBAAwB,CAAC,IAAI,CAAC,EAAE;YAC9C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5B,CAAC,CAAC,EAAE,KAAK,EAAE,qBAAqB,CAAC,IAAI,CAAC,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"game.js","sourceRoot":"","sources":["../../../src/internal/c4/game.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"character-registration-guard.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/character-registration-guard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAyB1E,uFAAuF;AACvF,wBAAgB,yCAAyC,CACvD,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,aAAa,EAAE,SAAS,gBAAgB,EAAE,GACzC,IAAI,CA2DN"}
1
+ {"version":3,"file":"character-registration-guard.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/character-registration-guard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAyB1E,uFAAuF;AACvF,wBAAgB,yCAAyC,CACvD,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,aAAa,EAAE,SAAS,gBAAgB,EAAE,GACzC,IAAI,CA4EN"}
@@ -26,6 +26,15 @@ export function validateCharacterRegistrationInstructions(steps, preconditions)
26
26
  REGISTER_CHARACTER_DISCRIMINATOR.every((byte, index) => instruction.data?.[index] === byte));
27
27
  if (registrations.length !== guards.length)
28
28
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Every Character registration instruction requires exactly one matching finite current-runtime registration guard. Recreate the Plan with planRegisterCharacter.');
29
+ // Unqualified instructions may change transaction-wide writable funders or targets.
30
+ // Only other validated registrations may share these accounts in this slice.
31
+ for (const guard of guards)
32
+ for (const step of steps) {
33
+ if (registrations.includes(step))
34
+ continue;
35
+ if (step.instruction.accounts?.some((account) => [guard.funder, guard.address, guard.xpBudget].includes(account.address)))
36
+ throw new SageSdkError('INCOMPATIBLE_PLAN_COMPOSITION', 'A Character registration cannot share funding or creation targets with an unqualified instruction. Execute and confirm that instruction separately, then recreate registration.');
37
+ }
29
38
  const remaining = [...guards];
30
39
  for (const step of registrations) {
31
40
  const matchIndex = remaining.findIndex((guard) => {
@@ -1 +1 @@
1
- {"version":3,"file":"character-registration-guard.js","sourceRoot":"","sources":["../../../src/internal/planning/character-registration-guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"character-registration-guard.js","sourceRoot":"","sources":["../../../src/internal/planning/character-registration-guard.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,23 @@
1
1
  import type { Address, Commitment } from '@solana/kit';
2
- import type { SageContext } from '../../client/contracts.js';
2
+ import type { RawAccount, SageContext } from '../../client/contracts.js';
3
3
  import type { PlanPrecondition } from '../../planning/index.js';
4
+ import { type CharacterInitialization } from '../../registry/onboarding.js';
4
5
  export interface CharacterRegistrationFunding {
5
6
  readonly funder: Address;
6
7
  readonly requiredLamports: bigint;
7
8
  readonly observedLamports: bigint;
9
+ readonly netDebit: bigint;
10
+ readonly minimumBalance: bigint;
8
11
  }
9
12
  /** Revalidate one finite current-runtime Character creation intent before signing. */
10
13
  export declare function revalidateCharacterRegistration(ctx: SageContext, guard: Extract<PlanPrecondition, {
11
14
  readonly kind: 'character-registration';
12
- }>, commitment: Commitment, freshGameVersions?: Map<Address, number>): Promise<CharacterRegistrationFunding>;
15
+ }>, commitment: Commitment, freshGameVersions?: Map<Address, number>, initializations?: Map<Address, CharacterInitialization>): Promise<CharacterRegistrationFunding>;
16
+ export declare function isEmptySystemAccount(account: RawAccount): boolean;
17
+ /** #621: budget funding precedes any excess Character refund. */
18
+ export declare function calculateRegistrationFunding(minimum: (size: number) => bigint, characterSize: number, characterBalance: bigint, budgetBalance: bigint): {
19
+ requiredLamports: bigint;
20
+ netDebit: bigint;
21
+ refund: bigint;
22
+ };
13
23
  //# sourceMappingURL=character-registration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"character-registration.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/character-registration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAG7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAehE,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED,sFAAsF;AACtF,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,CAAC,gBAAgB,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAA;CAAE,CAAC,EAC7E,UAAU,EAAE,UAAU,EACtB,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,4BAA4B,CAAC,CA+EvC"}
1
+ {"version":3,"file":"character-registration.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/character-registration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,8BAA8B,CAAC;AAOtC,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,sFAAsF;AACtF,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,CAAC,gBAAgB,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAA;CAAE,CAAC,EAC7E,UAAU,EAAE,UAAU,EACtB,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,EACxC,eAAe,wCAA8C,GAC5D,OAAO,CAAC,4BAA4B,CAAC,CAoHvC;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAMjE;AACD,iEAAiE;AACjE,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,EACjC,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM;;;;EAUtB"}
@@ -1,31 +1,46 @@
1
+ import { requireGameAddress } from '../game-context.js';
1
2
  import { SageSdkError } from '../../client/errors.js';
2
3
  import { readContextRawAccounts } from '../../client/reconciliation.js';
3
- import { characterAccountDefinition, findCharacterPda, profileAccountDefinition, } from '../c4/identity.js';
4
+ import { findCharacterPda, profileAccountDefinition } from '../c4/identity.js';
4
5
  import { getCareerXpBudgetDecoder } from '../c4/runtime-bindings.js';
5
6
  import { hashAccountState } from './account-state.js';
6
7
  import { RENT_ADDRESS, readRent } from './faction-enrollment.js';
8
+ import { readCharacterInitialization, } from '../../registry/onboarding.js';
7
9
  import { resolveCharacterRegistrationXpRuntime } from './xp-runtime.js';
8
10
  function fail(address, message) {
9
11
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, { address });
10
12
  }
11
13
  /** Revalidate one finite current-runtime Character creation intent before signing. */
12
- export async function revalidateCharacterRegistration(ctx, guard, commitment, freshGameVersions) {
14
+ export async function revalidateCharacterRegistration(ctx, guard, commitment, freshGameVersions, initializations = new Map()) {
15
+ if (guard.game !== requireGameAddress(ctx))
16
+ fail(guard.game, 'Registration Game differs from the configured deployment. Recreate the Plan in the intended Game context.');
13
17
  const character = await findCharacterPda(guard.profile, guard.game);
14
18
  if (character !== guard.address)
15
19
  fail(guard.address, 'The Character address no longer matches the canonical Profile and Game derivation. Recreate the registration Plan.');
16
20
  const [profileRaw, characterRaw, rentRaw, funderRaw] = await readContextRawAccounts(ctx, [guard.profile, character, RENT_ADDRESS, guard.funder], { commitment });
17
21
  if (!profileRaw)
18
22
  fail(guard.profile, 'The Player Profile is missing. Create or select it before registering its Character.');
23
+ if (profileRaw.executable)
24
+ fail(guard.profile, 'The Profile is executable. Select a valid Profile and recreate the Plan.');
19
25
  profileAccountDefinition.decode(profileRaw);
20
26
  if ((await hashAccountState(profileRaw.owner, profileRaw.data)) !==
21
27
  guard.profileDataHash)
22
28
  fail(guard.profile, 'The Player Profile state changed after planning. Refresh it and recreate the Character registration Plan.');
23
- if (characterRaw)
29
+ if (characterRaw && !isEmptySystemAccount(characterRaw))
24
30
  fail(character, 'The canonical Character now exists. Read and reuse it instead of signing this creation Plan.');
31
+ let initialization = initializations.get(guard.game);
32
+ if (!initialization) {
33
+ initialization = await readCharacterInitialization(ctx, { commitment });
34
+ initializations.set(guard.game, initialization);
35
+ }
36
+ if (initialization.characterSize !== guard.characterSize ||
37
+ initialization.initializationHash !== guard.initializationHash)
38
+ fail(guard.game, 'Character initialization shape changed. Refresh the Game and recreate the registration Plan.');
39
+ freshGameVersions?.set(guard.game, 2);
25
40
  const xp = await resolveCharacterRegistrationXpRuntime(ctx, {
26
41
  game: guard.game,
27
42
  character,
28
- }, freshGameVersions, { commitment });
43
+ }, { commitment });
29
44
  if (xp.xpBudget !== guard.xpBudget ||
30
45
  xp.xpBudgetConfig !== guard.xpBudgetConfig)
31
46
  fail(guard.address, 'The Career XP accounts no longer match this exact Character registration intent. Recreate the registration Plan.');
@@ -36,15 +51,36 @@ export async function revalidateCharacterRegistration(ctx, guard, commitment, fr
36
51
  funderRaw.owner !== '11111111111111111111111111111111' ||
37
52
  funderRaw.data.length !== 0)
38
53
  fail(guard.funder, 'The Character funder must remain an existing non-executable System wallet. Select and fund that signer separately, then recreate the Plan.');
54
+ if ((characterRaw?.lamports ?? 0n) !== guard.characterLamports ||
55
+ xp.budgetLamports !== guard.budgetLamports)
56
+ fail(guard.address, 'Creation target pre-funding changed, including the approved Character refund. Refresh the targets and recreate the registration Plan.');
39
57
  const minimum = readRent(rentRaw);
40
- const funding = minimum(characterAccountDefinition.minimumDataLength) +
41
- minimum(getCareerXpBudgetDecoder().fixedSize);
58
+ const storage = calculateRegistrationFunding(minimum, guard.characterSize, characterRaw?.lamports ?? 0n, xp.budgetLamports);
59
+ const funding = storage.requiredLamports;
42
60
  if (funding > guard.maximumFunderDebit)
43
61
  fail(guard.funder, 'Character and Career XP storage now require more native funding than this Plan approved. Recreate and review the Plan before signing.');
44
62
  return {
45
63
  funder: guard.funder,
46
64
  requiredLamports: funding,
47
65
  observedLamports: funderRaw.lamports,
66
+ netDebit: storage.netDebit,
67
+ minimumBalance: minimum(0),
68
+ };
69
+ }
70
+ export function isEmptySystemAccount(account) {
71
+ return (!account.executable &&
72
+ account.owner === '11111111111111111111111111111111' &&
73
+ account.data.length === 0);
74
+ }
75
+ /** #621: budget funding precedes any excess Character refund. */
76
+ export function calculateRegistrationFunding(minimum, characterSize, characterBalance, budgetBalance) {
77
+ const character = minimum(characterSize) - characterBalance;
78
+ const budget = minimum(getCareerXpBudgetDecoder().fixedSize) - budgetBalance;
79
+ const budgetDebit = budget > 0n ? budget : 0n;
80
+ return {
81
+ requiredLamports: (character > 0n ? character : 0n) + budgetDebit,
82
+ netDebit: character + budgetDebit,
83
+ refund: character < 0n ? -character : 0n,
48
84
  };
49
85
  }
50
86
  //# sourceMappingURL=character-registration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"character-registration.js","sourceRoot":"","sources":["../../../src/internal/planning/character-registration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"character-registration.js","sourceRoot":"","sources":["../../../src/internal/planning/character-registration.ts"],"names":[],"mappings":"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"}
@@ -18,12 +18,13 @@ export interface CharacterRegistrationXpRuntime {
18
18
  readonly xpBudget: Address;
19
19
  readonly xpBudgetConfig: Address;
20
20
  readonly configAccount: RawAccount;
21
+ readonly budgetLamports: bigint;
21
22
  }
22
- /** Resolve the current XP configuration and absent budget required for Character creation. */
23
+ /** Resolve creation targets after the caller has freshly validated Game 2 and its initializer. */
23
24
  export declare function resolveCharacterRegistrationXpRuntime(ctx: SageContext, input: {
24
25
  readonly game: Address;
25
26
  readonly character: Address;
26
- }, freshGameVersions?: Map<Address, number>, options?: Parameters<typeof readContextRawAccounts>[2]): Promise<CharacterRegistrationXpRuntime>;
27
+ }, options?: Parameters<typeof readContextRawAccounts>[2]): Promise<CharacterRegistrationXpRuntime>;
27
28
  /** Resolve existing canonical XP accounts without migrating or creating anything.
28
29
  * A supplied Game-version map belongs to one fresh validation pass, never a context.
29
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"xp-runtime.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/xp-runtime.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAGxE,oFAAoF;AACpF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,8EAA8E;AAC9E,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACpC;AAoED,8FAA8F;AAC9F,wBAAsB,qCAAqC,CACzD,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;CAAE,EAC9D,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,EACxC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,GACrD,OAAO,CAAC,8BAA8B,CAAC,CAsCzC;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,EAC3C,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC;IACT,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;CACtC,CAAC,CA8FD"}
1
+ {"version":3,"file":"xp-runtime.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/xp-runtime.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAGxE,oFAAoF;AACpF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,8EAA8E;AAC9E,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAoED,kGAAkG;AAClG,wBAAsB,qCAAqC,CACzD,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;CAAE,EAC9D,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,GACrD,OAAO,CAAC,8BAA8B,CAAC,CAiCzC;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,EAC3C,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC;IACT,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;CACtC,CAAC,CA8FD"}
@@ -36,15 +36,8 @@ function derive(seed, addresses) {
36
36
  ],
37
37
  });
38
38
  }
39
- /** Resolve the current XP configuration and absent budget required for Character creation. */
40
- export async function resolveCharacterRegistrationXpRuntime(ctx, input, freshGameVersions, options) {
41
- const gameVersion = freshGameVersions?.get(input.game) ??
42
- (await readFreshGameRuntimeVersion(ctx, input.game, options));
43
- freshGameVersions?.set(input.game, gameVersion);
44
- if (gameVersion !== 2)
45
- fail(input.game, gameVersion === 1
46
- ? 'belongs to a migration-sealed Game'
47
- : `uses unsupported Game runtime version ${gameVersion}`);
39
+ /** Resolve creation targets after the caller has freshly validated Game 2 and its initializer. */
40
+ export async function resolveCharacterRegistrationXpRuntime(ctx, input, options) {
48
41
  const [config, budget] = await Promise.all([
49
42
  derive('XpBudgetConfig', [input.game]),
50
43
  derive('CareerXpBudget', [input.game, input.character]),
@@ -52,12 +45,16 @@ export async function resolveCharacterRegistrationXpRuntime(ctx, input, freshGam
52
45
  const [configAccount, budgetAccount] = await readContextRawAccounts(ctx, [config[0], budget[0]], options);
53
46
  const configValue = decode(configAccount, config[0], getXpBudgetConfigDecoder(), XP_BUDGET_CONFIG_DISCRIMINATOR);
54
47
  validateBinding(configValue, config[0], input.game, config[1], 1);
55
- if (budgetAccount !== undefined)
48
+ if (budgetAccount !== undefined &&
49
+ (budgetAccount.executable ||
50
+ budgetAccount.owner !== '11111111111111111111111111111111' ||
51
+ budgetAccount.data.length !== 0))
56
52
  fail(budget[0], 'already exists while its canonical Character is absent; reconcile the partial registration before retrying');
57
53
  return {
58
54
  xpBudget: budget[0],
59
55
  xpBudgetConfig: config[0],
60
56
  configAccount: configAccount,
57
+ budgetLamports: budgetAccount?.lamports ?? 0n,
61
58
  };
62
59
  }
63
60
  /** Resolve existing canonical XP accounts without migrating or creating anything.