@sudobility/contracts 1.10.1 → 1.11.0
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/artifacts/contracts/Mailer.sol/Mailer.d.ts +67 -2
- package/artifacts/contracts/Mailer.sol/Mailer.dbg.json +1 -1
- package/artifacts/contracts/Mailer.sol/Mailer.json +67 -2
- package/artifacts/contracts/MockUSDC.sol/MockUSDC.dbg.json +1 -1
- package/artifacts/contracts/interfaces/IERC20.sol/IERC20.dbg.json +1 -1
- package/dist/evm/typechain-types/Mailer.d.ts +50 -2
- package/dist/evm/typechain-types/Mailer.d.ts.map +1 -1
- package/dist/evm/typechain-types/factories/Mailer__factory.d.ts +53 -1
- package/dist/evm/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
- package/dist/evm/typechain-types/factories/Mailer__factory.js +66 -1
- package/dist/evm/typechain-types/factories/Mailer__factory.js.map +1 -1
- package/dist/unified/typechain-types/Mailer.d.ts +50 -2
- package/dist/unified/typechain-types/Mailer.d.ts.map +1 -1
- package/dist/unified/typechain-types/factories/Mailer__factory.d.ts +53 -1
- package/dist/unified/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
- package/dist/unified/typechain-types/factories/Mailer__factory.js +66 -1
- package/dist/unified/typechain-types/factories/Mailer__factory.js.map +1 -1
- package/dist/unified-esm/typechain-types/Mailer.d.ts +50 -2
- package/dist/unified-esm/typechain-types/Mailer.d.ts.map +1 -1
- package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts +53 -1
- package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
- package/dist/unified-esm/typechain-types/factories/Mailer__factory.js +66 -1
- package/dist/unified-esm/typechain-types/factories/Mailer__factory.js.map +1 -1
- package/package.json +6 -1
- package/programs/mailer/src/lib.rs +305 -13
- package/programs/mailer/tests/integration_tests.rs +206 -3
- package/typechain-types/Mailer.ts +79 -0
- package/typechain-types/factories/Mailer__factory.ts +66 -1
|
@@ -389,6 +389,205 @@ async fn test_send_standard_message() {
|
|
|
389
389
|
assert_eq!(mailer_state.owner_claimable, 10_000); // Only 10% fee
|
|
390
390
|
}
|
|
391
391
|
|
|
392
|
+
#[tokio::test]
|
|
393
|
+
async fn test_send_through_webhook_priority() {
|
|
394
|
+
let program_test = ProgramTest::new(
|
|
395
|
+
"mailer",
|
|
396
|
+
program_id(),
|
|
397
|
+
processor!(mailer::process_instruction),
|
|
398
|
+
);
|
|
399
|
+
let (mut banks_client, payer, recent_blockhash) = program_test.start().await;
|
|
400
|
+
|
|
401
|
+
// Setup similar to priority test
|
|
402
|
+
let usdc_mint = create_usdc_mint(&mut banks_client, &payer, recent_blockhash).await;
|
|
403
|
+
let (mailer_pda, _) = get_mailer_pda();
|
|
404
|
+
|
|
405
|
+
// Initialize the program
|
|
406
|
+
let init_instruction = Instruction::new_with_borsh(
|
|
407
|
+
program_id(),
|
|
408
|
+
&MailerInstruction::Initialize { usdc_mint },
|
|
409
|
+
vec![
|
|
410
|
+
AccountMeta::new(payer.pubkey(), true),
|
|
411
|
+
AccountMeta::new(mailer_pda, false),
|
|
412
|
+
AccountMeta::new_readonly(system_program::id(), false),
|
|
413
|
+
],
|
|
414
|
+
);
|
|
415
|
+
|
|
416
|
+
let mut transaction = Transaction::new_with_payer(&[init_instruction], Some(&payer.pubkey()));
|
|
417
|
+
transaction.sign(&[&payer], recent_blockhash);
|
|
418
|
+
banks_client.process_transaction(transaction).await.unwrap();
|
|
419
|
+
|
|
420
|
+
// Create token accounts
|
|
421
|
+
let sender_usdc = create_token_account(
|
|
422
|
+
&mut banks_client,
|
|
423
|
+
&payer,
|
|
424
|
+
recent_blockhash,
|
|
425
|
+
&usdc_mint,
|
|
426
|
+
&payer.pubkey(),
|
|
427
|
+
)
|
|
428
|
+
.await;
|
|
429
|
+
let mailer_usdc = create_token_account(
|
|
430
|
+
&mut banks_client,
|
|
431
|
+
&payer,
|
|
432
|
+
recent_blockhash,
|
|
433
|
+
&usdc_mint,
|
|
434
|
+
&mailer_pda,
|
|
435
|
+
)
|
|
436
|
+
.await;
|
|
437
|
+
|
|
438
|
+
// Mint USDC to sender
|
|
439
|
+
mint_to(
|
|
440
|
+
&mut banks_client,
|
|
441
|
+
&payer,
|
|
442
|
+
recent_blockhash,
|
|
443
|
+
&usdc_mint,
|
|
444
|
+
&sender_usdc,
|
|
445
|
+
1_000_000,
|
|
446
|
+
)
|
|
447
|
+
.await; // 1 USDC
|
|
448
|
+
|
|
449
|
+
// Get recipient claim PDA
|
|
450
|
+
let (recipient_claim_pda, _) = get_claim_pda(&payer.pubkey());
|
|
451
|
+
|
|
452
|
+
// Send message through webhook with revenue sharing (priority mode)
|
|
453
|
+
let instruction_data = MailerInstruction::SendThroughWebhook {
|
|
454
|
+
to: payer.pubkey(),
|
|
455
|
+
webhook_id: "webhook-123".to_string(),
|
|
456
|
+
revenue_share_to_receiver: true,
|
|
457
|
+
resolve_sender_to_name: false,
|
|
458
|
+
};
|
|
459
|
+
|
|
460
|
+
let instruction = Instruction::new_with_borsh(
|
|
461
|
+
program_id(),
|
|
462
|
+
&instruction_data,
|
|
463
|
+
vec![
|
|
464
|
+
AccountMeta::new(payer.pubkey(), true),
|
|
465
|
+
AccountMeta::new(recipient_claim_pda, false),
|
|
466
|
+
AccountMeta::new(mailer_pda, false), // Must be writable for record_shares to update owner_claimable
|
|
467
|
+
AccountMeta::new(sender_usdc, false),
|
|
468
|
+
AccountMeta::new(mailer_usdc, false),
|
|
469
|
+
AccountMeta::new_readonly(spl_token::id(), false),
|
|
470
|
+
AccountMeta::new_readonly(system_program::id(), false),
|
|
471
|
+
],
|
|
472
|
+
);
|
|
473
|
+
|
|
474
|
+
let mut transaction = Transaction::new_with_payer(&[instruction], Some(&payer.pubkey()));
|
|
475
|
+
transaction.sign(&[&payer], recent_blockhash);
|
|
476
|
+
banks_client.process_transaction(transaction).await.unwrap();
|
|
477
|
+
|
|
478
|
+
// Verify recipient claim was created with correct amount
|
|
479
|
+
let claim_account = banks_client
|
|
480
|
+
.get_account(recipient_claim_pda)
|
|
481
|
+
.await
|
|
482
|
+
.unwrap()
|
|
483
|
+
.unwrap();
|
|
484
|
+
let recipient_claim: RecipientClaim =
|
|
485
|
+
BorshDeserialize::deserialize(&mut &claim_account.data[8..]).unwrap();
|
|
486
|
+
|
|
487
|
+
assert_eq!(recipient_claim.recipient, payer.pubkey());
|
|
488
|
+
assert_eq!(recipient_claim.amount, 90_000); // 90% of send_fee (100,000)
|
|
489
|
+
|
|
490
|
+
// Verify mailer state was updated with owner share
|
|
491
|
+
let mailer_account = banks_client.get_account(mailer_pda).await.unwrap().unwrap();
|
|
492
|
+
let mailer_state: MailerState =
|
|
493
|
+
BorshDeserialize::deserialize(&mut &mailer_account.data[8..]).unwrap();
|
|
494
|
+
|
|
495
|
+
assert_eq!(mailer_state.owner_claimable, 10_000); // 10% of send_fee
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
#[tokio::test]
|
|
499
|
+
async fn test_send_through_webhook_standard() {
|
|
500
|
+
let program_test = ProgramTest::new(
|
|
501
|
+
"mailer",
|
|
502
|
+
program_id(),
|
|
503
|
+
processor!(mailer::process_instruction),
|
|
504
|
+
);
|
|
505
|
+
let (mut banks_client, payer, recent_blockhash) = program_test.start().await;
|
|
506
|
+
|
|
507
|
+
// Setup similar to standard test
|
|
508
|
+
let usdc_mint = create_usdc_mint(&mut banks_client, &payer, recent_blockhash).await;
|
|
509
|
+
let (mailer_pda, _) = get_mailer_pda();
|
|
510
|
+
|
|
511
|
+
// Initialize the program
|
|
512
|
+
let init_instruction = Instruction::new_with_borsh(
|
|
513
|
+
program_id(),
|
|
514
|
+
&MailerInstruction::Initialize { usdc_mint },
|
|
515
|
+
vec![
|
|
516
|
+
AccountMeta::new(payer.pubkey(), true),
|
|
517
|
+
AccountMeta::new(mailer_pda, false),
|
|
518
|
+
AccountMeta::new_readonly(system_program::id(), false),
|
|
519
|
+
],
|
|
520
|
+
);
|
|
521
|
+
|
|
522
|
+
let mut transaction = Transaction::new_with_payer(&[init_instruction], Some(&payer.pubkey()));
|
|
523
|
+
transaction.sign(&[&payer], recent_blockhash);
|
|
524
|
+
banks_client.process_transaction(transaction).await.unwrap();
|
|
525
|
+
|
|
526
|
+
// Create token accounts
|
|
527
|
+
let sender_usdc = create_token_account(
|
|
528
|
+
&mut banks_client,
|
|
529
|
+
&payer,
|
|
530
|
+
recent_blockhash,
|
|
531
|
+
&usdc_mint,
|
|
532
|
+
&payer.pubkey(),
|
|
533
|
+
)
|
|
534
|
+
.await;
|
|
535
|
+
let mailer_usdc = create_token_account(
|
|
536
|
+
&mut banks_client,
|
|
537
|
+
&payer,
|
|
538
|
+
recent_blockhash,
|
|
539
|
+
&usdc_mint,
|
|
540
|
+
&mailer_pda,
|
|
541
|
+
)
|
|
542
|
+
.await;
|
|
543
|
+
|
|
544
|
+
// Mint USDC to sender
|
|
545
|
+
mint_to(
|
|
546
|
+
&mut banks_client,
|
|
547
|
+
&payer,
|
|
548
|
+
recent_blockhash,
|
|
549
|
+
&usdc_mint,
|
|
550
|
+
&sender_usdc,
|
|
551
|
+
1_000_000,
|
|
552
|
+
)
|
|
553
|
+
.await;
|
|
554
|
+
|
|
555
|
+
// Get recipient claim PDA (needed even if not used for standard send)
|
|
556
|
+
let (recipient_claim_pda, _) = get_claim_pda(&payer.pubkey());
|
|
557
|
+
|
|
558
|
+
// Send webhook message (standard mode - no revenue sharing)
|
|
559
|
+
let instruction_data = MailerInstruction::SendThroughWebhook {
|
|
560
|
+
to: payer.pubkey(),
|
|
561
|
+
webhook_id: "webhook-456".to_string(),
|
|
562
|
+
revenue_share_to_receiver: false,
|
|
563
|
+
resolve_sender_to_name: false,
|
|
564
|
+
};
|
|
565
|
+
|
|
566
|
+
let instruction = Instruction::new_with_borsh(
|
|
567
|
+
program_id(),
|
|
568
|
+
&instruction_data,
|
|
569
|
+
vec![
|
|
570
|
+
AccountMeta::new(payer.pubkey(), true),
|
|
571
|
+
AccountMeta::new_readonly(recipient_claim_pda, false), // Not used for standard send but required
|
|
572
|
+
AccountMeta::new(mailer_pda, false), // Needs to be writable to update owner_claimable
|
|
573
|
+
AccountMeta::new(sender_usdc, false),
|
|
574
|
+
AccountMeta::new(mailer_usdc, false),
|
|
575
|
+
AccountMeta::new_readonly(spl_token::id(), false),
|
|
576
|
+
AccountMeta::new_readonly(system_program::id(), false),
|
|
577
|
+
],
|
|
578
|
+
);
|
|
579
|
+
|
|
580
|
+
let mut transaction = Transaction::new_with_payer(&[instruction], Some(&payer.pubkey()));
|
|
581
|
+
transaction.sign(&[&payer], recent_blockhash);
|
|
582
|
+
banks_client.process_transaction(transaction).await.unwrap();
|
|
583
|
+
|
|
584
|
+
// Verify only owner fee was charged (10% of send_fee = 10,000)
|
|
585
|
+
let mailer_account = banks_client.get_account(mailer_pda).await.unwrap().unwrap();
|
|
586
|
+
let mailer_state: MailerState =
|
|
587
|
+
BorshDeserialize::deserialize(&mut &mailer_account.data[8..]).unwrap();
|
|
588
|
+
assert_eq!(mailer_state.owner_claimable, 10_000); // Only 10% fee
|
|
589
|
+
}
|
|
590
|
+
|
|
392
591
|
#[tokio::test]
|
|
393
592
|
async fn test_claim_recipient_share() {
|
|
394
593
|
let program_test = ProgramTest::new(
|
|
@@ -980,10 +1179,14 @@ async fn test_claim_expired_shares_moves_funds_to_owner() {
|
|
|
980
1179
|
.process_transaction(transaction)
|
|
981
1180
|
.await
|
|
982
1181
|
.unwrap();
|
|
983
|
-
recent_blockhash = context.banks_client.get_latest_blockhash().await.unwrap();
|
|
984
1182
|
|
|
985
|
-
// Warp forward so the claim expires (claim period is 60 days)
|
|
986
|
-
|
|
1183
|
+
// Warp forward so the claim expires (claim period is 60 days = 5,184,000 seconds)
|
|
1184
|
+
// Manually set the clock to a future timestamp beyond the claim period
|
|
1185
|
+
use solana_sdk::clock::Clock;
|
|
1186
|
+
let mut clock = context.banks_client.get_sysvar::<Clock>().await.unwrap();
|
|
1187
|
+
clock.unix_timestamp += 60 * 24 * 60 * 60 + 1; // 60 days + 1 second
|
|
1188
|
+
context.set_sysvar(&clock);
|
|
1189
|
+
|
|
987
1190
|
recent_blockhash = context.banks_client.get_latest_blockhash().await.unwrap();
|
|
988
1191
|
|
|
989
1192
|
// Owner reclaims expired shares
|
|
@@ -54,6 +54,7 @@ export interface MailerInterface extends Interface {
|
|
|
54
54
|
| "sendFee"
|
|
55
55
|
| "sendPrepared"
|
|
56
56
|
| "sendPreparedToEmailAddress"
|
|
57
|
+
| "sendThroughWebhook"
|
|
57
58
|
| "sendToEmailAddress"
|
|
58
59
|
| "setCustomFeePercentage"
|
|
59
60
|
| "setDelegationFee"
|
|
@@ -80,6 +81,7 @@ export interface MailerInterface extends Interface {
|
|
|
80
81
|
| "PreparedMailSentToEmail"
|
|
81
82
|
| "RecipientClaimed"
|
|
82
83
|
| "SharesRecorded"
|
|
84
|
+
| "WebhookMailSent"
|
|
83
85
|
): EventFragment;
|
|
84
86
|
|
|
85
87
|
encodeFunctionData(
|
|
@@ -176,6 +178,10 @@ export interface MailerInterface extends Interface {
|
|
|
176
178
|
functionFragment: "sendPreparedToEmailAddress",
|
|
177
179
|
values: [string, string]
|
|
178
180
|
): string;
|
|
181
|
+
encodeFunctionData(
|
|
182
|
+
functionFragment: "sendThroughWebhook",
|
|
183
|
+
values: [AddressLike, string, boolean, boolean]
|
|
184
|
+
): string;
|
|
179
185
|
encodeFunctionData(
|
|
180
186
|
functionFragment: "sendToEmailAddress",
|
|
181
187
|
values: [string, string, string]
|
|
@@ -283,6 +289,10 @@ export interface MailerInterface extends Interface {
|
|
|
283
289
|
functionFragment: "sendPreparedToEmailAddress",
|
|
284
290
|
data: BytesLike
|
|
285
291
|
): Result;
|
|
292
|
+
decodeFunctionResult(
|
|
293
|
+
functionFragment: "sendThroughWebhook",
|
|
294
|
+
data: BytesLike
|
|
295
|
+
): Result;
|
|
286
296
|
decodeFunctionResult(
|
|
287
297
|
functionFragment: "sendToEmailAddress",
|
|
288
298
|
data: BytesLike
|
|
@@ -553,6 +563,34 @@ export namespace SharesRecordedEvent {
|
|
|
553
563
|
export type LogDescription = TypedLogDescription<Event>;
|
|
554
564
|
}
|
|
555
565
|
|
|
566
|
+
export namespace WebhookMailSentEvent {
|
|
567
|
+
export type InputTuple = [
|
|
568
|
+
from: AddressLike,
|
|
569
|
+
to: AddressLike,
|
|
570
|
+
webhookId: string,
|
|
571
|
+
revenueShareToReceiver: boolean,
|
|
572
|
+
resolveSenderToName: boolean
|
|
573
|
+
];
|
|
574
|
+
export type OutputTuple = [
|
|
575
|
+
from: string,
|
|
576
|
+
to: string,
|
|
577
|
+
webhookId: string,
|
|
578
|
+
revenueShareToReceiver: boolean,
|
|
579
|
+
resolveSenderToName: boolean
|
|
580
|
+
];
|
|
581
|
+
export interface OutputObject {
|
|
582
|
+
from: string;
|
|
583
|
+
to: string;
|
|
584
|
+
webhookId: string;
|
|
585
|
+
revenueShareToReceiver: boolean;
|
|
586
|
+
resolveSenderToName: boolean;
|
|
587
|
+
}
|
|
588
|
+
export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
|
|
589
|
+
export type Filter = TypedDeferredTopicFilter<Event>;
|
|
590
|
+
export type Log = TypedEventLog<Event>;
|
|
591
|
+
export type LogDescription = TypedLogDescription<Event>;
|
|
592
|
+
}
|
|
593
|
+
|
|
556
594
|
export interface Mailer extends BaseContract {
|
|
557
595
|
connect(runner?: ContractRunner | null): Mailer;
|
|
558
596
|
waitForDeployment(): Promise<this>;
|
|
@@ -713,6 +751,17 @@ export interface Mailer extends BaseContract {
|
|
|
713
751
|
"nonpayable"
|
|
714
752
|
>;
|
|
715
753
|
|
|
754
|
+
sendThroughWebhook: TypedContractMethod<
|
|
755
|
+
[
|
|
756
|
+
to: AddressLike,
|
|
757
|
+
webhookId: string,
|
|
758
|
+
revenueShareToReceiver: boolean,
|
|
759
|
+
resolveSenderToName: boolean
|
|
760
|
+
],
|
|
761
|
+
[void],
|
|
762
|
+
"nonpayable"
|
|
763
|
+
>;
|
|
764
|
+
|
|
716
765
|
sendToEmailAddress: TypedContractMethod<
|
|
717
766
|
[toEmail: string, subject: string, body: string],
|
|
718
767
|
[void],
|
|
@@ -866,6 +915,18 @@ export interface Mailer extends BaseContract {
|
|
|
866
915
|
[void],
|
|
867
916
|
"nonpayable"
|
|
868
917
|
>;
|
|
918
|
+
getFunction(
|
|
919
|
+
nameOrSignature: "sendThroughWebhook"
|
|
920
|
+
): TypedContractMethod<
|
|
921
|
+
[
|
|
922
|
+
to: AddressLike,
|
|
923
|
+
webhookId: string,
|
|
924
|
+
revenueShareToReceiver: boolean,
|
|
925
|
+
resolveSenderToName: boolean
|
|
926
|
+
],
|
|
927
|
+
[void],
|
|
928
|
+
"nonpayable"
|
|
929
|
+
>;
|
|
869
930
|
getFunction(
|
|
870
931
|
nameOrSignature: "sendToEmailAddress"
|
|
871
932
|
): TypedContractMethod<
|
|
@@ -1005,6 +1066,13 @@ export interface Mailer extends BaseContract {
|
|
|
1005
1066
|
SharesRecordedEvent.OutputTuple,
|
|
1006
1067
|
SharesRecordedEvent.OutputObject
|
|
1007
1068
|
>;
|
|
1069
|
+
getEvent(
|
|
1070
|
+
key: "WebhookMailSent"
|
|
1071
|
+
): TypedContractEvent<
|
|
1072
|
+
WebhookMailSentEvent.InputTuple,
|
|
1073
|
+
WebhookMailSentEvent.OutputTuple,
|
|
1074
|
+
WebhookMailSentEvent.OutputObject
|
|
1075
|
+
>;
|
|
1008
1076
|
|
|
1009
1077
|
filters: {
|
|
1010
1078
|
"ContractPaused()": TypedContractEvent<
|
|
@@ -1182,5 +1250,16 @@ export interface Mailer extends BaseContract {
|
|
|
1182
1250
|
SharesRecordedEvent.OutputTuple,
|
|
1183
1251
|
SharesRecordedEvent.OutputObject
|
|
1184
1252
|
>;
|
|
1253
|
+
|
|
1254
|
+
"WebhookMailSent(address,address,string,bool,bool)": TypedContractEvent<
|
|
1255
|
+
WebhookMailSentEvent.InputTuple,
|
|
1256
|
+
WebhookMailSentEvent.OutputTuple,
|
|
1257
|
+
WebhookMailSentEvent.OutputObject
|
|
1258
|
+
>;
|
|
1259
|
+
WebhookMailSent: TypedContractEvent<
|
|
1260
|
+
WebhookMailSentEvent.InputTuple,
|
|
1261
|
+
WebhookMailSentEvent.OutputTuple,
|
|
1262
|
+
WebhookMailSentEvent.OutputObject
|
|
1263
|
+
>;
|
|
1185
1264
|
};
|
|
1186
1265
|
}
|
|
@@ -413,6 +413,43 @@ const _abi = [
|
|
|
413
413
|
name: "SharesRecorded",
|
|
414
414
|
type: "event",
|
|
415
415
|
},
|
|
416
|
+
{
|
|
417
|
+
anonymous: false,
|
|
418
|
+
inputs: [
|
|
419
|
+
{
|
|
420
|
+
indexed: true,
|
|
421
|
+
internalType: "address",
|
|
422
|
+
name: "from",
|
|
423
|
+
type: "address",
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
indexed: true,
|
|
427
|
+
internalType: "address",
|
|
428
|
+
name: "to",
|
|
429
|
+
type: "address",
|
|
430
|
+
},
|
|
431
|
+
{
|
|
432
|
+
indexed: true,
|
|
433
|
+
internalType: "string",
|
|
434
|
+
name: "webhookId",
|
|
435
|
+
type: "string",
|
|
436
|
+
},
|
|
437
|
+
{
|
|
438
|
+
indexed: false,
|
|
439
|
+
internalType: "bool",
|
|
440
|
+
name: "revenueShareToReceiver",
|
|
441
|
+
type: "bool",
|
|
442
|
+
},
|
|
443
|
+
{
|
|
444
|
+
indexed: false,
|
|
445
|
+
internalType: "bool",
|
|
446
|
+
name: "resolveSenderToName",
|
|
447
|
+
type: "bool",
|
|
448
|
+
},
|
|
449
|
+
],
|
|
450
|
+
name: "WebhookMailSent",
|
|
451
|
+
type: "event",
|
|
452
|
+
},
|
|
416
453
|
{
|
|
417
454
|
inputs: [],
|
|
418
455
|
name: "CLAIM_PERIOD",
|
|
@@ -832,6 +869,34 @@ const _abi = [
|
|
|
832
869
|
stateMutability: "nonpayable",
|
|
833
870
|
type: "function",
|
|
834
871
|
},
|
|
872
|
+
{
|
|
873
|
+
inputs: [
|
|
874
|
+
{
|
|
875
|
+
internalType: "address",
|
|
876
|
+
name: "to",
|
|
877
|
+
type: "address",
|
|
878
|
+
},
|
|
879
|
+
{
|
|
880
|
+
internalType: "string",
|
|
881
|
+
name: "webhookId",
|
|
882
|
+
type: "string",
|
|
883
|
+
},
|
|
884
|
+
{
|
|
885
|
+
internalType: "bool",
|
|
886
|
+
name: "revenueShareToReceiver",
|
|
887
|
+
type: "bool",
|
|
888
|
+
},
|
|
889
|
+
{
|
|
890
|
+
internalType: "bool",
|
|
891
|
+
name: "resolveSenderToName",
|
|
892
|
+
type: "bool",
|
|
893
|
+
},
|
|
894
|
+
],
|
|
895
|
+
name: "sendThroughWebhook",
|
|
896
|
+
outputs: [],
|
|
897
|
+
stateMutability: "nonpayable",
|
|
898
|
+
type: "function",
|
|
899
|
+
},
|
|
835
900
|
{
|
|
836
901
|
inputs: [
|
|
837
902
|
{
|
|
@@ -922,7 +987,7 @@ const _abi = [
|
|
|
922
987
|
] as const;
|
|
923
988
|
|
|
924
989
|
const _bytecode =
|
|
925
|
-
"0x60c0604052620186a0600055629896806001553480156200001f57600080fd5b50604051620023ab380380620023ab8339810160408190526200004291620000b4565b6001600160a01b03821615806200006057506001600160a01b038116155b156200007f5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b039182166080521660a052620000ec565b80516001600160a01b0381168114620000af57600080fd5b919050565b60008060408385031215620000c857600080fd5b620000d38362000097565b9150620000e36020840162000097565b90509250929050565b60805160a0516121f8620001b360003960008181610385015281816104b0015281816105c70152818161067101528181610a1c01528181610abd01528181610ce9015281816110c20152818161116d0152818161145e015281816114f60152818161159f015261178f015260008181610224015281816106a3015281816107f0015281816108ef01528181610c0901528181610e1501528181610f140152818161133801528181611528015281816116ae0152818161197e0152611ae401526121f86000f3fe608060405234801561001057600080fd5b50600436106102055760003560e01c80637494b3231161011a578063b187bd26116100ad578063ced72f871161007c578063ced72f8714610466578063d15786871461046e578063ebf77de014610476578063f2292f0914610489578063fa26bb271461049257600080fd5b8063b187bd261461040f578063bbb2fe7c1461041a578063c5f0a58f1461042d578063cd564ccd1461043657600080fd5b80639ded51dd116100e95780639ded51dd146103af578063a3a336bf146103b7578063ac637c7a146103f3578063ae39279f1461040657600080fd5b80637494b323146103655780638456cb59146103785780638da5cb5b146103805780638db3c5fd146103a757600080fd5b80634a4e3bd51161019d578063585450141161016c57806358545014146103075780635c975abb1461031a57806369fe0e2d146103375780636a1c6e781461034a578063720e586f1461035257600080fd5b80634a4e3bd5146102d15780634b0b1b8b146102d957806355bfc81c146102e1578063569d7111146102f457600080fd5b8063358cbf0a116101d9578063358cbf0a1461028e5780633a8c3d6a146102965780633f4ba83a146102a95780633ff5aecd146102b157600080fd5b80620270a41461020a57806311eac8551461021f57806321241dfe14610263578063285298af1461027b575b600080fd5b61021d610218366004611d4d565b6104a5565b005b6102467f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61026d624f1a0081565b60405190815260200161025a565b61026d610289366004611d4d565b610592565b61021d6105bc565b61021d6102a4366004611dc9565b61076c565b61021d610a11565b61026d6102bf366004611d4d565b60066020526000908152604090205481565b61021d610ab2565b61021d610b53565b61021d6102ef366004611e44565b610cde565b61021d610302366004611e5d565b610d91565b61021d610315366004611d4d565b61102d565b6005546103279060ff1681565b604051901515815260200161025a565b61021d610345366004611e44565b6110b7565b61026d600a81565b61021d610360366004611d4d565b611162565b61021d610373366004611f04565b61129f565b61021d611453565b6102467f000000000000000000000000000000000000000000000000000000000000000081565b61026d605a81565b60015461026d565b6103de6103c5366004611d4d565b6002602052600090815260409020805460019091015482565b6040805192835260208301919091520161025a565b61021d610401366004611d4d565b611639565b61026d60005481565b60055460ff16610327565b61021d610428366004611f70565b611784565b61026d60015481565b610449610444366004611d4d565b6118a0565b60408051938452602084019290925215159082015260600161025a565b60005461026d565b60035461026d565b61021d610484366004611d4d565b6118ed565b61026d60035481565b61021d6104a0366004611f9a565b611a4b565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104ee57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610512576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0381166105395760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03811660008181526006602052604080822091909155517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d90610587906064815260200190565b60405180910390a250565b6001600160a01b0381166000908152600660205260408120546105b690606461204a565b92915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461060557604051635fc483c560e01b815260040160405180910390fd5b600454600103610628576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556003546000036106505760405163493c1ab760e01b815260040160405180910390fd5b6003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610710919061205d565b905080610730576040516312171d8360e31b815260040160405180910390fd5b6040518281527f81521279371b94892737e5e06851c322303c72e5493db1453314ea08f55cb9379060200160405180910390a150506000600455565b60045460010361078f576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156107b8576040516306d39fcd60e41b815260040160405180910390fd5b81156108a25760006107cc33600054611bea565b905060008111801561086e57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906108299033903090869060040161207a565b6020604051808303816000875af1158015610848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086c919061205d565b155b1561088c57604051634aa23e8f60e11b815260040160405180910390fd5b801561089c5761089c8682611c2b565b506109a5565b60006108b033600054611bea565b9050600060646108c1600a8461209e565b6108cb91906120b5565b905060008111801561096d57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906109289033903090869060040161207a565b6020604051808303816000875af1158015610947573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096b919061205d565b155b1561098b57604051634aa23e8f60e11b815260040160405180910390fd5b806003600082825461099d91906120d7565b909155505050505b83836040516109b59291906120ea565b6040805191829003822084151583528315156020840152916001600160a01b0388169133917f6c92a5c8a1b6c49076a075d1a499458f543fd2588ea971574373865f817ce83d910160405180910390a450506000600455505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a5a57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610a7d5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f0e5e3b3fb504c22cf5c42fa07d521225937514c654007e1f12646f89768d6f9490600090a1565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610afb57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610b1e5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f15de7ad89d29fd1c6d2e6b1e878453569b4080edf34e0105faaa3bd52f01853090600090a1565b600454600103610b76576040516345f5ce8b60e11b815260040160405180910390fd5b60016004553360009081526002602052604081208054909103610bac5760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610bbf91906120d7565b421115610bdf5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610c5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7e919061205d565b905080610c9e576040516312171d8360e31b815260040160405180910390fd5b60405182815233907f6673747791df7fe01578fcaebe4082d6d7680f052dbdd7d2cf345f88121be421906020015b60405180910390a25050600060045550565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d2757604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610d4b576040516306d39fcd60e41b815260040160405180910390fd5b600180549082905560408051828152602081018490527f83b05743f1284b2faed08b3f927951e6663e5277e09a40c939f0dfe5075af77891015b60405180910390a15050565b600454600103610db4576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610ddd576040516306d39fcd60e41b815260040160405180910390fd5b8115610ec7576000610df133600054611bea565b9050600081118015610e9357506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610e4e9033903090869060040161207a565b6020604051808303816000875af1158015610e6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e91919061205d565b155b15610eb157604051634aa23e8f60e11b815260040160405180910390fd5b8015610ec157610ec18882611c2b565b50610fca565b6000610ed533600054611bea565b905060006064610ee6600a8461209e565b610ef091906120b5565b9050600081118015610f9257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610f4d9033903090869060040161207a565b6020604051808303816000875af1158015610f6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f90919061205d565b155b15610fb057604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254610fc291906120d7565b909155505050505b866001600160a01b0316336001600160a01b03167f4576724219bca1c695ff280c4eba3f012c99252acd6c7d90c0407f63f8e6ad2688888888888860405161101796959493929190612123565b60405180910390a3505060006004555050505050565b600454600103611050576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611079576040516306d39fcd60e41b815260040160405180910390fd5b6040516000906001600160a01b038316907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed8908390a3506000600455565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461110057604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611124576040516306d39fcd60e41b815260040160405180910390fd5b600080549082905560408051828152602081018490527f528d9479e9f9889a87a3c30c7f7ba537e5e59c4c85a37733b16e57c62df613029101610d85565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111ab57604051635fc483c560e01b815260040160405180910390fd5b6004546001036111ce576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556001600160a01b0381166000908152600260205260408120805490910361120d5760405163493c1ab760e01b815260040160405180910390fd5b624f1a00816001015461122091906120d7565b421161123f576040516326f6703f60e11b815260040160405180910390fd5b80546000808355600183018190556003805483929061125f9084906120d7565b90915550506040518181526001600160a01b038416907fb4572b7f0782a4b7672a2341d00e4f1a0af99d81a3f8e959f25ff679eb31448190602001610ccc565b6004546001036112c2576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156112eb576040516306d39fcd60e41b815260040160405180910390fd5b60006112f933600054611bea565b90506000606461130a600a8461209e565b61131491906120b5565b90506000811180156113b657506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906113719033903090869060040161207a565b6020604051808303816000875af1158015611390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b4919061205d565b155b156113d457604051634aa23e8f60e11b815260040160405180910390fd5b80600360008282546113e691906120d7565b90915550506040516113fb90859085906120ea565b6040518091039020336001600160a01b03167ffadda1f12158473f0f6a95450c4108a36fc8aa62f3dee6a9de94c8c599470443888860405161143e929190612165565b60405180910390a35050600060045550505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461149c57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156114c0576040516306d39fcd60e41b815260040160405180910390fd5b6005805460ff191660011790556003541561160e576003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611571573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611595919061205d565b90508015611605577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516115f891815260200190565b60405180910390a261160b565b60038290555b50505b6040517fab35696f06e428ebc5ceba8cd17f8fed287baf43440206d1943af1ee53e6d26790600090a1565b60045460010361165c576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611685576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b03811615611746576001546040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916323b872dd916116e691339130919060040161207a565b6020604051808303816000875af1158015611705573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611729919061205d565b61174657604051634aa23e8f60e11b815260040160405180910390fd5b6040516001600160a01b0382169033907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed890600090a3506000600455565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117cd57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156117f1576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0382166118185760405163e6c4247b60e01b815260040160405180910390fd5b606481111561183a57604051631f3b85d360e01b815260040160405180910390fd5b61184581606461204a565b6001600160a01b038316600081815260066020526040908190209290925590517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d906118949084815260200190565b60405180910390a25050565b6001600160a01b03811660009081526002602052604081208054600182015490929182916118d290624f1a00906120d7565b8154909350158015906118e457508242115b93959294505050565b60055460ff166119105760405163dcdde9dd60e01b815260040160405180910390fd5b6001600160a01b0381166000908152600260205260408120805490910361194a5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b81526001600160a01b038581166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156119c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119eb919061205d565b90508015611a3b57836001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd83604051611a2e91815260200190565b60405180910390a2611a45565b8183554260018401555b50505050565b600454600103611a6e576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611a97576040516306d39fcd60e41b815260040160405180910390fd5b6000611aa533600054611bea565b905060006064611ab6600a8461209e565b611ac091906120b5565b9050600081118015611b6257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90611b1d9033903090869060040161207a565b6020604051808303816000875af1158015611b3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b60919061205d565b155b15611b8057604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254611b9291906120d7565b909155505060405133907fe137336c26280396075fb19ebe313eb4c539c2d845386ad035d8dee029bba31390611bd3908b908b908b908b908b908b90612179565b60405180910390a250506000600455505050505050565b6001600160a01b0382166000908152600660205260408120546064611c0f828261204a565b611c19908561209e565b611c2391906120b5565b949350505050565b611c38605a6000196120b5565b811115611c5857604051634eab2ea760e11b815260040160405180910390fd5b60006064611c67600a8461209e565b611c7191906120b5565b90506000611c7f828461204a565b6001600160a01b038516600090815260026020526040812080549293508392909190611cac9084906120d7565b90915550506001600160a01b03841660009081526002602052604081204260019091015560038054849290611ce29084906120d7565b909155505060408051828152602081018490526001600160a01b038616917fad83ccf4aebaf9db0cc5658b24e378a4a865a51b863e0289e3ee0e4947d97b1c910160405180910390a250505050565b80356001600160a01b0381168114611d4857600080fd5b919050565b600060208284031215611d5f57600080fd5b611d6882611d31565b9392505050565b60008083601f840112611d8157600080fd5b50813567ffffffffffffffff811115611d9957600080fd5b602083019150836020828501011115611db157600080fd5b9250929050565b8015158114611dc657600080fd5b50565b600080600080600060808688031215611de157600080fd5b611dea86611d31565b9450602086013567ffffffffffffffff811115611e0657600080fd5b611e1288828901611d6f565b9095509350506040860135611e2681611db8565b91506060860135611e3681611db8565b809150509295509295909350565b600060208284031215611e5657600080fd5b5035919050565b600080600080600080600060a0888a031215611e7857600080fd5b611e8188611d31565b9650602088013567ffffffffffffffff80821115611e9e57600080fd5b611eaa8b838c01611d6f565b909850965060408a0135915080821115611ec357600080fd5b50611ed08a828b01611d6f565b9095509350506060880135611ee481611db8565b91506080880135611ef481611db8565b8091505092959891949750929550565b60008060008060408587031215611f1a57600080fd5b843567ffffffffffffffff80821115611f3257600080fd5b611f3e88838901611d6f565b90965094506020870135915080821115611f5757600080fd5b50611f6487828801611d6f565b95989497509550505050565b60008060408385031215611f8357600080fd5b611f8c83611d31565b946020939093013593505050565b60008060008060008060608789031215611fb357600080fd5b863567ffffffffffffffff80821115611fcb57600080fd5b611fd78a838b01611d6f565b90985096506020890135915080821115611ff057600080fd5b611ffc8a838b01611d6f565b9096509450604089013591508082111561201557600080fd5b5061202289828a01611d6f565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105b6576105b6612034565b60006020828403121561206f57600080fd5b8151611d6881611db8565b6001600160a01b039384168152919092166020820152604081019190915260600190565b80820281158282048414176105b6576105b6612034565b6000826120d257634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156105b6576105b6612034565b8183823760009101908152919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60808152600061213760808301888a6120fa565b828103602084015261214a8187896120fa565b94151560408401525050901515606090910152949350505050565b602081526000611c236020830184866120fa565b60608152600061218d60608301888a6120fa565b82810360208401526121a08187896120fa565b905082810360408401526121b58185876120fa565b999850505050505050505056fea26469706673582212208a82d8e37c43fe6ce0c564334fcf3525212c54604dc8ca3a5e602c719f3ed32864736f6c63430008180033";
|
|
990
|
+
"0x60c0604052620186a0600055629896806001553480156200001f57600080fd5b506040516200266e3803806200266e8339810160408190526200004291620000b4565b6001600160a01b03821615806200006057506001600160a01b038116155b156200007f5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b039182166080521660a052620000ec565b80516001600160a01b0381168114620000af57600080fd5b919050565b60008060408385031215620000c857600080fd5b620000d38362000097565b9150620000e36020840162000097565b90509250929050565b60805160a0516124ad620001c1600039600081816103a3015281816104ce015281816105e50152818161068f01528181610a3b01528181610adc01528181610d08015281816110e10152818161142201528181611713015281816117ab015281816118540152611a4401526000818161022f015281816106c10152818161080e0152818161090d01528181610c2801528181610e3401528181610f330152818161120501528181611304015281816115ed015281816117dd0152818161196301528181611c330152611d9901526124ad6000f3fe608060405234801561001057600080fd5b50600436106102105760003560e01c8063720e586f11610125578063b187bd26116100ad578063ced72f871161007c578063ced72f8714610484578063d15786871461048c578063ebf77de014610494578063f2292f09146104a7578063fa26bb27146104b057600080fd5b8063b187bd261461042d578063bbb2fe7c14610438578063c5f0a58f1461044b578063cd564ccd1461045457600080fd5b80638db3c5fd116100f45780638db3c5fd146103c55780639ded51dd146103cd578063a3a336bf146103d5578063ac637c7a14610411578063ae39279f1461042457600080fd5b8063720e586f146103705780637494b323146103835780638456cb59146103965780638da5cb5b1461039e57600080fd5b80634a4e3bd5116101a8578063585450141161017757806358545014146103125780635c975abb1461032557806369fe0e2d146103425780636a1c6e78146103555780636abb3b4f1461035d57600080fd5b80634a4e3bd5146102dc5780634b0b1b8b146102e457806355bfc81c146102ec578063569d7111146102ff57600080fd5b8063358cbf0a116101e4578063358cbf0a146102995780633a8c3d6a146102a15780633f4ba83a146102b45780633ff5aecd146102bc57600080fd5b80620270a41461021557806311eac8551461022a57806321241dfe1461026e578063285298af14610286575b600080fd5b610228610223366004612002565b6104c3565b005b6102517f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b610278624f1a0081565b604051908152602001610265565b610278610294366004612002565b6105b0565b6102286105da565b6102286102af36600461207e565b61078a565b610228610a30565b6102786102ca366004612002565b60066020526000908152604090205481565b610228610ad1565b610228610b72565b6102286102fa3660046120f9565b610cfd565b61022861030d366004612112565b610db0565b610228610320366004612002565b61104c565b6005546103329060ff1681565b6040519015158152602001610265565b6102286103503660046120f9565b6110d6565b610278600a81565b61022861036b36600461207e565b611181565b61022861037e366004612002565b611417565b6102286103913660046121b9565b611554565b610228611708565b6102517f000000000000000000000000000000000000000000000000000000000000000081565b610278605a81565b600154610278565b6103fc6103e3366004612002565b6002602052600090815260409020805460019091015482565b60408051928352602083019190915201610265565b61022861041f366004612002565b6118ee565b61027860005481565b60055460ff16610332565b610228610446366004612225565b611a39565b61027860015481565b610467610462366004612002565b611b55565b604080519384526020840192909252151590820152606001610265565b600054610278565b600354610278565b6102286104a2366004612002565b611ba2565b61027860035481565b6102286104be36600461224f565b611d00565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461050c57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610530576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0381166105575760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03811660008181526006602052604080822091909155517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d906105a5906064815260200190565b60405180910390a250565b6001600160a01b0381166000908152600660205260408120546105d49060646122ff565b92915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461062357604051635fc483c560e01b815260040160405180910390fd5b600454600103610646576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560035460000361066e5760405163493c1ab760e01b815260040160405180910390fd5b6003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af115801561070a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061072e9190612312565b90508061074e576040516312171d8360e31b815260040160405180910390fd5b6040518281527f81521279371b94892737e5e06851c322303c72e5493db1453314ea08f55cb9379060200160405180910390a150506000600455565b6004546001036107ad576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156107d6576040516306d39fcd60e41b815260040160405180910390fd5b81156108c05760006107ea33600054611e9f565b905060008111801561088c57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906108479033903090869060040161232f565b6020604051808303816000875af1158015610866573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088a9190612312565b155b156108aa57604051634aa23e8f60e11b815260040160405180910390fd5b80156108ba576108ba8682611ee0565b506109c3565b60006108ce33600054611e9f565b9050600060646108df600a84612353565b6108e9919061236a565b905060008111801561098b57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906109469033903090869060040161232f565b6020604051808303816000875af1158015610965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109899190612312565b155b156109a957604051634aa23e8f60e11b815260040160405180910390fd5b80600360008282546109bb919061238c565b909155505050505b83836040516109d392919061239f565b6040805191829003822084151583528315156020840152916001600160a01b0388169133917f6c92a5c8a1b6c49076a075d1a499458f543fd2588ea971574373865f817ce83d91015b60405180910390a450506000600455505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a7957604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610a9c5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f0e5e3b3fb504c22cf5c42fa07d521225937514c654007e1f12646f89768d6f9490600090a1565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b1a57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610b3d5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f15de7ad89d29fd1c6d2e6b1e878453569b4080edf34e0105faaa3bd52f01853090600090a1565b600454600103610b95576040516345f5ce8b60e11b815260040160405180910390fd5b60016004553360009081526002602052604081208054909103610bcb5760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610bde919061238c565b421115610bfe5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610c79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9d9190612312565b905080610cbd576040516312171d8360e31b815260040160405180910390fd5b60405182815233907f6673747791df7fe01578fcaebe4082d6d7680f052dbdd7d2cf345f88121be421906020015b60405180910390a25050600060045550565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d4657604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610d6a576040516306d39fcd60e41b815260040160405180910390fd5b600180549082905560408051828152602081018490527f83b05743f1284b2faed08b3f927951e6663e5277e09a40c939f0dfe5075af77891015b60405180910390a15050565b600454600103610dd3576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610dfc576040516306d39fcd60e41b815260040160405180910390fd5b8115610ee6576000610e1033600054611e9f565b9050600081118015610eb257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610e6d9033903090869060040161232f565b6020604051808303816000875af1158015610e8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb09190612312565b155b15610ed057604051634aa23e8f60e11b815260040160405180910390fd5b8015610ee057610ee08882611ee0565b50610fe9565b6000610ef433600054611e9f565b905060006064610f05600a84612353565b610f0f919061236a565b9050600081118015610fb157506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610f6c9033903090869060040161232f565b6020604051808303816000875af1158015610f8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610faf9190612312565b155b15610fcf57604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254610fe1919061238c565b909155505050505b866001600160a01b0316336001600160a01b03167f4576724219bca1c695ff280c4eba3f012c99252acd6c7d90c0407f63f8e6ad26888888888888604051611036969594939291906123d8565b60405180910390a3505060006004555050505050565b60045460010361106f576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611098576040516306d39fcd60e41b815260040160405180910390fd5b6040516000906001600160a01b038316907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed8908390a3506000600455565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461111f57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611143576040516306d39fcd60e41b815260040160405180910390fd5b600080549082905560408051828152602081018490527f528d9479e9f9889a87a3c30c7f7ba537e5e59c4c85a37733b16e57c62df613029101610da4565b6004546001036111a4576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156111cd576040516306d39fcd60e41b815260040160405180910390fd5b81156112b75760006111e133600054611e9f565b905060008111801561128357506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd9061123e9033903090869060040161232f565b6020604051808303816000875af115801561125d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112819190612312565b155b156112a157604051634aa23e8f60e11b815260040160405180910390fd5b80156112b1576112b18682611ee0565b506113ba565b60006112c533600054611e9f565b9050600060646112d6600a84612353565b6112e0919061236a565b905060008111801561138257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd9061133d9033903090869060040161232f565b6020604051808303816000875af115801561135c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113809190612312565b155b156113a057604051634aa23e8f60e11b815260040160405180910390fd5b80600360008282546113b2919061238c565b909155505050505b83836040516113ca92919061239f565b6040805191829003822084151583528315156020840152916001600160a01b0388169133917f6a00347d56e88979c493ca2baa527a6cd1009b34431c4ef1021a5c0edd7856259101610a1c565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461146057604051635fc483c560e01b815260040160405180910390fd5b600454600103611483576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556001600160a01b038116600090815260026020526040812080549091036114c25760405163493c1ab760e01b815260040160405180910390fd5b624f1a0081600101546114d5919061238c565b42116114f4576040516326f6703f60e11b815260040160405180910390fd5b80546000808355600183018190556003805483929061151490849061238c565b90915550506040518181526001600160a01b038416907fb4572b7f0782a4b7672a2341d00e4f1a0af99d81a3f8e959f25ff679eb31448190602001610ceb565b600454600103611577576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156115a0576040516306d39fcd60e41b815260040160405180910390fd5b60006115ae33600054611e9f565b9050600060646115bf600a84612353565b6115c9919061236a565b905060008111801561166b57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906116269033903090869060040161232f565b6020604051808303816000875af1158015611645573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116699190612312565b155b1561168957604051634aa23e8f60e11b815260040160405180910390fd5b806003600082825461169b919061238c565b90915550506040516116b0908590859061239f565b6040518091039020336001600160a01b03167ffadda1f12158473f0f6a95450c4108a36fc8aa62f3dee6a9de94c8c59947044388886040516116f392919061241a565b60405180910390a35050600060045550505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461175157604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611775576040516306d39fcd60e41b815260040160405180910390fd5b6005805460ff19166001179055600354156118c3576003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611826573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061184a9190612312565b905080156118ba577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516118ad91815260200190565b60405180910390a26118c0565b60038290555b50505b6040517fab35696f06e428ebc5ceba8cd17f8fed287baf43440206d1943af1ee53e6d26790600090a1565b600454600103611911576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff161561193a576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b038116156119fb576001546040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916323b872dd9161199b91339130919060040161232f565b6020604051808303816000875af11580156119ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119de9190612312565b6119fb57604051634aa23e8f60e11b815260040160405180910390fd5b6040516001600160a01b0382169033907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed890600090a3506000600455565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a8257604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611aa6576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b038216611acd5760405163e6c4247b60e01b815260040160405180910390fd5b6064811115611aef57604051631f3b85d360e01b815260040160405180910390fd5b611afa8160646122ff565b6001600160a01b038316600081815260066020526040908190209290925590517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d90611b499084815260200190565b60405180910390a25050565b6001600160a01b0381166000908152600260205260408120805460018201549092918291611b8790624f1a009061238c565b815490935015801590611b9957508242115b93959294505050565b60055460ff16611bc55760405163dcdde9dd60e01b815260040160405180910390fd5b6001600160a01b03811660009081526002602052604081208054909103611bff5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b81526001600160a01b038581166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611c7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca09190612312565b90508015611cf057836001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd83604051611ce391815260200190565b60405180910390a2611cfa565b8183554260018401555b50505050565b600454600103611d23576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611d4c576040516306d39fcd60e41b815260040160405180910390fd5b6000611d5a33600054611e9f565b905060006064611d6b600a84612353565b611d75919061236a565b9050600081118015611e1757506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90611dd29033903090869060040161232f565b6020604051808303816000875af1158015611df1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e159190612312565b155b15611e3557604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254611e47919061238c565b909155505060405133907fe137336c26280396075fb19ebe313eb4c539c2d845386ad035d8dee029bba31390611e88908b908b908b908b908b908b9061242e565b60405180910390a250506000600455505050505050565b6001600160a01b0382166000908152600660205260408120546064611ec482826122ff565b611ece9085612353565b611ed8919061236a565b949350505050565b611eed605a60001961236a565b811115611f0d57604051634eab2ea760e11b815260040160405180910390fd5b60006064611f1c600a84612353565b611f26919061236a565b90506000611f3482846122ff565b6001600160a01b038516600090815260026020526040812080549293508392909190611f6190849061238c565b90915550506001600160a01b03841660009081526002602052604081204260019091015560038054849290611f9790849061238c565b909155505060408051828152602081018490526001600160a01b038616917fad83ccf4aebaf9db0cc5658b24e378a4a865a51b863e0289e3ee0e4947d97b1c910160405180910390a250505050565b80356001600160a01b0381168114611ffd57600080fd5b919050565b60006020828403121561201457600080fd5b61201d82611fe6565b9392505050565b60008083601f84011261203657600080fd5b50813567ffffffffffffffff81111561204e57600080fd5b60208301915083602082850101111561206657600080fd5b9250929050565b801515811461207b57600080fd5b50565b60008060008060006080868803121561209657600080fd5b61209f86611fe6565b9450602086013567ffffffffffffffff8111156120bb57600080fd5b6120c788828901612024565b90955093505060408601356120db8161206d565b915060608601356120eb8161206d565b809150509295509295909350565b60006020828403121561210b57600080fd5b5035919050565b600080600080600080600060a0888a03121561212d57600080fd5b61213688611fe6565b9650602088013567ffffffffffffffff8082111561215357600080fd5b61215f8b838c01612024565b909850965060408a013591508082111561217857600080fd5b506121858a828b01612024565b90955093505060608801356121998161206d565b915060808801356121a98161206d565b8091505092959891949750929550565b600080600080604085870312156121cf57600080fd5b843567ffffffffffffffff808211156121e757600080fd5b6121f388838901612024565b9096509450602087013591508082111561220c57600080fd5b5061221987828801612024565b95989497509550505050565b6000806040838503121561223857600080fd5b61224183611fe6565b946020939093013593505050565b6000806000806000806060878903121561226857600080fd5b863567ffffffffffffffff8082111561228057600080fd5b61228c8a838b01612024565b909850965060208901359150808211156122a557600080fd5b6122b18a838b01612024565b909650945060408901359150808211156122ca57600080fd5b506122d789828a01612024565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105d4576105d46122e9565b60006020828403121561232457600080fd5b815161201d8161206d565b6001600160a01b039384168152919092166020820152604081019190915260600190565b80820281158282048414176105d4576105d46122e9565b60008261238757634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156105d4576105d46122e9565b8183823760009101908152919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6080815260006123ec60808301888a6123af565b82810360208401526123ff8187896123af565b94151560408401525050901515606090910152949350505050565b602081526000611ed86020830184866123af565b60608152600061244260608301888a6123af565b82810360208401526124558187896123af565b9050828103604084015261246a8185876123af565b999850505050505050505056fea2646970667358221220e1c37eda8c3c1cf54d351525c6b53f37f7736c919be2d1f2bf9a09fbbb29c2cb64736f6c63430008180033";
|
|
926
991
|
|
|
927
992
|
type MailerConstructorParams =
|
|
928
993
|
| [signer?: Signer]
|