@sudobility/contracts 1.9.0 → 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/artifacts/contracts/Mailer.sol/Mailer.d.ts +963 -0
  2. package/artifacts/contracts/Mailer.sol/Mailer.dbg.json +1 -1
  3. package/artifacts/contracts/Mailer.sol/Mailer.json +95 -2
  4. package/artifacts/contracts/Mailer.sol/artifacts.d.ts +21 -0
  5. package/artifacts/contracts/MockUSDC.sol/MockUSDC.d.ts +284 -0
  6. package/artifacts/contracts/MockUSDC.sol/MockUSDC.dbg.json +1 -1
  7. package/artifacts/contracts/MockUSDC.sol/artifacts.d.ts +21 -0
  8. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.d.ts +157 -0
  9. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.dbg.json +1 -1
  10. package/artifacts/contracts/interfaces/IERC20.sol/artifacts.d.ts +21 -0
  11. package/dist/evm/typechain-types/Mailer.d.ts +51 -2
  12. package/dist/evm/typechain-types/Mailer.d.ts.map +1 -1
  13. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts +72 -1
  14. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
  15. package/dist/evm/typechain-types/factories/Mailer__factory.js +94 -1
  16. package/dist/evm/typechain-types/factories/Mailer__factory.js.map +1 -1
  17. package/dist/solana/solana/mailer-client.d.ts +7 -0
  18. package/dist/solana/solana/mailer-client.d.ts.map +1 -1
  19. package/dist/solana/solana/mailer-client.js +30 -1
  20. package/dist/solana/solana/mailer-client.js.map +1 -1
  21. package/dist/unified/src/react/hooks/useMailerMutations.d.ts +1 -1
  22. package/dist/unified/src/react/hooks/useMailerMutations.js +1 -1
  23. package/dist/unified/src/solana/mailer-client.d.ts +7 -0
  24. package/dist/unified/src/solana/mailer-client.d.ts.map +1 -1
  25. package/dist/unified/src/solana/mailer-client.js +30 -1
  26. package/dist/unified/src/solana/mailer-client.js.map +1 -1
  27. package/dist/unified/src/unified/onchain-mailer-client.d.ts +2 -1
  28. package/dist/unified/src/unified/onchain-mailer-client.d.ts.map +1 -1
  29. package/dist/unified/src/unified/onchain-mailer-client.js +23 -2
  30. package/dist/unified/src/unified/onchain-mailer-client.js.map +1 -1
  31. package/dist/unified/typechain-types/Mailer.d.ts +51 -2
  32. package/dist/unified/typechain-types/Mailer.d.ts.map +1 -1
  33. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts +72 -1
  34. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
  35. package/dist/unified/typechain-types/factories/Mailer__factory.js +94 -1
  36. package/dist/unified/typechain-types/factories/Mailer__factory.js.map +1 -1
  37. package/dist/unified-esm/src/react/hooks/useMailerMutations.d.ts +1 -1
  38. package/dist/unified-esm/src/react/hooks/useMailerMutations.js +1 -1
  39. package/dist/unified-esm/src/solana/mailer-client.d.ts +7 -0
  40. package/dist/unified-esm/src/solana/mailer-client.d.ts.map +1 -1
  41. package/dist/unified-esm/src/solana/mailer-client.js +30 -1
  42. package/dist/unified-esm/src/solana/mailer-client.js.map +1 -1
  43. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts +2 -1
  44. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts.map +1 -1
  45. package/dist/unified-esm/src/unified/onchain-mailer-client.js +23 -2
  46. package/dist/unified-esm/src/unified/onchain-mailer-client.js.map +1 -1
  47. package/dist/unified-esm/typechain-types/Mailer.d.ts +51 -2
  48. package/dist/unified-esm/typechain-types/Mailer.d.ts.map +1 -1
  49. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts +72 -1
  50. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts.map +1 -1
  51. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js +94 -1
  52. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js.map +1 -1
  53. package/package.json +7 -3
  54. package/programs/mailer/src/lib.rs +714 -151
  55. package/programs/mailer/tests/integration_tests.rs +383 -65
  56. package/typechain-types/Mailer.ts +104 -0
  57. package/typechain-types/factories/Mailer__factory.ts +94 -1
@@ -0,0 +1,963 @@
1
+ // This file was autogenerated by hardhat-viem, do not edit it.
2
+ // prettier-ignore
3
+ // tslint:disable
4
+ // eslint-disable
5
+
6
+ import type { Address } from "viem";
7
+ import type { AbiParameterToPrimitiveType, GetContractReturnType } from "@nomicfoundation/hardhat-viem/types";
8
+ import "@nomicfoundation/hardhat-viem/types";
9
+
10
+ export interface Mailer$Type {
11
+ "_format": "hh-sol-artifact-1",
12
+ "contractName": "Mailer",
13
+ "sourceName": "contracts/Mailer.sol",
14
+ "abi": [
15
+ {
16
+ "inputs": [
17
+ {
18
+ "internalType": "address",
19
+ "name": "_usdcToken",
20
+ "type": "address"
21
+ },
22
+ {
23
+ "internalType": "address",
24
+ "name": "_owner",
25
+ "type": "address"
26
+ }
27
+ ],
28
+ "stateMutability": "nonpayable",
29
+ "type": "constructor"
30
+ },
31
+ {
32
+ "inputs": [],
33
+ "name": "ClaimPeriodNotExpired",
34
+ "type": "error"
35
+ },
36
+ {
37
+ "inputs": [],
38
+ "name": "ContractIsPaused",
39
+ "type": "error"
40
+ },
41
+ {
42
+ "inputs": [],
43
+ "name": "ContractNotPaused",
44
+ "type": "error"
45
+ },
46
+ {
47
+ "inputs": [],
48
+ "name": "FeePaymentRequired",
49
+ "type": "error"
50
+ },
51
+ {
52
+ "inputs": [],
53
+ "name": "InvalidAddress",
54
+ "type": "error"
55
+ },
56
+ {
57
+ "inputs": [],
58
+ "name": "InvalidPercentage",
59
+ "type": "error"
60
+ },
61
+ {
62
+ "inputs": [],
63
+ "name": "MathOverflow",
64
+ "type": "error"
65
+ },
66
+ {
67
+ "inputs": [],
68
+ "name": "NoClaimableAmount",
69
+ "type": "error"
70
+ },
71
+ {
72
+ "inputs": [],
73
+ "name": "OnlyOwner",
74
+ "type": "error"
75
+ },
76
+ {
77
+ "inputs": [],
78
+ "name": "ReentrancyGuard",
79
+ "type": "error"
80
+ },
81
+ {
82
+ "inputs": [],
83
+ "name": "TransferFailed",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "anonymous": false,
88
+ "inputs": [],
89
+ "name": "ContractPaused",
90
+ "type": "event"
91
+ },
92
+ {
93
+ "anonymous": false,
94
+ "inputs": [],
95
+ "name": "ContractUnpaused",
96
+ "type": "event"
97
+ },
98
+ {
99
+ "anonymous": false,
100
+ "inputs": [
101
+ {
102
+ "indexed": true,
103
+ "internalType": "address",
104
+ "name": "account",
105
+ "type": "address"
106
+ },
107
+ {
108
+ "indexed": false,
109
+ "internalType": "uint256",
110
+ "name": "percentage",
111
+ "type": "uint256"
112
+ }
113
+ ],
114
+ "name": "CustomFeePercentageSet",
115
+ "type": "event"
116
+ },
117
+ {
118
+ "anonymous": false,
119
+ "inputs": [
120
+ {
121
+ "indexed": false,
122
+ "internalType": "uint256",
123
+ "name": "oldFee",
124
+ "type": "uint256"
125
+ },
126
+ {
127
+ "indexed": false,
128
+ "internalType": "uint256",
129
+ "name": "newFee",
130
+ "type": "uint256"
131
+ }
132
+ ],
133
+ "name": "DelegationFeeUpdated",
134
+ "type": "event"
135
+ },
136
+ {
137
+ "anonymous": false,
138
+ "inputs": [
139
+ {
140
+ "indexed": true,
141
+ "internalType": "address",
142
+ "name": "delegator",
143
+ "type": "address"
144
+ },
145
+ {
146
+ "indexed": true,
147
+ "internalType": "address",
148
+ "name": "delegate",
149
+ "type": "address"
150
+ }
151
+ ],
152
+ "name": "DelegationSet",
153
+ "type": "event"
154
+ },
155
+ {
156
+ "anonymous": false,
157
+ "inputs": [],
158
+ "name": "EmergencyUnpaused",
159
+ "type": "event"
160
+ },
161
+ {
162
+ "anonymous": false,
163
+ "inputs": [
164
+ {
165
+ "indexed": true,
166
+ "internalType": "address",
167
+ "name": "recipient",
168
+ "type": "address"
169
+ },
170
+ {
171
+ "indexed": false,
172
+ "internalType": "uint256",
173
+ "name": "amount",
174
+ "type": "uint256"
175
+ }
176
+ ],
177
+ "name": "ExpiredSharesClaimed",
178
+ "type": "event"
179
+ },
180
+ {
181
+ "anonymous": false,
182
+ "inputs": [
183
+ {
184
+ "indexed": false,
185
+ "internalType": "uint256",
186
+ "name": "oldFee",
187
+ "type": "uint256"
188
+ },
189
+ {
190
+ "indexed": false,
191
+ "internalType": "uint256",
192
+ "name": "newFee",
193
+ "type": "uint256"
194
+ }
195
+ ],
196
+ "name": "FeeUpdated",
197
+ "type": "event"
198
+ },
199
+ {
200
+ "anonymous": false,
201
+ "inputs": [
202
+ {
203
+ "indexed": true,
204
+ "internalType": "address",
205
+ "name": "recipient",
206
+ "type": "address"
207
+ },
208
+ {
209
+ "indexed": false,
210
+ "internalType": "uint256",
211
+ "name": "amount",
212
+ "type": "uint256"
213
+ }
214
+ ],
215
+ "name": "FundsDistributed",
216
+ "type": "event"
217
+ },
218
+ {
219
+ "anonymous": false,
220
+ "inputs": [
221
+ {
222
+ "indexed": true,
223
+ "internalType": "address",
224
+ "name": "from",
225
+ "type": "address"
226
+ },
227
+ {
228
+ "indexed": true,
229
+ "internalType": "address",
230
+ "name": "to",
231
+ "type": "address"
232
+ },
233
+ {
234
+ "indexed": false,
235
+ "internalType": "string",
236
+ "name": "subject",
237
+ "type": "string"
238
+ },
239
+ {
240
+ "indexed": false,
241
+ "internalType": "string",
242
+ "name": "body",
243
+ "type": "string"
244
+ },
245
+ {
246
+ "indexed": false,
247
+ "internalType": "bool",
248
+ "name": "revenueShareToReceiver",
249
+ "type": "bool"
250
+ },
251
+ {
252
+ "indexed": false,
253
+ "internalType": "bool",
254
+ "name": "resolveSenderToName",
255
+ "type": "bool"
256
+ }
257
+ ],
258
+ "name": "MailSent",
259
+ "type": "event"
260
+ },
261
+ {
262
+ "anonymous": false,
263
+ "inputs": [
264
+ {
265
+ "indexed": true,
266
+ "internalType": "address",
267
+ "name": "from",
268
+ "type": "address"
269
+ },
270
+ {
271
+ "indexed": false,
272
+ "internalType": "string",
273
+ "name": "toEmail",
274
+ "type": "string"
275
+ },
276
+ {
277
+ "indexed": false,
278
+ "internalType": "string",
279
+ "name": "subject",
280
+ "type": "string"
281
+ },
282
+ {
283
+ "indexed": false,
284
+ "internalType": "string",
285
+ "name": "body",
286
+ "type": "string"
287
+ }
288
+ ],
289
+ "name": "MailSentToEmail",
290
+ "type": "event"
291
+ },
292
+ {
293
+ "anonymous": false,
294
+ "inputs": [
295
+ {
296
+ "indexed": false,
297
+ "internalType": "uint256",
298
+ "name": "amount",
299
+ "type": "uint256"
300
+ }
301
+ ],
302
+ "name": "OwnerClaimed",
303
+ "type": "event"
304
+ },
305
+ {
306
+ "anonymous": false,
307
+ "inputs": [
308
+ {
309
+ "indexed": true,
310
+ "internalType": "address",
311
+ "name": "from",
312
+ "type": "address"
313
+ },
314
+ {
315
+ "indexed": true,
316
+ "internalType": "address",
317
+ "name": "to",
318
+ "type": "address"
319
+ },
320
+ {
321
+ "indexed": true,
322
+ "internalType": "string",
323
+ "name": "mailId",
324
+ "type": "string"
325
+ },
326
+ {
327
+ "indexed": false,
328
+ "internalType": "bool",
329
+ "name": "revenueShareToReceiver",
330
+ "type": "bool"
331
+ },
332
+ {
333
+ "indexed": false,
334
+ "internalType": "bool",
335
+ "name": "resolveSenderToName",
336
+ "type": "bool"
337
+ }
338
+ ],
339
+ "name": "PreparedMailSent",
340
+ "type": "event"
341
+ },
342
+ {
343
+ "anonymous": false,
344
+ "inputs": [
345
+ {
346
+ "indexed": true,
347
+ "internalType": "address",
348
+ "name": "from",
349
+ "type": "address"
350
+ },
351
+ {
352
+ "indexed": false,
353
+ "internalType": "string",
354
+ "name": "toEmail",
355
+ "type": "string"
356
+ },
357
+ {
358
+ "indexed": true,
359
+ "internalType": "string",
360
+ "name": "mailId",
361
+ "type": "string"
362
+ }
363
+ ],
364
+ "name": "PreparedMailSentToEmail",
365
+ "type": "event"
366
+ },
367
+ {
368
+ "anonymous": false,
369
+ "inputs": [
370
+ {
371
+ "indexed": true,
372
+ "internalType": "address",
373
+ "name": "recipient",
374
+ "type": "address"
375
+ },
376
+ {
377
+ "indexed": false,
378
+ "internalType": "uint256",
379
+ "name": "amount",
380
+ "type": "uint256"
381
+ }
382
+ ],
383
+ "name": "RecipientClaimed",
384
+ "type": "event"
385
+ },
386
+ {
387
+ "anonymous": false,
388
+ "inputs": [
389
+ {
390
+ "indexed": true,
391
+ "internalType": "address",
392
+ "name": "recipient",
393
+ "type": "address"
394
+ },
395
+ {
396
+ "indexed": false,
397
+ "internalType": "uint256",
398
+ "name": "recipientAmount",
399
+ "type": "uint256"
400
+ },
401
+ {
402
+ "indexed": false,
403
+ "internalType": "uint256",
404
+ "name": "ownerAmount",
405
+ "type": "uint256"
406
+ }
407
+ ],
408
+ "name": "SharesRecorded",
409
+ "type": "event"
410
+ },
411
+ {
412
+ "inputs": [],
413
+ "name": "CLAIM_PERIOD",
414
+ "outputs": [
415
+ {
416
+ "internalType": "uint256",
417
+ "name": "",
418
+ "type": "uint256"
419
+ }
420
+ ],
421
+ "stateMutability": "view",
422
+ "type": "function"
423
+ },
424
+ {
425
+ "inputs": [],
426
+ "name": "OWNER_SHARE",
427
+ "outputs": [
428
+ {
429
+ "internalType": "uint256",
430
+ "name": "",
431
+ "type": "uint256"
432
+ }
433
+ ],
434
+ "stateMutability": "view",
435
+ "type": "function"
436
+ },
437
+ {
438
+ "inputs": [],
439
+ "name": "RECIPIENT_SHARE",
440
+ "outputs": [
441
+ {
442
+ "internalType": "uint256",
443
+ "name": "",
444
+ "type": "uint256"
445
+ }
446
+ ],
447
+ "stateMutability": "view",
448
+ "type": "function"
449
+ },
450
+ {
451
+ "inputs": [
452
+ {
453
+ "internalType": "address",
454
+ "name": "recipient",
455
+ "type": "address"
456
+ }
457
+ ],
458
+ "name": "claimExpiredShares",
459
+ "outputs": [],
460
+ "stateMutability": "nonpayable",
461
+ "type": "function"
462
+ },
463
+ {
464
+ "inputs": [],
465
+ "name": "claimOwnerShare",
466
+ "outputs": [],
467
+ "stateMutability": "nonpayable",
468
+ "type": "function"
469
+ },
470
+ {
471
+ "inputs": [],
472
+ "name": "claimRecipientShare",
473
+ "outputs": [],
474
+ "stateMutability": "nonpayable",
475
+ "type": "function"
476
+ },
477
+ {
478
+ "inputs": [
479
+ {
480
+ "internalType": "address",
481
+ "name": "account",
482
+ "type": "address"
483
+ }
484
+ ],
485
+ "name": "clearCustomFeePercentage",
486
+ "outputs": [],
487
+ "stateMutability": "nonpayable",
488
+ "type": "function"
489
+ },
490
+ {
491
+ "inputs": [
492
+ {
493
+ "internalType": "address",
494
+ "name": "",
495
+ "type": "address"
496
+ }
497
+ ],
498
+ "name": "customFeeDiscount",
499
+ "outputs": [
500
+ {
501
+ "internalType": "uint256",
502
+ "name": "",
503
+ "type": "uint256"
504
+ }
505
+ ],
506
+ "stateMutability": "view",
507
+ "type": "function"
508
+ },
509
+ {
510
+ "inputs": [
511
+ {
512
+ "internalType": "address",
513
+ "name": "delegate",
514
+ "type": "address"
515
+ }
516
+ ],
517
+ "name": "delegateTo",
518
+ "outputs": [],
519
+ "stateMutability": "nonpayable",
520
+ "type": "function"
521
+ },
522
+ {
523
+ "inputs": [],
524
+ "name": "delegationFee",
525
+ "outputs": [
526
+ {
527
+ "internalType": "uint256",
528
+ "name": "",
529
+ "type": "uint256"
530
+ }
531
+ ],
532
+ "stateMutability": "view",
533
+ "type": "function"
534
+ },
535
+ {
536
+ "inputs": [
537
+ {
538
+ "internalType": "address",
539
+ "name": "recipient",
540
+ "type": "address"
541
+ }
542
+ ],
543
+ "name": "distributeClaimableFunds",
544
+ "outputs": [],
545
+ "stateMutability": "nonpayable",
546
+ "type": "function"
547
+ },
548
+ {
549
+ "inputs": [],
550
+ "name": "emergencyUnpause",
551
+ "outputs": [],
552
+ "stateMutability": "nonpayable",
553
+ "type": "function"
554
+ },
555
+ {
556
+ "inputs": [
557
+ {
558
+ "internalType": "address",
559
+ "name": "account",
560
+ "type": "address"
561
+ }
562
+ ],
563
+ "name": "getCustomFeePercentage",
564
+ "outputs": [
565
+ {
566
+ "internalType": "uint256",
567
+ "name": "",
568
+ "type": "uint256"
569
+ }
570
+ ],
571
+ "stateMutability": "view",
572
+ "type": "function"
573
+ },
574
+ {
575
+ "inputs": [],
576
+ "name": "getDelegationFee",
577
+ "outputs": [
578
+ {
579
+ "internalType": "uint256",
580
+ "name": "",
581
+ "type": "uint256"
582
+ }
583
+ ],
584
+ "stateMutability": "view",
585
+ "type": "function"
586
+ },
587
+ {
588
+ "inputs": [],
589
+ "name": "getFee",
590
+ "outputs": [
591
+ {
592
+ "internalType": "uint256",
593
+ "name": "",
594
+ "type": "uint256"
595
+ }
596
+ ],
597
+ "stateMutability": "view",
598
+ "type": "function"
599
+ },
600
+ {
601
+ "inputs": [],
602
+ "name": "getOwnerClaimable",
603
+ "outputs": [
604
+ {
605
+ "internalType": "uint256",
606
+ "name": "",
607
+ "type": "uint256"
608
+ }
609
+ ],
610
+ "stateMutability": "view",
611
+ "type": "function"
612
+ },
613
+ {
614
+ "inputs": [
615
+ {
616
+ "internalType": "address",
617
+ "name": "recipient",
618
+ "type": "address"
619
+ }
620
+ ],
621
+ "name": "getRecipientClaimable",
622
+ "outputs": [
623
+ {
624
+ "internalType": "uint256",
625
+ "name": "amount",
626
+ "type": "uint256"
627
+ },
628
+ {
629
+ "internalType": "uint256",
630
+ "name": "expiresAt",
631
+ "type": "uint256"
632
+ },
633
+ {
634
+ "internalType": "bool",
635
+ "name": "isExpired",
636
+ "type": "bool"
637
+ }
638
+ ],
639
+ "stateMutability": "view",
640
+ "type": "function"
641
+ },
642
+ {
643
+ "inputs": [],
644
+ "name": "isPaused",
645
+ "outputs": [
646
+ {
647
+ "internalType": "bool",
648
+ "name": "",
649
+ "type": "bool"
650
+ }
651
+ ],
652
+ "stateMutability": "view",
653
+ "type": "function"
654
+ },
655
+ {
656
+ "inputs": [],
657
+ "name": "owner",
658
+ "outputs": [
659
+ {
660
+ "internalType": "address",
661
+ "name": "",
662
+ "type": "address"
663
+ }
664
+ ],
665
+ "stateMutability": "view",
666
+ "type": "function"
667
+ },
668
+ {
669
+ "inputs": [],
670
+ "name": "ownerClaimable",
671
+ "outputs": [
672
+ {
673
+ "internalType": "uint256",
674
+ "name": "",
675
+ "type": "uint256"
676
+ }
677
+ ],
678
+ "stateMutability": "view",
679
+ "type": "function"
680
+ },
681
+ {
682
+ "inputs": [],
683
+ "name": "pause",
684
+ "outputs": [],
685
+ "stateMutability": "nonpayable",
686
+ "type": "function"
687
+ },
688
+ {
689
+ "inputs": [],
690
+ "name": "paused",
691
+ "outputs": [
692
+ {
693
+ "internalType": "bool",
694
+ "name": "",
695
+ "type": "bool"
696
+ }
697
+ ],
698
+ "stateMutability": "view",
699
+ "type": "function"
700
+ },
701
+ {
702
+ "inputs": [
703
+ {
704
+ "internalType": "address",
705
+ "name": "",
706
+ "type": "address"
707
+ }
708
+ ],
709
+ "name": "recipientClaims",
710
+ "outputs": [
711
+ {
712
+ "internalType": "uint256",
713
+ "name": "amount",
714
+ "type": "uint256"
715
+ },
716
+ {
717
+ "internalType": "uint256",
718
+ "name": "timestamp",
719
+ "type": "uint256"
720
+ }
721
+ ],
722
+ "stateMutability": "view",
723
+ "type": "function"
724
+ },
725
+ {
726
+ "inputs": [
727
+ {
728
+ "internalType": "address",
729
+ "name": "delegatingAddress",
730
+ "type": "address"
731
+ }
732
+ ],
733
+ "name": "rejectDelegation",
734
+ "outputs": [],
735
+ "stateMutability": "nonpayable",
736
+ "type": "function"
737
+ },
738
+ {
739
+ "inputs": [
740
+ {
741
+ "internalType": "address",
742
+ "name": "to",
743
+ "type": "address"
744
+ },
745
+ {
746
+ "internalType": "string",
747
+ "name": "subject",
748
+ "type": "string"
749
+ },
750
+ {
751
+ "internalType": "string",
752
+ "name": "body",
753
+ "type": "string"
754
+ },
755
+ {
756
+ "internalType": "bool",
757
+ "name": "revenueShareToReceiver",
758
+ "type": "bool"
759
+ },
760
+ {
761
+ "internalType": "bool",
762
+ "name": "resolveSenderToName",
763
+ "type": "bool"
764
+ }
765
+ ],
766
+ "name": "send",
767
+ "outputs": [],
768
+ "stateMutability": "nonpayable",
769
+ "type": "function"
770
+ },
771
+ {
772
+ "inputs": [],
773
+ "name": "sendFee",
774
+ "outputs": [
775
+ {
776
+ "internalType": "uint256",
777
+ "name": "",
778
+ "type": "uint256"
779
+ }
780
+ ],
781
+ "stateMutability": "view",
782
+ "type": "function"
783
+ },
784
+ {
785
+ "inputs": [
786
+ {
787
+ "internalType": "address",
788
+ "name": "to",
789
+ "type": "address"
790
+ },
791
+ {
792
+ "internalType": "string",
793
+ "name": "mailId",
794
+ "type": "string"
795
+ },
796
+ {
797
+ "internalType": "bool",
798
+ "name": "revenueShareToReceiver",
799
+ "type": "bool"
800
+ },
801
+ {
802
+ "internalType": "bool",
803
+ "name": "resolveSenderToName",
804
+ "type": "bool"
805
+ }
806
+ ],
807
+ "name": "sendPrepared",
808
+ "outputs": [],
809
+ "stateMutability": "nonpayable",
810
+ "type": "function"
811
+ },
812
+ {
813
+ "inputs": [
814
+ {
815
+ "internalType": "string",
816
+ "name": "toEmail",
817
+ "type": "string"
818
+ },
819
+ {
820
+ "internalType": "string",
821
+ "name": "mailId",
822
+ "type": "string"
823
+ }
824
+ ],
825
+ "name": "sendPreparedToEmailAddress",
826
+ "outputs": [],
827
+ "stateMutability": "nonpayable",
828
+ "type": "function"
829
+ },
830
+ {
831
+ "inputs": [
832
+ {
833
+ "internalType": "string",
834
+ "name": "toEmail",
835
+ "type": "string"
836
+ },
837
+ {
838
+ "internalType": "string",
839
+ "name": "subject",
840
+ "type": "string"
841
+ },
842
+ {
843
+ "internalType": "string",
844
+ "name": "body",
845
+ "type": "string"
846
+ }
847
+ ],
848
+ "name": "sendToEmailAddress",
849
+ "outputs": [],
850
+ "stateMutability": "nonpayable",
851
+ "type": "function"
852
+ },
853
+ {
854
+ "inputs": [
855
+ {
856
+ "internalType": "address",
857
+ "name": "account",
858
+ "type": "address"
859
+ },
860
+ {
861
+ "internalType": "uint256",
862
+ "name": "percentage",
863
+ "type": "uint256"
864
+ }
865
+ ],
866
+ "name": "setCustomFeePercentage",
867
+ "outputs": [],
868
+ "stateMutability": "nonpayable",
869
+ "type": "function"
870
+ },
871
+ {
872
+ "inputs": [
873
+ {
874
+ "internalType": "uint256",
875
+ "name": "usdcAmount",
876
+ "type": "uint256"
877
+ }
878
+ ],
879
+ "name": "setDelegationFee",
880
+ "outputs": [],
881
+ "stateMutability": "nonpayable",
882
+ "type": "function"
883
+ },
884
+ {
885
+ "inputs": [
886
+ {
887
+ "internalType": "uint256",
888
+ "name": "usdcAmount",
889
+ "type": "uint256"
890
+ }
891
+ ],
892
+ "name": "setFee",
893
+ "outputs": [],
894
+ "stateMutability": "nonpayable",
895
+ "type": "function"
896
+ },
897
+ {
898
+ "inputs": [],
899
+ "name": "unpause",
900
+ "outputs": [],
901
+ "stateMutability": "nonpayable",
902
+ "type": "function"
903
+ },
904
+ {
905
+ "inputs": [],
906
+ "name": "usdcToken",
907
+ "outputs": [
908
+ {
909
+ "internalType": "contract IERC20",
910
+ "name": "",
911
+ "type": "address"
912
+ }
913
+ ],
914
+ "stateMutability": "view",
915
+ "type": "function"
916
+ }
917
+ ],
918
+ "bytecode": "0x60c0604052620186a0600055629896806001553480156200001f57600080fd5b50604051620023ab380380620023ab8339810160408190526200004291620000b4565b6001600160a01b03821615806200006057506001600160a01b038116155b156200007f5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b039182166080521660a052620000ec565b80516001600160a01b0381168114620000af57600080fd5b919050565b60008060408385031215620000c857600080fd5b620000d38362000097565b9150620000e36020840162000097565b90509250929050565b60805160a0516121f8620001b360003960008181610385015281816104b0015281816105c70152818161067101528181610a1c01528181610abd01528181610ce9015281816110c20152818161116d0152818161145e015281816114f60152818161159f015261178f015260008181610224015281816106a3015281816107f0015281816108ef01528181610c0901528181610e1501528181610f140152818161133801528181611528015281816116ae0152818161197e0152611ae401526121f86000f3fe608060405234801561001057600080fd5b50600436106102055760003560e01c80637494b3231161011a578063b187bd26116100ad578063ced72f871161007c578063ced72f8714610466578063d15786871461046e578063ebf77de014610476578063f2292f0914610489578063fa26bb271461049257600080fd5b8063b187bd261461040f578063bbb2fe7c1461041a578063c5f0a58f1461042d578063cd564ccd1461043657600080fd5b80639ded51dd116100e95780639ded51dd146103af578063a3a336bf146103b7578063ac637c7a146103f3578063ae39279f1461040657600080fd5b80637494b323146103655780638456cb59146103785780638da5cb5b146103805780638db3c5fd146103a757600080fd5b80634a4e3bd51161019d578063585450141161016c57806358545014146103075780635c975abb1461031a57806369fe0e2d146103375780636a1c6e781461034a578063720e586f1461035257600080fd5b80634a4e3bd5146102d15780634b0b1b8b146102d957806355bfc81c146102e1578063569d7111146102f457600080fd5b8063358cbf0a116101d9578063358cbf0a1461028e5780633a8c3d6a146102965780633f4ba83a146102a95780633ff5aecd146102b157600080fd5b80620270a41461020a57806311eac8551461021f57806321241dfe14610263578063285298af1461027b575b600080fd5b61021d610218366004611d4d565b6104a5565b005b6102467f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61026d624f1a0081565b60405190815260200161025a565b61026d610289366004611d4d565b610592565b61021d6105bc565b61021d6102a4366004611dc9565b61076c565b61021d610a11565b61026d6102bf366004611d4d565b60066020526000908152604090205481565b61021d610ab2565b61021d610b53565b61021d6102ef366004611e44565b610cde565b61021d610302366004611e5d565b610d91565b61021d610315366004611d4d565b61102d565b6005546103279060ff1681565b604051901515815260200161025a565b61021d610345366004611e44565b6110b7565b61026d600a81565b61021d610360366004611d4d565b611162565b61021d610373366004611f04565b61129f565b61021d611453565b6102467f000000000000000000000000000000000000000000000000000000000000000081565b61026d605a81565b60015461026d565b6103de6103c5366004611d4d565b6002602052600090815260409020805460019091015482565b6040805192835260208301919091520161025a565b61021d610401366004611d4d565b611639565b61026d60005481565b60055460ff16610327565b61021d610428366004611f70565b611784565b61026d60015481565b610449610444366004611d4d565b6118a0565b60408051938452602084019290925215159082015260600161025a565b60005461026d565b60035461026d565b61021d610484366004611d4d565b6118ed565b61026d60035481565b61021d6104a0366004611f9a565b611a4b565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104ee57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610512576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0381166105395760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03811660008181526006602052604080822091909155517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d90610587906064815260200190565b60405180910390a250565b6001600160a01b0381166000908152600660205260408120546105b690606461204a565b92915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461060557604051635fc483c560e01b815260040160405180910390fd5b600454600103610628576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556003546000036106505760405163493c1ab760e01b815260040160405180910390fd5b6003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610710919061205d565b905080610730576040516312171d8360e31b815260040160405180910390fd5b6040518281527f81521279371b94892737e5e06851c322303c72e5493db1453314ea08f55cb9379060200160405180910390a150506000600455565b60045460010361078f576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156107b8576040516306d39fcd60e41b815260040160405180910390fd5b81156108a25760006107cc33600054611bea565b905060008111801561086e57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906108299033903090869060040161207a565b6020604051808303816000875af1158015610848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086c919061205d565b155b1561088c57604051634aa23e8f60e11b815260040160405180910390fd5b801561089c5761089c8682611c2b565b506109a5565b60006108b033600054611bea565b9050600060646108c1600a8461209e565b6108cb91906120b5565b905060008111801561096d57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906109289033903090869060040161207a565b6020604051808303816000875af1158015610947573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096b919061205d565b155b1561098b57604051634aa23e8f60e11b815260040160405180910390fd5b806003600082825461099d91906120d7565b909155505050505b83836040516109b59291906120ea565b6040805191829003822084151583528315156020840152916001600160a01b0388169133917f6c92a5c8a1b6c49076a075d1a499458f543fd2588ea971574373865f817ce83d910160405180910390a450506000600455505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a5a57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610a7d5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f0e5e3b3fb504c22cf5c42fa07d521225937514c654007e1f12646f89768d6f9490600090a1565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610afb57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610b1e5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f15de7ad89d29fd1c6d2e6b1e878453569b4080edf34e0105faaa3bd52f01853090600090a1565b600454600103610b76576040516345f5ce8b60e11b815260040160405180910390fd5b60016004553360009081526002602052604081208054909103610bac5760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610bbf91906120d7565b421115610bdf5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610c5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7e919061205d565b905080610c9e576040516312171d8360e31b815260040160405180910390fd5b60405182815233907f6673747791df7fe01578fcaebe4082d6d7680f052dbdd7d2cf345f88121be421906020015b60405180910390a25050600060045550565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d2757604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610d4b576040516306d39fcd60e41b815260040160405180910390fd5b600180549082905560408051828152602081018490527f83b05743f1284b2faed08b3f927951e6663e5277e09a40c939f0dfe5075af77891015b60405180910390a15050565b600454600103610db4576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610ddd576040516306d39fcd60e41b815260040160405180910390fd5b8115610ec7576000610df133600054611bea565b9050600081118015610e9357506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610e4e9033903090869060040161207a565b6020604051808303816000875af1158015610e6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e91919061205d565b155b15610eb157604051634aa23e8f60e11b815260040160405180910390fd5b8015610ec157610ec18882611c2b565b50610fca565b6000610ed533600054611bea565b905060006064610ee6600a8461209e565b610ef091906120b5565b9050600081118015610f9257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610f4d9033903090869060040161207a565b6020604051808303816000875af1158015610f6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f90919061205d565b155b15610fb057604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254610fc291906120d7565b909155505050505b866001600160a01b0316336001600160a01b03167f4576724219bca1c695ff280c4eba3f012c99252acd6c7d90c0407f63f8e6ad2688888888888860405161101796959493929190612123565b60405180910390a3505060006004555050505050565b600454600103611050576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611079576040516306d39fcd60e41b815260040160405180910390fd5b6040516000906001600160a01b038316907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed8908390a3506000600455565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461110057604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611124576040516306d39fcd60e41b815260040160405180910390fd5b600080549082905560408051828152602081018490527f528d9479e9f9889a87a3c30c7f7ba537e5e59c4c85a37733b16e57c62df613029101610d85565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111ab57604051635fc483c560e01b815260040160405180910390fd5b6004546001036111ce576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556001600160a01b0381166000908152600260205260408120805490910361120d5760405163493c1ab760e01b815260040160405180910390fd5b624f1a00816001015461122091906120d7565b421161123f576040516326f6703f60e11b815260040160405180910390fd5b80546000808355600183018190556003805483929061125f9084906120d7565b90915550506040518181526001600160a01b038416907fb4572b7f0782a4b7672a2341d00e4f1a0af99d81a3f8e959f25ff679eb31448190602001610ccc565b6004546001036112c2576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156112eb576040516306d39fcd60e41b815260040160405180910390fd5b60006112f933600054611bea565b90506000606461130a600a8461209e565b61131491906120b5565b90506000811180156113b657506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906113719033903090869060040161207a565b6020604051808303816000875af1158015611390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b4919061205d565b155b156113d457604051634aa23e8f60e11b815260040160405180910390fd5b80600360008282546113e691906120d7565b90915550506040516113fb90859085906120ea565b6040518091039020336001600160a01b03167ffadda1f12158473f0f6a95450c4108a36fc8aa62f3dee6a9de94c8c599470443888860405161143e929190612165565b60405180910390a35050600060045550505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461149c57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156114c0576040516306d39fcd60e41b815260040160405180910390fd5b6005805460ff191660011790556003541561160e576003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611571573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611595919061205d565b90508015611605577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516115f891815260200190565b60405180910390a261160b565b60038290555b50505b6040517fab35696f06e428ebc5ceba8cd17f8fed287baf43440206d1943af1ee53e6d26790600090a1565b60045460010361165c576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611685576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b03811615611746576001546040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916323b872dd916116e691339130919060040161207a565b6020604051808303816000875af1158015611705573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611729919061205d565b61174657604051634aa23e8f60e11b815260040160405180910390fd5b6040516001600160a01b0382169033907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed890600090a3506000600455565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117cd57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156117f1576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0382166118185760405163e6c4247b60e01b815260040160405180910390fd5b606481111561183a57604051631f3b85d360e01b815260040160405180910390fd5b61184581606461204a565b6001600160a01b038316600081815260066020526040908190209290925590517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d906118949084815260200190565b60405180910390a25050565b6001600160a01b03811660009081526002602052604081208054600182015490929182916118d290624f1a00906120d7565b8154909350158015906118e457508242115b93959294505050565b60055460ff166119105760405163dcdde9dd60e01b815260040160405180910390fd5b6001600160a01b0381166000908152600260205260408120805490910361194a5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b81526001600160a01b038581166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156119c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119eb919061205d565b90508015611a3b57836001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd83604051611a2e91815260200190565b60405180910390a2611a45565b8183554260018401555b50505050565b600454600103611a6e576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611a97576040516306d39fcd60e41b815260040160405180910390fd5b6000611aa533600054611bea565b905060006064611ab6600a8461209e565b611ac091906120b5565b9050600081118015611b6257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90611b1d9033903090869060040161207a565b6020604051808303816000875af1158015611b3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b60919061205d565b155b15611b8057604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254611b9291906120d7565b909155505060405133907fe137336c26280396075fb19ebe313eb4c539c2d845386ad035d8dee029bba31390611bd3908b908b908b908b908b908b90612179565b60405180910390a250506000600455505050505050565b6001600160a01b0382166000908152600660205260408120546064611c0f828261204a565b611c19908561209e565b611c2391906120b5565b949350505050565b611c38605a6000196120b5565b811115611c5857604051634eab2ea760e11b815260040160405180910390fd5b60006064611c67600a8461209e565b611c7191906120b5565b90506000611c7f828461204a565b6001600160a01b038516600090815260026020526040812080549293508392909190611cac9084906120d7565b90915550506001600160a01b03841660009081526002602052604081204260019091015560038054849290611ce29084906120d7565b909155505060408051828152602081018490526001600160a01b038616917fad83ccf4aebaf9db0cc5658b24e378a4a865a51b863e0289e3ee0e4947d97b1c910160405180910390a250505050565b80356001600160a01b0381168114611d4857600080fd5b919050565b600060208284031215611d5f57600080fd5b611d6882611d31565b9392505050565b60008083601f840112611d8157600080fd5b50813567ffffffffffffffff811115611d9957600080fd5b602083019150836020828501011115611db157600080fd5b9250929050565b8015158114611dc657600080fd5b50565b600080600080600060808688031215611de157600080fd5b611dea86611d31565b9450602086013567ffffffffffffffff811115611e0657600080fd5b611e1288828901611d6f565b9095509350506040860135611e2681611db8565b91506060860135611e3681611db8565b809150509295509295909350565b600060208284031215611e5657600080fd5b5035919050565b600080600080600080600060a0888a031215611e7857600080fd5b611e8188611d31565b9650602088013567ffffffffffffffff80821115611e9e57600080fd5b611eaa8b838c01611d6f565b909850965060408a0135915080821115611ec357600080fd5b50611ed08a828b01611d6f565b9095509350506060880135611ee481611db8565b91506080880135611ef481611db8565b8091505092959891949750929550565b60008060008060408587031215611f1a57600080fd5b843567ffffffffffffffff80821115611f3257600080fd5b611f3e88838901611d6f565b90965094506020870135915080821115611f5757600080fd5b50611f6487828801611d6f565b95989497509550505050565b60008060408385031215611f8357600080fd5b611f8c83611d31565b946020939093013593505050565b60008060008060008060608789031215611fb357600080fd5b863567ffffffffffffffff80821115611fcb57600080fd5b611fd78a838b01611d6f565b90985096506020890135915080821115611ff057600080fd5b611ffc8a838b01611d6f565b9096509450604089013591508082111561201557600080fd5b5061202289828a01611d6f565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105b6576105b6612034565b60006020828403121561206f57600080fd5b8151611d6881611db8565b6001600160a01b039384168152919092166020820152604081019190915260600190565b80820281158282048414176105b6576105b6612034565b6000826120d257634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156105b6576105b6612034565b8183823760009101908152919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60808152600061213760808301888a6120fa565b828103602084015261214a8187896120fa565b94151560408401525050901515606090910152949350505050565b602081526000611c236020830184866120fa565b60608152600061218d60608301888a6120fa565b82810360208401526121a08187896120fa565b905082810360408401526121b58185876120fa565b999850505050505050505056fea26469706673582212208a82d8e37c43fe6ce0c564334fcf3525212c54604dc8ca3a5e602c719f3ed32864736f6c63430008180033",
919
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102055760003560e01c80637494b3231161011a578063b187bd26116100ad578063ced72f871161007c578063ced72f8714610466578063d15786871461046e578063ebf77de014610476578063f2292f0914610489578063fa26bb271461049257600080fd5b8063b187bd261461040f578063bbb2fe7c1461041a578063c5f0a58f1461042d578063cd564ccd1461043657600080fd5b80639ded51dd116100e95780639ded51dd146103af578063a3a336bf146103b7578063ac637c7a146103f3578063ae39279f1461040657600080fd5b80637494b323146103655780638456cb59146103785780638da5cb5b146103805780638db3c5fd146103a757600080fd5b80634a4e3bd51161019d578063585450141161016c57806358545014146103075780635c975abb1461031a57806369fe0e2d146103375780636a1c6e781461034a578063720e586f1461035257600080fd5b80634a4e3bd5146102d15780634b0b1b8b146102d957806355bfc81c146102e1578063569d7111146102f457600080fd5b8063358cbf0a116101d9578063358cbf0a1461028e5780633a8c3d6a146102965780633f4ba83a146102a95780633ff5aecd146102b157600080fd5b80620270a41461020a57806311eac8551461021f57806321241dfe14610263578063285298af1461027b575b600080fd5b61021d610218366004611d4d565b6104a5565b005b6102467f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61026d624f1a0081565b60405190815260200161025a565b61026d610289366004611d4d565b610592565b61021d6105bc565b61021d6102a4366004611dc9565b61076c565b61021d610a11565b61026d6102bf366004611d4d565b60066020526000908152604090205481565b61021d610ab2565b61021d610b53565b61021d6102ef366004611e44565b610cde565b61021d610302366004611e5d565b610d91565b61021d610315366004611d4d565b61102d565b6005546103279060ff1681565b604051901515815260200161025a565b61021d610345366004611e44565b6110b7565b61026d600a81565b61021d610360366004611d4d565b611162565b61021d610373366004611f04565b61129f565b61021d611453565b6102467f000000000000000000000000000000000000000000000000000000000000000081565b61026d605a81565b60015461026d565b6103de6103c5366004611d4d565b6002602052600090815260409020805460019091015482565b6040805192835260208301919091520161025a565b61021d610401366004611d4d565b611639565b61026d60005481565b60055460ff16610327565b61021d610428366004611f70565b611784565b61026d60015481565b610449610444366004611d4d565b6118a0565b60408051938452602084019290925215159082015260600161025a565b60005461026d565b60035461026d565b61021d610484366004611d4d565b6118ed565b61026d60035481565b61021d6104a0366004611f9a565b611a4b565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104ee57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610512576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0381166105395760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03811660008181526006602052604080822091909155517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d90610587906064815260200190565b60405180910390a250565b6001600160a01b0381166000908152600660205260408120546105b690606461204a565b92915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461060557604051635fc483c560e01b815260040160405180910390fd5b600454600103610628576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556003546000036106505760405163493c1ab760e01b815260040160405180910390fd5b6003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610710919061205d565b905080610730576040516312171d8360e31b815260040160405180910390fd5b6040518281527f81521279371b94892737e5e06851c322303c72e5493db1453314ea08f55cb9379060200160405180910390a150506000600455565b60045460010361078f576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156107b8576040516306d39fcd60e41b815260040160405180910390fd5b81156108a25760006107cc33600054611bea565b905060008111801561086e57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906108299033903090869060040161207a565b6020604051808303816000875af1158015610848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086c919061205d565b155b1561088c57604051634aa23e8f60e11b815260040160405180910390fd5b801561089c5761089c8682611c2b565b506109a5565b60006108b033600054611bea565b9050600060646108c1600a8461209e565b6108cb91906120b5565b905060008111801561096d57506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906109289033903090869060040161207a565b6020604051808303816000875af1158015610947573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096b919061205d565b155b1561098b57604051634aa23e8f60e11b815260040160405180910390fd5b806003600082825461099d91906120d7565b909155505050505b83836040516109b59291906120ea565b6040805191829003822084151583528315156020840152916001600160a01b0388169133917f6c92a5c8a1b6c49076a075d1a499458f543fd2588ea971574373865f817ce83d910160405180910390a450506000600455505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a5a57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610a7d5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f0e5e3b3fb504c22cf5c42fa07d521225937514c654007e1f12646f89768d6f9490600090a1565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610afb57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610b1e5760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f15de7ad89d29fd1c6d2e6b1e878453569b4080edf34e0105faaa3bd52f01853090600090a1565b600454600103610b76576040516345f5ce8b60e11b815260040160405180910390fd5b60016004553360009081526002602052604081208054909103610bac5760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610bbf91906120d7565b421115610bdf5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610c5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7e919061205d565b905080610c9e576040516312171d8360e31b815260040160405180910390fd5b60405182815233907f6673747791df7fe01578fcaebe4082d6d7680f052dbdd7d2cf345f88121be421906020015b60405180910390a25050600060045550565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d2757604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610d4b576040516306d39fcd60e41b815260040160405180910390fd5b600180549082905560408051828152602081018490527f83b05743f1284b2faed08b3f927951e6663e5277e09a40c939f0dfe5075af77891015b60405180910390a15050565b600454600103610db4576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610ddd576040516306d39fcd60e41b815260040160405180910390fd5b8115610ec7576000610df133600054611bea565b9050600081118015610e9357506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610e4e9033903090869060040161207a565b6020604051808303816000875af1158015610e6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e91919061205d565b155b15610eb157604051634aa23e8f60e11b815260040160405180910390fd5b8015610ec157610ec18882611c2b565b50610fca565b6000610ed533600054611bea565b905060006064610ee6600a8461209e565b610ef091906120b5565b9050600081118015610f9257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610f4d9033903090869060040161207a565b6020604051808303816000875af1158015610f6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f90919061205d565b155b15610fb057604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254610fc291906120d7565b909155505050505b866001600160a01b0316336001600160a01b03167f4576724219bca1c695ff280c4eba3f012c99252acd6c7d90c0407f63f8e6ad2688888888888860405161101796959493929190612123565b60405180910390a3505060006004555050505050565b600454600103611050576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611079576040516306d39fcd60e41b815260040160405180910390fd5b6040516000906001600160a01b038316907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed8908390a3506000600455565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461110057604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611124576040516306d39fcd60e41b815260040160405180910390fd5b600080549082905560408051828152602081018490527f528d9479e9f9889a87a3c30c7f7ba537e5e59c4c85a37733b16e57c62df613029101610d85565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111ab57604051635fc483c560e01b815260040160405180910390fd5b6004546001036111ce576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556001600160a01b0381166000908152600260205260408120805490910361120d5760405163493c1ab760e01b815260040160405180910390fd5b624f1a00816001015461122091906120d7565b421161123f576040516326f6703f60e11b815260040160405180910390fd5b80546000808355600183018190556003805483929061125f9084906120d7565b90915550506040518181526001600160a01b038416907fb4572b7f0782a4b7672a2341d00e4f1a0af99d81a3f8e959f25ff679eb31448190602001610ccc565b6004546001036112c2576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff16156112eb576040516306d39fcd60e41b815260040160405180910390fd5b60006112f933600054611bea565b90506000606461130a600a8461209e565b61131491906120b5565b90506000811180156113b657506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906113719033903090869060040161207a565b6020604051808303816000875af1158015611390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b4919061205d565b155b156113d457604051634aa23e8f60e11b815260040160405180910390fd5b80600360008282546113e691906120d7565b90915550506040516113fb90859085906120ea565b6040518091039020336001600160a01b03167ffadda1f12158473f0f6a95450c4108a36fc8aa62f3dee6a9de94c8c599470443888860405161143e929190612165565b60405180910390a35050600060045550505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461149c57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156114c0576040516306d39fcd60e41b815260040160405180910390fd5b6005805460ff191660011790556003541561160e576003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611571573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611595919061205d565b90508015611605577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516115f891815260200190565b60405180910390a261160b565b60038290555b50505b6040517fab35696f06e428ebc5ceba8cd17f8fed287baf43440206d1943af1ee53e6d26790600090a1565b60045460010361165c576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611685576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b03811615611746576001546040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916323b872dd916116e691339130919060040161207a565b6020604051808303816000875af1158015611705573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611729919061205d565b61174657604051634aa23e8f60e11b815260040160405180910390fd5b6040516001600160a01b0382169033907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed890600090a3506000600455565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117cd57604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156117f1576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0382166118185760405163e6c4247b60e01b815260040160405180910390fd5b606481111561183a57604051631f3b85d360e01b815260040160405180910390fd5b61184581606461204a565b6001600160a01b038316600081815260066020526040908190209290925590517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d906118949084815260200190565b60405180910390a25050565b6001600160a01b03811660009081526002602052604081208054600182015490929182916118d290624f1a00906120d7565b8154909350158015906118e457508242115b93959294505050565b60055460ff166119105760405163dcdde9dd60e01b815260040160405180910390fd5b6001600160a01b0381166000908152600260205260408120805490910361194a5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b81526001600160a01b038581166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156119c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119eb919061205d565b90508015611a3b57836001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd83604051611a2e91815260200190565b60405180910390a2611a45565b8183554260018401555b50505050565b600454600103611a6e576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611a97576040516306d39fcd60e41b815260040160405180910390fd5b6000611aa533600054611bea565b905060006064611ab6600a8461209e565b611ac091906120b5565b9050600081118015611b6257506040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90611b1d9033903090869060040161207a565b6020604051808303816000875af1158015611b3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b60919061205d565b155b15611b8057604051634aa23e8f60e11b815260040160405180910390fd5b8060036000828254611b9291906120d7565b909155505060405133907fe137336c26280396075fb19ebe313eb4c539c2d845386ad035d8dee029bba31390611bd3908b908b908b908b908b908b90612179565b60405180910390a250506000600455505050505050565b6001600160a01b0382166000908152600660205260408120546064611c0f828261204a565b611c19908561209e565b611c2391906120b5565b949350505050565b611c38605a6000196120b5565b811115611c5857604051634eab2ea760e11b815260040160405180910390fd5b60006064611c67600a8461209e565b611c7191906120b5565b90506000611c7f828461204a565b6001600160a01b038516600090815260026020526040812080549293508392909190611cac9084906120d7565b90915550506001600160a01b03841660009081526002602052604081204260019091015560038054849290611ce29084906120d7565b909155505060408051828152602081018490526001600160a01b038616917fad83ccf4aebaf9db0cc5658b24e378a4a865a51b863e0289e3ee0e4947d97b1c910160405180910390a250505050565b80356001600160a01b0381168114611d4857600080fd5b919050565b600060208284031215611d5f57600080fd5b611d6882611d31565b9392505050565b60008083601f840112611d8157600080fd5b50813567ffffffffffffffff811115611d9957600080fd5b602083019150836020828501011115611db157600080fd5b9250929050565b8015158114611dc657600080fd5b50565b600080600080600060808688031215611de157600080fd5b611dea86611d31565b9450602086013567ffffffffffffffff811115611e0657600080fd5b611e1288828901611d6f565b9095509350506040860135611e2681611db8565b91506060860135611e3681611db8565b809150509295509295909350565b600060208284031215611e5657600080fd5b5035919050565b600080600080600080600060a0888a031215611e7857600080fd5b611e8188611d31565b9650602088013567ffffffffffffffff80821115611e9e57600080fd5b611eaa8b838c01611d6f565b909850965060408a0135915080821115611ec357600080fd5b50611ed08a828b01611d6f565b9095509350506060880135611ee481611db8565b91506080880135611ef481611db8565b8091505092959891949750929550565b60008060008060408587031215611f1a57600080fd5b843567ffffffffffffffff80821115611f3257600080fd5b611f3e88838901611d6f565b90965094506020870135915080821115611f5757600080fd5b50611f6487828801611d6f565b95989497509550505050565b60008060408385031215611f8357600080fd5b611f8c83611d31565b946020939093013593505050565b60008060008060008060608789031215611fb357600080fd5b863567ffffffffffffffff80821115611fcb57600080fd5b611fd78a838b01611d6f565b90985096506020890135915080821115611ff057600080fd5b611ffc8a838b01611d6f565b9096509450604089013591508082111561201557600080fd5b5061202289828a01611d6f565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105b6576105b6612034565b60006020828403121561206f57600080fd5b8151611d6881611db8565b6001600160a01b039384168152919092166020820152604081019190915260600190565b80820281158282048414176105b6576105b6612034565b6000826120d257634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156105b6576105b6612034565b8183823760009101908152919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60808152600061213760808301888a6120fa565b828103602084015261214a8187896120fa565b94151560408401525050901515606090910152949350505050565b602081526000611c236020830184866120fa565b60608152600061218d60608301888a6120fa565b82810360208401526121a08187896120fa565b905082810360408401526121b58185876120fa565b999850505050505050505056fea26469706673582212208a82d8e37c43fe6ce0c564334fcf3525212c54604dc8ca3a5e602c719f3ed32864736f6c63430008180033",
920
+ "linkReferences": {},
921
+ "deployedLinkReferences": {}
922
+ }
923
+
924
+ declare module "@nomicfoundation/hardhat-viem/types" {
925
+ export function deployContract(
926
+ contractName: "Mailer",
927
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
928
+ config?: DeployContractConfig
929
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
930
+ export function deployContract(
931
+ contractName: "contracts/Mailer.sol:Mailer",
932
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
933
+ config?: DeployContractConfig
934
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
935
+
936
+ export function sendDeploymentTransaction(
937
+ contractName: "Mailer",
938
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
939
+ config?: SendDeploymentTransactionConfig
940
+ ): Promise<{
941
+ contract: GetContractReturnType<Mailer$Type["abi"]>;
942
+ deploymentTransaction: GetTransactionReturnType;
943
+ }>;
944
+ export function sendDeploymentTransaction(
945
+ contractName: "contracts/Mailer.sol:Mailer",
946
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
947
+ config?: SendDeploymentTransactionConfig
948
+ ): Promise<{
949
+ contract: GetContractReturnType<Mailer$Type["abi"]>;
950
+ deploymentTransaction: GetTransactionReturnType;
951
+ }>;
952
+
953
+ export function getContractAt(
954
+ contractName: "Mailer",
955
+ address: Address,
956
+ config?: GetContractAtConfig
957
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
958
+ export function getContractAt(
959
+ contractName: "contracts/Mailer.sol:Mailer",
960
+ address: Address,
961
+ config?: GetContractAtConfig
962
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
963
+ }