@algorandfoundation/algokit-utils 5.5.1 → 5.5.2-beta.2

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.
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "**"
7
7
  ],
8
8
  "name": "@algorandfoundation/algokit-utils",
9
- "version": "5.5.1",
9
+ "version": "5.5.2-beta.2",
10
10
  "private": false,
11
11
  "description": "A set of core Algorand utilities written in TypeScript and released via npm that make it easier to build solutions on Algorand.",
12
12
  "author": "Algorand Foundation",
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/transaction/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/transaction/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAA;AAI7B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EACL,+BAA+B,EAC/B,oCAAoC,EACpC,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EAClB,MAAM,sBAAsB,CAAA;AAG7B,OAAO,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;AAChC,OAAO,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAA;AACpE,OAAO,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;AAClC,OAAO,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;AAChD,OAAO,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;AAExC,OAAO,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAA;AAE5D,eAAO,MAAM,0BAA0B,KAAK,CAAA;AAC5C,eAAO,MAAM,+BAA+B,IAAI,CAAA;AAChD,eAAO,MAAM,+BAA+B,IAAI,CAAA;AAEhD;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,eAAe,GAAG,UAAU,GAAG,SAAS,CAcpF;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CA0B/E;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,WAAqB,MAAM,GAAG,mBAAmB,WAE7E,CAAA;AAWD;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB,gBACtB,qBAAqB,GAAG,iBAAiB,GAAG,WAAW,GAAG,QAAQ,qBAAqB,CAAC,kBACrF,mBAAmB,KAClC,QAAQ,qBAAqB,CAkB/B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,yDAMrC,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,gBAAuB,WAAW,UAAU,mBAAmB,wBAQ1F,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,SACpB;IACJ,WAAW,EAAE,WAAW,CAAA;IACxB,IAAI,EAAE,mBAAmB,CAAA;IACzB,UAAU,CAAC,EAAE,qBAAqB,CAAA;CACnC,SACM,OAAO,KACb,QAAQ,qBAAqB,CAwC/B,CAAA;AAsCD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,OAAO,CAAC,yBAAyB,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,8CAmN5G;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B,YAA4B,+BAA+B,SAAS,OAAO,kDAwHpH,CAAA;AAED;;;;;GAKG;AACH,wBAAsB,sCAAsC,CAAC,GAAG,EAAE,yBAAyB,EAAE,KAAK,EAAE,OAAO,iCAO1G;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,cAA8B,sBAAsB,SAAS,OAAO,mEAgCvG,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,kBACf,MAAM,mBACJ,MAAM,GAAG,MAAM,SACzB,OAAO,KACb,QAAQ,SAAS,0BAA0B,CA4C7C,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,GAAG,eAAe,EAAE,gBAAgB,EAAE,UAAU,QAgBjH;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,eAAe,GAAG,WAAW,EACjE,WAAW,EAAE,CAAC,EACd,UAAU,EAAE;IAAE,GAAG,CAAC,EAAE,UAAU,CAAC;IAAC,MAAM,CAAC,EAAE,UAAU,CAAA;CAAE,KAatD;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO;;;;;;;GAE7F;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,CAAC,GAAG,EAAE,yBAAyB,mCAMtF"}
@@ -269,7 +269,65 @@ async function populateAppCallResources(atc, algod) {
269
269
  throw Error(`Resource reference limit of ${MAX_APP_CALL_FOREIGN_REFERENCES} exceeded in transaction ${i}`);
270
270
  }
271
271
  });
272
- const findTxnBelowRefLimit = (txns, type = 'other') => {
272
+ const populateGroupResource = (txns, reference, type) => {
273
+ // If this is a asset holding or app local, first try to find a transaction that already has the account available
274
+ if (type === 'assetHolding' || type === 'appLocal') {
275
+ const { account } = reference;
276
+ const isApplBelowLimit = (t) => {
277
+ if (t.txn.type !== algosdk.TransactionType.appl)
278
+ return false;
279
+ const accounts = t.txn.appAccounts?.length || 0;
280
+ const assets = t.txn.appForeignAssets?.length || 0;
281
+ const apps = t.txn.appForeignApps?.length || 0;
282
+ const boxes = t.txn.boxes?.length || 0;
283
+ return accounts + assets + apps + boxes < MAX_APP_CALL_FOREIGN_REFERENCES;
284
+ };
285
+ let txnIndex = txns.findIndex((t) => {
286
+ if (!isApplBelowLimit(t))
287
+ return false;
288
+ return (
289
+ // account is in the foreign accounts array
290
+ t.txn.appAccounts?.map((a) => algosdk.encodeAddress(a.publicKey)).includes(account) ||
291
+ // account is available as an app account
292
+ t.txn.appForeignApps?.map((a) => algosdk.getApplicationAddress(a)).includes(account) ||
293
+ // account is available since it's in one of the fields
294
+ Object.values(t.txn)
295
+ .map((f) => JSON.stringify(f))
296
+ .includes(JSON.stringify(algosdk.decodeAddress(account))));
297
+ });
298
+ if (txnIndex > -1) {
299
+ if (type === 'assetHolding') {
300
+ const { asset } = reference;
301
+ txns[txnIndex].txn.appForeignAssets?.push(Number(asset));
302
+ }
303
+ else {
304
+ const { app } = reference;
305
+ txns[txnIndex].txn.appForeignApps?.push(Number(app));
306
+ }
307
+ return;
308
+ }
309
+ // Now try to find a txn that already has that app or asset available
310
+ txnIndex = txns.findIndex((t) => {
311
+ if (!isApplBelowLimit(t))
312
+ return false;
313
+ // check if there is space in the accounts array
314
+ if ((t.txn.appAccounts?.length || 0) >= MAX_APP_CALL_ACCOUNT_REFERENCES)
315
+ return false;
316
+ if (type === 'assetHolding') {
317
+ const { asset } = reference;
318
+ return t.txn.appForeignAssets?.includes(Number(asset));
319
+ }
320
+ else {
321
+ const { app } = reference;
322
+ return t.txn.appForeignApps?.includes(Number(app)) || t.txn.appIndex === Number(app);
323
+ }
324
+ });
325
+ if (txnIndex > -1) {
326
+ const { account } = reference;
327
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(account));
328
+ return;
329
+ }
330
+ }
273
331
  const txnIndex = txns.findIndex((t) => {
274
332
  if (t.txn.type !== algosdk.TransactionType.appl)
275
333
  return false;
@@ -287,43 +345,63 @@ async function populateAppCallResources(atc, algod) {
287
345
  if (txnIndex === -1) {
288
346
  throw Error('No more transactions below reference limit. Add another app call to the group.');
289
347
  }
290
- return txnIndex;
348
+ if (type === 'account') {
349
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(reference));
350
+ }
351
+ else if (type === 'app') {
352
+ txns[txnIndex].txn.appForeignApps?.push(Number(reference));
353
+ }
354
+ else if (type === 'box') {
355
+ const { app, name } = reference;
356
+ txns[txnIndex].txn.boxes?.push({ appIndex: Number(app), name: name });
357
+ }
358
+ else if (type === 'assetHolding') {
359
+ const { asset, account } = reference;
360
+ txns[txnIndex].txn.appForeignAssets?.push(Number(asset));
361
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(account));
362
+ }
363
+ else if (type === 'appLocal') {
364
+ const { app, account } = reference;
365
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(account));
366
+ txns[txnIndex].txn.appForeignApps?.push(Number(app));
367
+ }
368
+ else if (type === 'asset') {
369
+ txns[txnIndex].txn.appForeignAssets?.push(Number(reference));
370
+ }
291
371
  };
292
372
  const g = unnamedResourcesAccessed.group;
293
373
  if (g) {
294
374
  // Do cross-reference resources first because they are the most restrictive in terms
295
375
  // of which transactions can be used
296
376
  g.appLocals?.forEach((a) => {
297
- const txnIndex = findTxnBelowRefLimit(group, 'appLocal');
298
- group[txnIndex].txn.appForeignApps?.push(Number(a.app));
299
- group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a.account));
377
+ populateGroupResource(group, a, 'appLocal');
378
+ // Remove resources from the group if we're adding them here
379
+ g.accounts = g.accounts?.filter((acc) => acc !== a.account);
380
+ g.apps = g.apps?.filter((app) => BigInt(app) !== BigInt(a.app));
300
381
  });
301
382
  g.assetHoldings?.forEach((a) => {
302
- const txnIndex = findTxnBelowRefLimit(group, 'assetHolding');
303
- group[txnIndex].txn.appForeignAssets?.push(Number(a.asset));
304
- group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a.account));
383
+ populateGroupResource(group, a, 'assetHolding');
384
+ // Remove resources from the group if we're adding them here
385
+ g.accounts = g.accounts?.filter((acc) => acc !== a.account);
386
+ g.assets = g.assets?.filter((asset) => BigInt(asset) !== BigInt(a.asset));
305
387
  });
306
388
  // Do accounts next because the account limit is 4
307
389
  g.accounts?.forEach((a) => {
308
- const txnIndex = findTxnBelowRefLimit(group, 'account');
309
- group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a));
390
+ populateGroupResource(group, a, 'account');
310
391
  });
311
392
  g.boxes?.forEach((b) => {
312
- const txnIndex = findTxnBelowRefLimit(group);
313
- group[txnIndex].txn.boxes?.push({ appIndex: Number(b.app), name: b.name });
393
+ populateGroupResource(group, b, 'box');
314
394
  });
315
395
  g.assets?.forEach((a) => {
316
- const txnIndex = findTxnBelowRefLimit(group);
317
- group[txnIndex].txn.appForeignAssets?.push(Number(a));
396
+ populateGroupResource(group, a, 'asset');
318
397
  });
319
398
  g.apps?.forEach((a) => {
320
- const txnIndex = findTxnBelowRefLimit(group);
321
- group[txnIndex].txn.appForeignApps?.push(Number(a));
399
+ populateGroupResource(group, a, 'app');
322
400
  });
323
401
  if (g.extraBoxRefs) {
324
402
  for (let i = 0; i < g.extraBoxRefs; i += 1) {
325
- const txnIndex = findTxnBelowRefLimit(group);
326
- group[txnIndex].txn.boxes?.push({ appIndex: 0, name: new Uint8Array(0) });
403
+ const ref = new algosdk.modelsv2.BoxReference({ app: 0, name: new Uint8Array(0) });
404
+ populateGroupResource(group, ref, 'box');
327
405
  }
328
406
  }
329
407
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.js","sources":["../../src/transaction/transaction.ts"],"sourcesContent":[null],"names":["Config","Buffer","simulateAndPersistResponse","performAtomicTransactionComposerSimulate","toNumber"],"mappings":"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"}
1
+ {"version":3,"file":"transaction.js","sources":["../../src/transaction/transaction.ts"],"sourcesContent":[null],"names":["Config","Buffer","simulateAndPersistResponse","performAtomicTransactionComposerSimulate","toNumber"],"mappings":";;;;;;;;;AAmBA,IAAO,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAA;AACpE,IAAO,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;AAM3B,MAAM,0BAA0B,GAAG,GAAE;AACrC,MAAM,+BAA+B,GAAG,EAAC;AACzC,MAAM,+BAA+B,GAAG,EAAC;AAEhD;;;;;;;;;;;AAWG;AACG,SAAU,qBAAqB,CAAC,IAAsB,EAAA;IAC1D,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;AAC/C,QAAA,OAAO,SAAS,CAAA;KACjB;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;AACtE,QAAA,OAAO,IAAI,CAAA;KACZ;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,UAAU,IAAI,IAAI,EAAE;AACzD,QAAA,MAAM,WAAW,GAAG,CAAG,EAAA,IAAI,CAAC,QAAQ,CAAA,CAAA,EAAI,IAAI,CAAC,MAAM,CAAG,EAAA,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;AAC7H,QAAA,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;AACjC,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;KACnC;SAAM;AACL,QAAA,MAAM,CAAC,GAAG,OAAO,IAAI,KAAK,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;AAChE,QAAA,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;AACjC,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;KACzB;AACH,CAAC;AAED;;;;;;;AAOG;AACG,SAAU,WAAW,CAAC,KAA2B,EAAA;IACrD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;AAClD,QAAA,OAAO,SAAS,CAAA;KACjB;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,KAAK,UAAU,EAAE;AACxE,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE;YAC3C,MAAM,IAAI,KAAK,CACb,CAAA,wGAAA,EAA2G,KAAK,CAAC,MAAM,CAAE,CAAA,CAC1H,CAAA;SACF;AACD,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE;AAAE,YAAA,OAAO,KAAK,CAAA;AACrC,QAAA,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAA;AAClC,QAAA,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AACrB,QAAA,OAAO,OAAO,CAAA;KACf;AAAM,SAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACpC,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE;YAC3C,MAAM,IAAI,KAAK,CACb,CAA0F,uFAAA,EAAA,KAAK,CAAiB,cAAA,EAAA,KAAK,CAAC,MAAM,CAAE,CAAA,CAC/H,CAAA;SACF;AACD,QAAA,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;AACjC,QAAA,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAA;AAClC,QAAA,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;AACrC,QAAA,OAAO,OAAO,CAAA;KACf;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,CAAA,+BAAA,EAAkC,OAAO,KAAK,CAAA,CAAE,CAAC,CAAA;KAClE;AACH,CAAC;AAED;;;;AAIG;AACI,MAAM,gBAAgB,GAAG,UAAU,MAAoC,EAAA;IAC5E,OAAO,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,IAAI,MAAM,GAAG,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;AAChG,EAAC;AAED,MAAM,OAAO,GAAG,CAA2B,EAAiB,KAAI;AAC9D,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA;IACvB,MAAM,MAAM,GAAG,UAAyB,GAAM,EAAA;AAC5C,QAAA,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAC/F,KAAC,CAAA;AACD,IAAA,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;AACpB,IAAA,OAAO,MAAuB,CAAA;AAChC,CAAC,CAAA;AAED;;;;;;;;;AASG;AACU,MAAA,wBAAwB,GAAG,OACtC,WAAqG,EACrG,aAAmC,KACD;IAClC,IAAI,KAAK,IAAI,WAAW;AAAE,QAAA,OAAO,WAAW,CAAA;IAC5C,IAAI,aAAa,KAAK,SAAS;AAC7B,QAAA,MAAM,IAAI,KAAK,CAAC,2GAA2G,CAAC,CAAA;IAC9H,OAAO,WAAW,YAAY,OAAO;AACnC,UAAE;AACE,YAAA,GAAG,EAAE,CAAC,MAAM,WAAW,EAAE,WAAW;AACpC,YAAA,MAAM,EAAE,0BAA0B,CAAC,aAAa,CAAC;AAClD,SAAA;UACD,aAAa,IAAI,WAAW;AAC5B,cAAE;gBACE,GAAG,EAAE,WAAW,CAAC,WAAW;AAC5B,gBAAA,MAAM,EAAE,0BAA0B,CAAC,WAAW,CAAC,MAAM,CAAC;AACvD,aAAA;AACH,cAAE;AACE,gBAAA,GAAG,EAAE,WAAW;AAChB,gBAAA,MAAM,EAAE,0BAA0B,CAAC,aAAa,CAAC;aAClD,CAAA;AACT,EAAC;AAED;;;;;AAKG;AACU,MAAA,0BAA0B,GAAG,OAAO,CAAC,UAAU,MAA2B,EAAA;IACrF,OAAO,QAAQ,IAAI,MAAM;UACrB,MAAM,CAAC,MAAM;UACb,MAAM,IAAI,MAAM;AAChB,cAAE,OAAO,CAAC,oCAAoC,CAAC,MAAM,CAAC;AACtD,cAAE,OAAO,CAAC,iCAAiC,CAAC,MAAM,CAAC,CAAA;AACzD,CAAC,EAAC;AAEF;;;;;AAKG;AACU,MAAA,eAAe,GAAG,OAAO,WAAwB,EAAE,MAA2B,KAAI;IAC7F,OAAO,IAAI,IAAI,MAAM;UACjB,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;UAC9B,MAAM,IAAI,MAAM;cACd,OAAO,CAAC,6BAA6B,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI;cAC/D,MAAM,IAAI,MAAM;AAChB,kBAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;AAC1B,kBAAE,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACtD,EAAC;AAED;;;;;;;;;AASG;MACU,eAAe,GAAG,gBAC7B,IAIC,EACD,KAAc,EAAA;IAEd,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;AAC9C,IAAA,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,8BAA8B,EAAE,GAAG,EAAE,GAAG,UAAU,IAAI,EAAE,CAAA;IAEpH,WAAW,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;IAEzC,IAAI,GAAG,EAAE;AACP,QAAA,GAAG,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClF,OAAO,EAAE,WAAW,EAAE,CAAA;KACvB;IAED,IAAI,WAAW,EAAE;QACf,OAAO,EAAE,WAAW,EAAE,CAAA;KACvB;IAED,IAAI,SAAS,GAAG,WAAW,CAAA;IAE3B,MAAM,iBAAiB,GAAG,UAAU,EAAE,wBAAwB,IAAIA,aAAM,CAAC,wBAAwB,CAAA;;;AAIjG,IAAA,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,eAAe,CAAC,IAAI,IAAI,iBAAiB,EAAE;AACxE,QAAA,MAAM,MAAM,GAAG,IAAI,yBAAyB,EAAE,CAAA;AAC9C,QAAA,MAAM,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACnF,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC5D,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;KACvC;IAED,MAAM,iBAAiB,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAEhE,MAAM,KAAK,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAA;IAEtDA,aAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAuB,oBAAA,EAAA,SAAS,CAAC,IAAI,EAAE,CAAI,CAAA,EAAA,SAAS,CAAC,IAAI,CAAS,MAAA,EAAA,gBAAgB,CAAC,IAAI,CAAC,CAAE,CAAA,CAAC,CAAA;IAE9H,IAAI,YAAY,GAAoD,SAAS,CAAA;IAC7E,IAAI,CAAC,WAAW,EAAE;AAChB,QAAA,YAAY,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,8BAA8B,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;KACvG;AAED,IAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,CAAA;AACjD,EAAC;AAED;;;;;;AAMG;AACH,eAAe,kCAAkC,CAAC,GAAsC,EAAE,KAAsB,EAAA;IAC9G,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;AAClD,QAAA,SAAS,EAAE,EAAE;AACb,QAAA,qBAAqB,EAAE,IAAI;AAC3B,QAAA,oBAAoB,EAAE,IAAI;AAC3B,KAAA,CAAC,CAAA;AAEF,IAAA,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,EAAE,CAAA;IAClC,cAAc,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAgC,KAAI;AAC1E,QAAA,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAA;AACjD,KAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAE3D,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AAE1D,IAAA,IAAI,aAAa,CAAC,cAAc,EAAE;AAChC,QAAA,MAAM,KAAK,CAAC,CAA8D,2DAAA,EAAA,aAAa,CAAC,QAAQ,CAAK,EAAA,EAAA,aAAa,CAAC,cAAc,CAAE,CAAA,CAAC,CAAA;KACrI;IAED,OAAO;QACL,KAAK,EAAE,aAAa,CAAC,wBAAwB;AAC7C,QAAA,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG;;AAEhC,QAAA,CAAC,CAAM,KAAK,CAAC,CAAC,wBAAwB,CACgB;KACzD,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;AAgBG;AACI,eAAe,wBAAwB,CAAC,GAAsC,EAAE,KAAsB,EAAA;IAC3G,MAAM,wBAAwB,GAAG,MAAM,kCAAkC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;AACrF,IAAA,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;IAE9B,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;QAC7C,IAAI,CAAC,KAAK,SAAS;YAAE,OAAM;AAE3B,QAAA,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,YAAY;AAAE,YAAA,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAA;QACvF,IAAI,CAAC,CAAC,SAAS;AAAE,YAAA,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAA;QAC7E,IAAI,CAAC,CAAC,aAAa;AAAE,YAAA,MAAM,KAAK,CAAC,mDAAmD,CAAC,CAAA;;QAGrF,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACxB,YAAA,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;AAC1D,SAAC,CAAC,CAAA;QAEF,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACpB,YAAA,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AAC9C,SAAC,CAAC,CAAA;QAEF,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACtB,YAAA,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AAChD,SAAC,CAAC,CAAA;AAEF,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,CAAA;QACtD,IAAI,QAAQ,GAAG,+BAA+B;YAC5C,MAAM,KAAK,CAAC,CAA8B,2BAAA,EAAA,+BAA+B,4BAA4B,CAAC,CAAA,CAAE,CAAC,CAAA;AAE3G,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,IAAI,CAAC,CAAA;AACzD,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAA;AACrD,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAA;QAE7C,IAAI,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,GAAG,+BAA+B,EAAE;YACtE,MAAM,KAAK,CAAC,CAA+B,4BAAA,EAAA,+BAA+B,4BAA4B,CAAC,CAAA,CAAE,CAAC,CAAA;SAC3G;AACH,KAAC,CAAC,CAAA;IAEF,MAAM,qBAAqB,GAAG,CAC5B,IAAqC,EACrC,SAMU,EACV,IAAuE,KAC/D;;QAER,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,UAAU,EAAE;AAClD,YAAA,MAAM,EAAE,OAAO,EAAE,GAAG,SAAgG,CAAA;AAEpH,YAAA,MAAM,gBAAgB,GAAG,CAAC,CAAgC,KAAI;gBAC5D,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,eAAe,CAAC,IAAI;AAAE,oBAAA,OAAO,KAAK,CAAA;gBAE7D,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,CAAA;gBAC/C,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,IAAI,CAAC,CAAA;gBAClD,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAA;gBAC9C,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAA;gBAEtC,OAAO,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,GAAG,+BAA+B,CAAA;AAC3E,aAAC,CAAA;YAED,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAClC,gBAAA,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAAE,oBAAA,OAAO,KAAK,CAAA;gBAEtC;;gBAEE,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;;oBAEnF,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;;AAEpF,oBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;AACjB,yBAAA,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7B,yBAAA,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAC5D;AACH,aAAC,CAAC,CAAA;AAEF,YAAA,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE;AACjB,gBAAA,IAAI,IAAI,KAAK,cAAc,EAAE;AAC3B,oBAAA,MAAM,EAAE,KAAK,EAAE,GAAG,SAAmD,CAAA;AACrE,oBAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;iBACzD;qBAAM;AACL,oBAAA,MAAM,EAAE,GAAG,EAAE,GAAG,SAAuD,CAAA;AACvE,oBAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;iBACrD;gBACD,OAAM;aACP;;YAGD,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC9B,gBAAA,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAAE,oBAAA,OAAO,KAAK,CAAA;;AAGtC,gBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,KAAK,+BAA+B;AAAE,oBAAA,OAAO,KAAK,CAAA;AAErF,gBAAA,IAAI,IAAI,KAAK,cAAc,EAAE;AAC3B,oBAAA,MAAM,EAAE,KAAK,EAAE,GAAG,SAAmD,CAAA;AACrE,oBAAA,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;iBACvD;qBAAM;AACL,oBAAA,MAAM,EAAE,GAAG,EAAE,GAAG,SAAuD,CAAA;oBACvE,OAAO,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC,GAAG,CAAC,CAAA;iBACrF;AACH,aAAC,CAAC,CAAA;AAEF,YAAA,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE;AACjB,gBAAA,MAAM,EAAE,OAAO,EAAE,GAAG,SAAgG,CAAA;AAEpH,gBAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAA;gBAEpE,OAAM;aACP;SACF;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;YACpC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,eAAe,CAAC,IAAI;AAAE,gBAAA,OAAO,KAAK,CAAA;YAE7D,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,CAAA;YAC/C,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,QAAQ,GAAG,+BAA+B,CAAA;YAEzE,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,IAAI,CAAC,CAAA;YAClD,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAA;YAC9C,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAA;YAEtC,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,UAAU,EAAE;AAClD,gBAAA,OAAO,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,GAAG,+BAA+B,GAAG,CAAC,IAAI,QAAQ,GAAG,+BAA+B,CAAA;aAC5H;YAED,OAAO,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,GAAG,+BAA+B,CAAA;AAC3E,SAAC,CAAC,CAAA;AAEF,QAAA,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE;AACnB,YAAA,MAAM,KAAK,CAAC,gFAAgF,CAAC,CAAA;SAC9F;AAED,QAAA,IAAI,IAAI,KAAK,SAAS,EAAE;AACtB,YAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAmB,CAAC,CAAC,CAAA;SACjF;AAAM,aAAA,IAAI,IAAI,KAAK,KAAK,EAAE;AACzB,YAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;SAC3D;AAAM,aAAA,IAAI,IAAI,KAAK,KAAK,EAAE;AACzB,YAAA,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,SAA0C,CAAA;YAChE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;SACtE;AAAM,aAAA,IAAI,IAAI,KAAK,cAAc,EAAE;AAClC,YAAA,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,SAAmD,CAAA;AAC9E,YAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;AACxD,YAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAA;SACrE;AAAM,aAAA,IAAI,IAAI,KAAK,UAAU,EAAE;AAC9B,YAAA,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,SAAuD,CAAA;AAChF,YAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAA;AACpE,YAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;SACrD;AAAM,aAAA,IAAI,IAAI,KAAK,OAAO,EAAE;AAC3B,YAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;SAC7D;AACH,KAAC,CAAA;AAED,IAAA,MAAM,CAAC,GAAG,wBAAwB,CAAC,KAAK,CAAA;IAExC,IAAI,CAAC,EAAE;;;QAGL,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACzB,YAAA,qBAAqB,CAAC,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAA;;YAG3C,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAA;YAC3D,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;AACjE,SAAC,CAAC,CAAA;QAEF,CAAC,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AAC7B,YAAA,qBAAqB,CAAC,KAAK,EAAE,CAAC,EAAE,cAAc,CAAC,CAAA;;YAG/C,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAA;YAC3D,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;AAC3E,SAAC,CAAC,CAAA;;QAGF,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACxB,YAAA,qBAAqB,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;AAC5C,SAAC,CAAC,CAAA;QAEF,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACrB,YAAA,qBAAqB,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;AACxC,SAAC,CAAC,CAAA;QAEF,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACtB,YAAA,qBAAqB,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;AAC1C,SAAC,CAAC,CAAA;QAEF,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AACpB,YAAA,qBAAqB,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;AACxC,SAAC,CAAC,CAAA;AAEF,QAAA,IAAI,CAAC,CAAC,YAAY,EAAE;AAClB,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE;gBAC1C,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAClF,gBAAA,qBAAqB,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;aACzC;SACF;KACF;AAED,IAAA,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAA;AAEtD,IAAA,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;;AAElB,QAAA,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAA;AACvB,QAAA,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA;AAC1B,KAAC,CAAC,CAAA;IAEF,MAAM,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,aAAa,CAAC,CAAA;AAC1C,IAAA,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;AAOG;MACU,6BAA6B,GAAG,gBAAgB,OAAwC,EAAE,KAAc,EAAA;IACnH,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;AAE7C,IAAA,IAAI,GAA8B,CAAA;;;;;;IAQlC,GAAG,GAAG,QAAQ,CAAA;AACd,IAAA,IAAI;;;QAGF,MAAM,iBAAiB,GAAG,UAAU,EAAE,wBAAwB,IAAIA,aAAM,CAAC,wBAAwB,CAAA;QAEjG,IAAI,iBAAiB,EAAE;YACrB,GAAG,GAAG,MAAM,wBAAwB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;SACtD;AAED,QAAA,MAAM,sBAAsB,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QAE/C,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YAC1D,OAAO,CAAC,CAAC,GAAG,CAAA;AACd,SAAC,CAAC,CAAA;QACF,IAAI,OAAO,GAAuB,SAAS,CAAA;AAC3C,QAAA,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;AACjC,YAAA,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,GAAGC,aAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;AACxG,YAAAD,aAAM,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,oBAAoB,kBAAkB,CAAC,MAAM,CAAkB,eAAA,EAAA,OAAO,GAAG,EAAE;gBACxH,kBAAkB;AACnB,aAAA,CAAC,CAAA;AAEF,YAAAA,aAAM,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,KAAK,CAC7C,CAAoB,iBAAA,EAAA,OAAO,CAAG,CAAA,CAAA,EAC9B,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CACxC,CAAA;SACF;AAED,QAAA,IAAIA,aAAM,CAAC,KAAK,IAAIA,aAAM,CAAC,WAAW,IAAIA,aAAM,CAAC,QAAQ,EAAE;;AAEzD,YAAA,MAAME,qDAA0B,CAAC;gBAC/B,GAAG;gBACH,WAAW,EAAEF,aAAM,CAAC,WAAW;gBAC/B,KAAK;gBACL,YAAY,EAAEA,aAAM,CAAC,iBAAiB;AACvC,aAAA,CAAC,CAAA;SACH;AACD,QAAA,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,8BAA8B,IAAI,CAAC,CAAC,CAAA;AAExF,QAAA,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;AACjC,YAAAA,aAAM,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,CAAA,mBAAA,EAAsB,OAAO,CAAe,YAAA,EAAA,kBAAkB,CAAC,MAAM,CAAA,aAAA,CAAe,CAAC,CAAA;SACrI;aAAM;AACL,YAAAA,aAAM,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,IAAI,CAC5C,CAAA,oBAAA,EAAuB,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAI,CAAA,EAAA,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,OAAO,CAAC,aAAa,CAC7G,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CACrC,CAAA,CAAE,CACJ,CAAA;SACF;QAED,IAAI,aAAa,GAAsD,SAAS,CAAA;AAChF,QAAA,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE;AAC5B,YAAA,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,KAC7B,QAAQ,CAAC,0BAA0B,CAAC,qBAAqB,CAAC,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CACpH,CACF,CAAA;SACF;QAED,OAAO;YACL,OAAO;YACP,aAAa;AACb,YAAA,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9C,YAAA,YAAY,EAAE,kBAAkB;AAChC,YAAA,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAC/B,CAAC,CAAC,MACC;gBACC,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,cAAc,EAAE,CAAC,CAAC,cAAc;AACjC,aAAA,CAAc,CAClB;SACsC,CAAA;;KAE1C;IAAC,OAAO,CAAM,EAAE;AACf,QAAAA,aAAM,CAAC,MAAM,CAAC,IAAI,CAAC,kGAAkG,CAAC,CAAA;QACtH,IAAIA,aAAM,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;AACzC,YAAA,CAAC,CAAC,MAAM,GAAG,EAAE,CAAA;AACb,YAAAA,aAAM,CAAC,MAAM,CAAC,KAAK,CACjB,4HAA4H,CAC7H,CAAA;YACD,IAAI,QAAQ,GAAG,SAAS,CAAA;AACxB,YAAA,IAAIA,aAAM,CAAC,KAAK,IAAIA,aAAM,CAAC,WAAW,IAAI,CAACA,aAAM,CAAC,QAAQ,EAAE;;;;gBAI1D,QAAQ,GAAG,MAAME,qDAA0B,CAAC;oBAC1C,GAAG;oBACH,WAAW,EAAEF,aAAM,CAAC,WAAW;oBAC/B,KAAK;oBACL,YAAY,EAAEA,aAAM,CAAC,iBAAiB;AACvC,iBAAA,CAAC,CAAA;aACH;iBAAM;gBACL,QAAQ,GAAG,MAAMG,iFAAwC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;aACtE;YAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;AAC9C,gBAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE;AAClD,oBAAA,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;AACZ,wBAAA,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,oBAAoB,EAAE;wBAC5C,SAAS,EAAE,GAAG,CAAC,iBAAiB;wBAChC,cAAc,EAAE,GAAG,CAAC,sBAAsB;AAC1C,wBAAA,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI;wBACxB,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc;AAC9C,qBAAA,CAAC,CAAA;iBACH;aACF;SACF;AACD,QAAA,MAAM,CAAC,CAAA;KACR;AACH,EAAC;AAED;;;;;AAKG;AACI,eAAe,sCAAsC,CAAC,GAA8B,EAAE,KAAc,EAAA;AACzG,IAAA,MAAM,kBAAkB,GAAG,MAAM,GAAG,CAAC,gBAAgB,EAAE,CAAA;IACvD,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;AACxC,QAAA,OAAO,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAA;AAC3C,KAAC,CAAC,CAAA;AACF,IAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AAClE,IAAA,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AAClE,CAAC;AAED;;;;;;;;AAQG;MACU,uBAAuB,GAAG,gBAAgB,SAAiC,EAAE,KAAc,EAAA;IACtG,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAA;AAEtD,IAAA,MAAM,wBAAwB,GAAG,MAAM,GAAG,0BAA0B,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;AAExF,IAAA,MAAM,sBAAsB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9C,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,KAAI;QAC3B,IAAI,QAAQ,IAAI,CAAC;YACf,OAAO;gBACL,GAAG,EAAE,CAAC,CAAC,WAAW;AAClB,gBAAA,MAAM,EAAE,0BAA0B,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC5C,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAA;AAEH,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,CAAC,CAAA;QACnD,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,CAA+B,4BAAA,EAAA,GAAG,CAAC,IAAI,EAAE,CAAwE,sEAAA,CAAA,CAAC,CAAA;SACnI;QAED,OAAO;YACL,GAAG;;AAEH,YAAA,MAAM,EAAE,wBAAyB;AACjC,YAAA,MAAM,EAAE,MAAM;SACf,CAAA;KACF,CAAC,CACH,CAAA;AAED,IAAA,MAAM,GAAG,GAAG,IAAI,yBAAyB,EAAE,CAAA;AAC3C,IAAA,sBAAsB,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAA;AAEhE,IAAA,QAAQ,MAAM,6BAA6B,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,KAAK,CAAC,EAA0D;AACnI,EAAC;AAED;;;;;;;;;;AAUG;AACU,MAAA,mBAAmB,GAAG,gBACjC,aAAqB,EACrB,eAAgC,EAChC,KAAc,EAAA;AAEd,IAAA,IAAI,eAAe,GAAG,CAAC,EAAE;AACvB,QAAA,MAAM,IAAI,KAAK,CAAC,6BAA6B,eAAe,CAAA,cAAA,CAAgB,CAAC,CAAA;KAC9E;;AAGD,IAAA,MAAM,MAAM,GAAG,QAAQ,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;AAC3F,IAAA,IAAI,MAAM,KAAK,SAAS,EAAE;AACxB,QAAA,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;KAC7C;;IAGD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;IAChD,IAAI,YAAY,GAAG,UAAU,CAAA;IAC7B,OAAO,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC,eAAe,CAAC,EAAE;AAC1D,QAAA,IAAI;AACF,YAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,0BAA0B,CAAC,qBAAqB,CAC3E,MAAM,KAAK,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC,EAAE,EAAE,CAC9D,CAAA;AACD,YAAA,IAAI,WAAW,KAAK,SAAS,EAAE;AAC7B,gBAAA,MAAM,cAAc,GAAG,WAAW,CAAC,cAAc,CAAA;AACjD,gBAAA,IAAI,cAAc,IAAI,cAAc,GAAG,CAAC,EAAE;AACxC,oBAAA,OAAO,WAAW,CAAA;iBACnB;qBAAM;AACL,oBAAA,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAA;oBACvC,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;;wBAE7C,MAAM,IAAI,KAAK,CAAC,CAAA,YAAA,EAAe,aAAa,CAA8B,2BAAA,EAAA,SAAS,CAAE,CAAA,CAAC,CAAA;qBACvF;iBACF;aACF;;SAEF;QAAC,OAAO,CAAU,EAAE;AACnB,YAAA,IAAK,CAAW,CAAC,IAAI,KAAK,uBAAuB,EAAE;AACjD,gBAAA,YAAY,EAAE,CAAA;gBACd,SAAQ;aACT;SACF;AAED,QAAA,MAAM,KAAK,CAAC,gBAAgB,CAACC,aAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AACzD,QAAA,YAAY,EAAE,CAAA;KACf;IAED,MAAM,IAAI,KAAK,CAAC,CAAA,YAAA,EAAe,aAAa,CAAwB,qBAAA,EAAA,eAAe,CAAS,OAAA,CAAA,CAAC,CAAA;AAC/F,EAAC;AAED;;;;;;AAMG;AACa,SAAA,iBAAiB,CAAC,WAAkD,EAAE,gBAA4B,EAAA;;AAEhH,IAAA,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;;;QAGxB,IAAI,WAAW,CAAC,GAAG,GAAG,gBAAgB,CAAC,UAAU,EAAE;AACjD,YAAA,MAAM,IAAI,KAAK,CACb,CAAA,wHAAA,EAA2H,WAAW,CAAC,GAAG,CAAA,qCAAA,EAAwC,gBAAgB,CAAC,UAAU,CAAA,QAAA,CAAU,CACxN,CAAA;SACF;aAAM,IAAI,WAAW,CAAC,GAAG,GAAG,OAAO,CAAC,mBAAmB,EAAE;YACxDJ,aAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAwF,qFAAA,EAAA,WAAW,CAAC,GAAG,CAAU,QAAA,CAAA,CAAC,CAAA;SACtI;;AAGD,QAAA,WAAW,CAAC,OAAO,GAAG,IAAI,CAAA;KAC3B;AACH,CAAC;AAED;;;;AAIG;AACa,SAAA,WAAW,CACzB,WAAc,EACd,UAAqD,EAAA;AAErD,IAAA,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,UAAU,CAAA;IAClC,IAAI,GAAG,EAAE;AACP,QAAA,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC,UAAU,CAAA;AAChC,QAAA,WAAW,CAAC,OAAO,GAAG,IAAI,CAAA;KAC3B;AAED,IAAA,IAAI,MAAM,KAAK,SAAS,EAAE;AACxB,QAAA,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;KACvC;AAED,IAAA,OAAO,WAAW,CAAA;AACpB,CAAC;AAED;;;;;AAKG;AACI,eAAe,oBAAoB,CAAC,MAAmC,EAAE,KAAc,EAAA;AAC5F,IAAA,OAAO,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,oBAAoB,EAAE,CAAC,EAAE,EAAE,CAAA;AACzE,CAAC;AAED;;;;AAIG;AACG,SAAU,wCAAwC,CAAC,GAA8B,EAAA;AACrF,IAAA,IAAI;AACF,QAAA,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,CAAA;KAChC;AAAC,IAAA,MAAM;AACN,QAAA,OAAO,EAAE,CAAA;KACV;AACH;;;;;;;;;;;;;;;;;;;;;;"}
@@ -267,7 +267,65 @@ async function populateAppCallResources(atc, algod) {
267
267
  throw Error(`Resource reference limit of ${MAX_APP_CALL_FOREIGN_REFERENCES} exceeded in transaction ${i}`);
268
268
  }
269
269
  });
270
- const findTxnBelowRefLimit = (txns, type = 'other') => {
270
+ const populateGroupResource = (txns, reference, type) => {
271
+ // If this is a asset holding or app local, first try to find a transaction that already has the account available
272
+ if (type === 'assetHolding' || type === 'appLocal') {
273
+ const { account } = reference;
274
+ const isApplBelowLimit = (t) => {
275
+ if (t.txn.type !== algosdk.TransactionType.appl)
276
+ return false;
277
+ const accounts = t.txn.appAccounts?.length || 0;
278
+ const assets = t.txn.appForeignAssets?.length || 0;
279
+ const apps = t.txn.appForeignApps?.length || 0;
280
+ const boxes = t.txn.boxes?.length || 0;
281
+ return accounts + assets + apps + boxes < MAX_APP_CALL_FOREIGN_REFERENCES;
282
+ };
283
+ let txnIndex = txns.findIndex((t) => {
284
+ if (!isApplBelowLimit(t))
285
+ return false;
286
+ return (
287
+ // account is in the foreign accounts array
288
+ t.txn.appAccounts?.map((a) => algosdk.encodeAddress(a.publicKey)).includes(account) ||
289
+ // account is available as an app account
290
+ t.txn.appForeignApps?.map((a) => algosdk.getApplicationAddress(a)).includes(account) ||
291
+ // account is available since it's in one of the fields
292
+ Object.values(t.txn)
293
+ .map((f) => JSON.stringify(f))
294
+ .includes(JSON.stringify(algosdk.decodeAddress(account))));
295
+ });
296
+ if (txnIndex > -1) {
297
+ if (type === 'assetHolding') {
298
+ const { asset } = reference;
299
+ txns[txnIndex].txn.appForeignAssets?.push(Number(asset));
300
+ }
301
+ else {
302
+ const { app } = reference;
303
+ txns[txnIndex].txn.appForeignApps?.push(Number(app));
304
+ }
305
+ return;
306
+ }
307
+ // Now try to find a txn that already has that app or asset available
308
+ txnIndex = txns.findIndex((t) => {
309
+ if (!isApplBelowLimit(t))
310
+ return false;
311
+ // check if there is space in the accounts array
312
+ if ((t.txn.appAccounts?.length || 0) >= MAX_APP_CALL_ACCOUNT_REFERENCES)
313
+ return false;
314
+ if (type === 'assetHolding') {
315
+ const { asset } = reference;
316
+ return t.txn.appForeignAssets?.includes(Number(asset));
317
+ }
318
+ else {
319
+ const { app } = reference;
320
+ return t.txn.appForeignApps?.includes(Number(app)) || t.txn.appIndex === Number(app);
321
+ }
322
+ });
323
+ if (txnIndex > -1) {
324
+ const { account } = reference;
325
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(account));
326
+ return;
327
+ }
328
+ }
271
329
  const txnIndex = txns.findIndex((t) => {
272
330
  if (t.txn.type !== algosdk.TransactionType.appl)
273
331
  return false;
@@ -285,43 +343,63 @@ async function populateAppCallResources(atc, algod) {
285
343
  if (txnIndex === -1) {
286
344
  throw Error('No more transactions below reference limit. Add another app call to the group.');
287
345
  }
288
- return txnIndex;
346
+ if (type === 'account') {
347
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(reference));
348
+ }
349
+ else if (type === 'app') {
350
+ txns[txnIndex].txn.appForeignApps?.push(Number(reference));
351
+ }
352
+ else if (type === 'box') {
353
+ const { app, name } = reference;
354
+ txns[txnIndex].txn.boxes?.push({ appIndex: Number(app), name: name });
355
+ }
356
+ else if (type === 'assetHolding') {
357
+ const { asset, account } = reference;
358
+ txns[txnIndex].txn.appForeignAssets?.push(Number(asset));
359
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(account));
360
+ }
361
+ else if (type === 'appLocal') {
362
+ const { app, account } = reference;
363
+ txns[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(account));
364
+ txns[txnIndex].txn.appForeignApps?.push(Number(app));
365
+ }
366
+ else if (type === 'asset') {
367
+ txns[txnIndex].txn.appForeignAssets?.push(Number(reference));
368
+ }
289
369
  };
290
370
  const g = unnamedResourcesAccessed.group;
291
371
  if (g) {
292
372
  // Do cross-reference resources first because they are the most restrictive in terms
293
373
  // of which transactions can be used
294
374
  g.appLocals?.forEach((a) => {
295
- const txnIndex = findTxnBelowRefLimit(group, 'appLocal');
296
- group[txnIndex].txn.appForeignApps?.push(Number(a.app));
297
- group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a.account));
375
+ populateGroupResource(group, a, 'appLocal');
376
+ // Remove resources from the group if we're adding them here
377
+ g.accounts = g.accounts?.filter((acc) => acc !== a.account);
378
+ g.apps = g.apps?.filter((app) => BigInt(app) !== BigInt(a.app));
298
379
  });
299
380
  g.assetHoldings?.forEach((a) => {
300
- const txnIndex = findTxnBelowRefLimit(group, 'assetHolding');
301
- group[txnIndex].txn.appForeignAssets?.push(Number(a.asset));
302
- group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a.account));
381
+ populateGroupResource(group, a, 'assetHolding');
382
+ // Remove resources from the group if we're adding them here
383
+ g.accounts = g.accounts?.filter((acc) => acc !== a.account);
384
+ g.assets = g.assets?.filter((asset) => BigInt(asset) !== BigInt(a.asset));
303
385
  });
304
386
  // Do accounts next because the account limit is 4
305
387
  g.accounts?.forEach((a) => {
306
- const txnIndex = findTxnBelowRefLimit(group, 'account');
307
- group[txnIndex].txn.appAccounts?.push(algosdk.decodeAddress(a));
388
+ populateGroupResource(group, a, 'account');
308
389
  });
309
390
  g.boxes?.forEach((b) => {
310
- const txnIndex = findTxnBelowRefLimit(group);
311
- group[txnIndex].txn.boxes?.push({ appIndex: Number(b.app), name: b.name });
391
+ populateGroupResource(group, b, 'box');
312
392
  });
313
393
  g.assets?.forEach((a) => {
314
- const txnIndex = findTxnBelowRefLimit(group);
315
- group[txnIndex].txn.appForeignAssets?.push(Number(a));
394
+ populateGroupResource(group, a, 'asset');
316
395
  });
317
396
  g.apps?.forEach((a) => {
318
- const txnIndex = findTxnBelowRefLimit(group);
319
- group[txnIndex].txn.appForeignApps?.push(Number(a));
397
+ populateGroupResource(group, a, 'app');
320
398
  });
321
399
  if (g.extraBoxRefs) {
322
400
  for (let i = 0; i < g.extraBoxRefs; i += 1) {
323
- const txnIndex = findTxnBelowRefLimit(group);
324
- group[txnIndex].txn.boxes?.push({ appIndex: 0, name: new Uint8Array(0) });
401
+ const ref = new algosdk.modelsv2.BoxReference({ app: 0, name: new Uint8Array(0) });
402
+ populateGroupResource(group, ref, 'box');
325
403
  }
326
404
  }
327
405
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.mjs","sources":["../../src/transaction/transaction.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.mjs","sources":["../../src/transaction/transaction.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}