@aztec/accounts 0.74.0 → 0.75.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/EcdsaKAccount.json +506 -506
- package/artifacts/EcdsaRAccount.json +659 -659
- package/artifacts/SchnorrAccount.json +470 -470
- package/artifacts/SchnorrSingleKeyAccount.json +173 -173
- package/dest/defaults/index.d.ts +1 -1
- package/dest/defaults/index.js +1 -1
- package/package.json +8 -8
- package/src/defaults/index.ts +1 -1
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"transpiled": true,
|
|
3
|
-
"noir_version": "1.0.0-beta.1+
|
|
3
|
+
"noir_version": "1.0.0-beta.1+4144a8dce4789d85",
|
|
4
4
|
"name": "EcdsaRAccount",
|
|
5
5
|
"functions": [
|
|
6
6
|
{
|
|
7
|
-
"name": "
|
|
7
|
+
"name": "process_log",
|
|
8
8
|
"is_unconstrained": true,
|
|
9
9
|
"custom_attributes": [],
|
|
10
10
|
"abi": {
|
|
11
11
|
"error_types": {
|
|
12
|
-
"11091894166229312484": {
|
|
13
|
-
"error_kind": "fmtstring",
|
|
14
|
-
"item_types": [],
|
|
15
|
-
"length": 20
|
|
16
|
-
},
|
|
17
12
|
"16761564377371454734": {
|
|
18
13
|
"error_kind": "string",
|
|
19
14
|
"string": "Array index out of bounds"
|
|
20
15
|
},
|
|
16
|
+
"16954218183513903507": {
|
|
17
|
+
"error_kind": "string",
|
|
18
|
+
"string": "Attempted to read past end of BoundedVec"
|
|
19
|
+
},
|
|
21
20
|
"17843811134343075018": {
|
|
22
21
|
"error_kind": "string",
|
|
23
22
|
"string": "Stack too deep"
|
|
@@ -30,92 +29,144 @@
|
|
|
30
29
|
"error_kind": "string",
|
|
31
30
|
"string": "attempt to add with overflow"
|
|
32
31
|
},
|
|
32
|
+
"6753155520859132764": {
|
|
33
|
+
"error_kind": "string",
|
|
34
|
+
"string": "Failed to deliver note"
|
|
35
|
+
},
|
|
33
36
|
"8270195893599566439": {
|
|
34
37
|
"error_kind": "string",
|
|
35
38
|
"string": "Invalid public keys hint for address"
|
|
39
|
+
},
|
|
40
|
+
"8861757336002045335": {
|
|
41
|
+
"error_kind": "fmtstring",
|
|
42
|
+
"item_types": [
|
|
43
|
+
{
|
|
44
|
+
"kind": "integer",
|
|
45
|
+
"sign": "unsigned",
|
|
46
|
+
"width": 32
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"kind": "integer",
|
|
50
|
+
"sign": "unsigned",
|
|
51
|
+
"width": 32
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"kind": "field"
|
|
55
|
+
}
|
|
56
|
+
],
|
|
57
|
+
"length": 99
|
|
58
|
+
},
|
|
59
|
+
"9862881900111276825": {
|
|
60
|
+
"error_kind": "fmtstring",
|
|
61
|
+
"item_types": [
|
|
62
|
+
{
|
|
63
|
+
"kind": "field"
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"length": 35
|
|
36
67
|
}
|
|
37
68
|
},
|
|
38
69
|
"parameters": [
|
|
39
70
|
{
|
|
40
|
-
"name": "
|
|
71
|
+
"name": "log_plaintext",
|
|
41
72
|
"type": {
|
|
42
73
|
"fields": [
|
|
43
74
|
{
|
|
44
|
-
"name": "
|
|
75
|
+
"name": "storage",
|
|
45
76
|
"type": {
|
|
46
|
-
"kind": "
|
|
77
|
+
"kind": "array",
|
|
78
|
+
"length": 18,
|
|
79
|
+
"type": {
|
|
80
|
+
"kind": "field"
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "len",
|
|
86
|
+
"type": {
|
|
87
|
+
"kind": "integer",
|
|
88
|
+
"sign": "unsigned",
|
|
89
|
+
"width": 32
|
|
47
90
|
}
|
|
48
91
|
}
|
|
49
92
|
],
|
|
50
93
|
"kind": "struct",
|
|
51
|
-
"path": "
|
|
94
|
+
"path": "std::collections::bounded_vec::BoundedVec"
|
|
52
95
|
},
|
|
53
96
|
"visibility": "private"
|
|
54
97
|
},
|
|
55
98
|
{
|
|
56
|
-
"name": "
|
|
99
|
+
"name": "tx_hash",
|
|
57
100
|
"type": {
|
|
58
101
|
"kind": "field"
|
|
59
102
|
},
|
|
60
103
|
"visibility": "private"
|
|
61
104
|
},
|
|
62
105
|
{
|
|
63
|
-
"name": "
|
|
106
|
+
"name": "unique_note_hashes_in_tx",
|
|
64
107
|
"type": {
|
|
65
|
-
"
|
|
108
|
+
"fields": [
|
|
109
|
+
{
|
|
110
|
+
"name": "storage",
|
|
111
|
+
"type": {
|
|
112
|
+
"kind": "array",
|
|
113
|
+
"length": 64,
|
|
114
|
+
"type": {
|
|
115
|
+
"kind": "field"
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"name": "len",
|
|
121
|
+
"type": {
|
|
122
|
+
"kind": "integer",
|
|
123
|
+
"sign": "unsigned",
|
|
124
|
+
"width": 32
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
],
|
|
128
|
+
"kind": "struct",
|
|
129
|
+
"path": "std::collections::bounded_vec::BoundedVec"
|
|
66
130
|
},
|
|
67
131
|
"visibility": "private"
|
|
68
132
|
},
|
|
69
133
|
{
|
|
70
|
-
"name": "
|
|
134
|
+
"name": "first_nullifier_in_tx",
|
|
71
135
|
"type": {
|
|
72
136
|
"kind": "field"
|
|
73
137
|
},
|
|
74
138
|
"visibility": "private"
|
|
75
139
|
},
|
|
76
140
|
{
|
|
77
|
-
"name": "
|
|
78
|
-
"type": {
|
|
79
|
-
"kind": "boolean"
|
|
80
|
-
},
|
|
81
|
-
"visibility": "private"
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
"name": "packed_note_content",
|
|
141
|
+
"name": "recipient",
|
|
85
142
|
"type": {
|
|
86
|
-
"
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
143
|
+
"fields": [
|
|
144
|
+
{
|
|
145
|
+
"name": "inner",
|
|
146
|
+
"type": {
|
|
147
|
+
"kind": "field"
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
],
|
|
151
|
+
"kind": "struct",
|
|
152
|
+
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
91
153
|
},
|
|
92
154
|
"visibility": "private"
|
|
93
155
|
}
|
|
94
156
|
],
|
|
95
|
-
"return_type":
|
|
96
|
-
"abi_type": {
|
|
97
|
-
"kind": "array",
|
|
98
|
-
"length": 4,
|
|
99
|
-
"type": {
|
|
100
|
-
"kind": "field"
|
|
101
|
-
}
|
|
102
|
-
},
|
|
103
|
-
"visibility": "public"
|
|
104
|
-
}
|
|
157
|
+
"return_type": null
|
|
105
158
|
},
|
|
106
|
-
"bytecode": "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",
|
|
107
|
-
"debug_symbols": "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",
|
|
159
|
+
"bytecode": "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",
|
|
160
|
+
"debug_symbols": "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",
|
|
108
161
|
"brillig_names": [
|
|
109
|
-
"
|
|
162
|
+
"process_log"
|
|
110
163
|
]
|
|
111
164
|
},
|
|
112
165
|
{
|
|
113
|
-
"name": "
|
|
166
|
+
"name": "entrypoint",
|
|
114
167
|
"is_unconstrained": false,
|
|
115
168
|
"custom_attributes": [
|
|
116
|
-
"private"
|
|
117
|
-
"noinitcheck",
|
|
118
|
-
"view"
|
|
169
|
+
"private"
|
|
119
170
|
],
|
|
120
171
|
"abi": {
|
|
121
172
|
"error_types": {
|
|
@@ -140,22 +191,18 @@
|
|
|
140
191
|
"error_kind": "string",
|
|
141
192
|
"string": "Stack too deep"
|
|
142
193
|
},
|
|
143
|
-
"19458536156181958": {
|
|
144
|
-
"error_kind": "string",
|
|
145
|
-
"string": "Function verify_private_authwit can only be called statically"
|
|
146
|
-
},
|
|
147
194
|
"2920182694213909827": {
|
|
148
195
|
"error_kind": "string",
|
|
149
196
|
"string": "attempt to subtract with overflow"
|
|
150
197
|
},
|
|
151
|
-
"4939791462094160055": {
|
|
152
|
-
"error_kind": "string",
|
|
153
|
-
"string": "Message not authorized by account"
|
|
154
|
-
},
|
|
155
198
|
"5019202896831570965": {
|
|
156
199
|
"error_kind": "string",
|
|
157
200
|
"string": "attempt to add with overflow"
|
|
158
201
|
},
|
|
202
|
+
"5727012404371710682": {
|
|
203
|
+
"error_kind": "string",
|
|
204
|
+
"string": "push out of bounds"
|
|
205
|
+
},
|
|
159
206
|
"6869395374906889440": {
|
|
160
207
|
"error_kind": "string",
|
|
161
208
|
"string": "Mismatch note header contract address."
|
|
@@ -648,76 +695,240 @@
|
|
|
648
695
|
"visibility": "private"
|
|
649
696
|
},
|
|
650
697
|
{
|
|
651
|
-
"name": "
|
|
698
|
+
"name": "app_payload",
|
|
652
699
|
"type": {
|
|
653
|
-
"
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
{
|
|
666
|
-
"name": "msg_sender",
|
|
667
|
-
"type": {
|
|
668
|
-
"fields": [
|
|
669
|
-
{
|
|
670
|
-
"name": "inner",
|
|
671
|
-
"type": {
|
|
672
|
-
"kind": "field"
|
|
673
|
-
}
|
|
700
|
+
"fields": [
|
|
701
|
+
{
|
|
702
|
+
"name": "function_calls",
|
|
703
|
+
"type": {
|
|
704
|
+
"kind": "array",
|
|
705
|
+
"length": 4,
|
|
706
|
+
"type": {
|
|
707
|
+
"fields": [
|
|
708
|
+
{
|
|
709
|
+
"name": "args_hash",
|
|
710
|
+
"type": {
|
|
711
|
+
"kind": "field"
|
|
674
712
|
}
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
713
|
+
},
|
|
714
|
+
{
|
|
715
|
+
"name": "function_selector",
|
|
716
|
+
"type": {
|
|
717
|
+
"fields": [
|
|
718
|
+
{
|
|
719
|
+
"name": "inner",
|
|
720
|
+
"type": {
|
|
721
|
+
"kind": "integer",
|
|
722
|
+
"sign": "unsigned",
|
|
723
|
+
"width": 32
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
],
|
|
727
|
+
"kind": "struct",
|
|
728
|
+
"path": "authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"
|
|
689
729
|
}
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
"width": 32
|
|
705
|
-
}
|
|
730
|
+
},
|
|
731
|
+
{
|
|
732
|
+
"name": "target_address",
|
|
733
|
+
"type": {
|
|
734
|
+
"fields": [
|
|
735
|
+
{
|
|
736
|
+
"name": "inner",
|
|
737
|
+
"type": {
|
|
738
|
+
"kind": "field"
|
|
739
|
+
}
|
|
740
|
+
}
|
|
741
|
+
],
|
|
742
|
+
"kind": "struct",
|
|
743
|
+
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
706
744
|
}
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
745
|
+
},
|
|
746
|
+
{
|
|
747
|
+
"name": "is_public",
|
|
748
|
+
"type": {
|
|
749
|
+
"kind": "boolean"
|
|
750
|
+
}
|
|
751
|
+
},
|
|
752
|
+
{
|
|
753
|
+
"name": "is_static",
|
|
754
|
+
"type": {
|
|
755
|
+
"kind": "boolean"
|
|
756
|
+
}
|
|
757
|
+
}
|
|
758
|
+
],
|
|
759
|
+
"kind": "struct",
|
|
760
|
+
"path": "authwit::entrypoint::function_call::FunctionCall"
|
|
761
|
+
}
|
|
762
|
+
}
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
"name": "nonce",
|
|
766
|
+
"type": {
|
|
767
|
+
"kind": "field"
|
|
768
|
+
}
|
|
769
|
+
}
|
|
770
|
+
],
|
|
771
|
+
"kind": "struct",
|
|
772
|
+
"path": "authwit::entrypoint::app::AppPayload"
|
|
773
|
+
},
|
|
774
|
+
"visibility": "private"
|
|
775
|
+
},
|
|
776
|
+
{
|
|
777
|
+
"name": "fee_payload",
|
|
778
|
+
"type": {
|
|
779
|
+
"fields": [
|
|
780
|
+
{
|
|
781
|
+
"name": "function_calls",
|
|
782
|
+
"type": {
|
|
783
|
+
"kind": "array",
|
|
784
|
+
"length": 2,
|
|
785
|
+
"type": {
|
|
786
|
+
"fields": [
|
|
787
|
+
{
|
|
788
|
+
"name": "args_hash",
|
|
789
|
+
"type": {
|
|
790
|
+
"kind": "field"
|
|
791
|
+
}
|
|
792
|
+
},
|
|
793
|
+
{
|
|
794
|
+
"name": "function_selector",
|
|
795
|
+
"type": {
|
|
796
|
+
"fields": [
|
|
797
|
+
{
|
|
798
|
+
"name": "inner",
|
|
799
|
+
"type": {
|
|
800
|
+
"kind": "integer",
|
|
801
|
+
"sign": "unsigned",
|
|
802
|
+
"width": 32
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
],
|
|
806
|
+
"kind": "struct",
|
|
807
|
+
"path": "authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"
|
|
808
|
+
}
|
|
809
|
+
},
|
|
810
|
+
{
|
|
811
|
+
"name": "target_address",
|
|
812
|
+
"type": {
|
|
813
|
+
"fields": [
|
|
814
|
+
{
|
|
815
|
+
"name": "inner",
|
|
816
|
+
"type": {
|
|
817
|
+
"kind": "field"
|
|
818
|
+
}
|
|
819
|
+
}
|
|
820
|
+
],
|
|
821
|
+
"kind": "struct",
|
|
822
|
+
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
823
|
+
}
|
|
824
|
+
},
|
|
825
|
+
{
|
|
826
|
+
"name": "is_public",
|
|
827
|
+
"type": {
|
|
828
|
+
"kind": "boolean"
|
|
829
|
+
}
|
|
830
|
+
},
|
|
831
|
+
{
|
|
832
|
+
"name": "is_static",
|
|
833
|
+
"type": {
|
|
834
|
+
"kind": "boolean"
|
|
835
|
+
}
|
|
836
|
+
}
|
|
837
|
+
],
|
|
838
|
+
"kind": "struct",
|
|
839
|
+
"path": "authwit::entrypoint::function_call::FunctionCall"
|
|
840
|
+
}
|
|
841
|
+
}
|
|
842
|
+
},
|
|
843
|
+
{
|
|
844
|
+
"name": "nonce",
|
|
845
|
+
"type": {
|
|
846
|
+
"kind": "field"
|
|
847
|
+
}
|
|
848
|
+
},
|
|
849
|
+
{
|
|
850
|
+
"name": "is_fee_payer",
|
|
851
|
+
"type": {
|
|
852
|
+
"kind": "boolean"
|
|
853
|
+
}
|
|
854
|
+
}
|
|
855
|
+
],
|
|
856
|
+
"kind": "struct",
|
|
857
|
+
"path": "authwit::entrypoint::fee::FeePayload"
|
|
858
|
+
},
|
|
859
|
+
"visibility": "private"
|
|
860
|
+
},
|
|
861
|
+
{
|
|
862
|
+
"name": "cancellable",
|
|
863
|
+
"type": {
|
|
864
|
+
"kind": "boolean"
|
|
865
|
+
},
|
|
866
|
+
"visibility": "private"
|
|
867
|
+
}
|
|
868
|
+
],
|
|
869
|
+
"return_type": {
|
|
870
|
+
"abi_type": {
|
|
871
|
+
"fields": [
|
|
872
|
+
{
|
|
873
|
+
"name": "call_context",
|
|
874
|
+
"type": {
|
|
875
|
+
"fields": [
|
|
876
|
+
{
|
|
877
|
+
"name": "msg_sender",
|
|
878
|
+
"type": {
|
|
879
|
+
"fields": [
|
|
880
|
+
{
|
|
881
|
+
"name": "inner",
|
|
882
|
+
"type": {
|
|
883
|
+
"kind": "field"
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
],
|
|
887
|
+
"kind": "struct",
|
|
888
|
+
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
889
|
+
}
|
|
890
|
+
},
|
|
891
|
+
{
|
|
892
|
+
"name": "contract_address",
|
|
893
|
+
"type": {
|
|
894
|
+
"fields": [
|
|
895
|
+
{
|
|
896
|
+
"name": "inner",
|
|
897
|
+
"type": {
|
|
898
|
+
"kind": "field"
|
|
899
|
+
}
|
|
900
|
+
}
|
|
901
|
+
],
|
|
902
|
+
"kind": "struct",
|
|
903
|
+
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
904
|
+
}
|
|
905
|
+
},
|
|
906
|
+
{
|
|
907
|
+
"name": "function_selector",
|
|
908
|
+
"type": {
|
|
909
|
+
"fields": [
|
|
910
|
+
{
|
|
911
|
+
"name": "inner",
|
|
912
|
+
"type": {
|
|
913
|
+
"kind": "integer",
|
|
914
|
+
"sign": "unsigned",
|
|
915
|
+
"width": 32
|
|
916
|
+
}
|
|
917
|
+
}
|
|
918
|
+
],
|
|
919
|
+
"kind": "struct",
|
|
920
|
+
"path": "authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"
|
|
921
|
+
}
|
|
922
|
+
},
|
|
923
|
+
{
|
|
924
|
+
"name": "is_static_call",
|
|
925
|
+
"type": {
|
|
926
|
+
"kind": "boolean"
|
|
927
|
+
}
|
|
928
|
+
}
|
|
929
|
+
],
|
|
930
|
+
"kind": "struct",
|
|
931
|
+
"path": "authwit::aztec::protocol_types::abis::call_context::CallContext"
|
|
721
932
|
}
|
|
722
933
|
},
|
|
723
934
|
{
|
|
@@ -1760,26 +1971,32 @@
|
|
|
1760
1971
|
"visibility": "databus"
|
|
1761
1972
|
}
|
|
1762
1973
|
},
|
|
1763
|
-
"bytecode": "H4sIAAAAAAAA/+19BZgUx/P2Hrt73KGHQxISiBHPzPqGkEASkgABIkSIQFaBGCEhbsSIu7sLcXd3d5df3N2dfNVk5q6ur2e5Y6vmpv7fzfO8XNPT2/N2dXe9XaM1of+2x2tDoWXr/kvXAMLO306AIVpe1JDX1ZDX3ZDX05DXy5DXHzBSy1vKUG6IIW+oIW9pQ94wJw9vNc7fkc7fuJVKJErpWMmO2zkrls1nklYimU9l7IydzCSLsUw8XsokMulsPpu2snYiXrLLyWy8bP239Qg31WVVtcUKnDx7kvG0LE6eDYvOM6ZnKG69ARHEVfXXfCe9Qqgp3RPlNzhp93e94P+9AX0AfcNN+e7WSbOBVd1mDyO0Zz+6frfx3FL1DtHsUENshzChHUKMY7Y/nQ8ocfIcsOg8k3qGaW71R3NIbW56MEoP0ObWQPj/IMBigMUNcytMPKaWJKxrYJiub5Zg8s/U9luBsK5BhPYbTGg/09heAo3twSi9GEovro3tJeH/Syk/CRjqjG1cp9c2ksi+ndGxhjjppYHHMoBlAcsBlgcMA6wAWBGwEmBlwCqAVQGrAVYHWADlkGOAOCABSAJSgDQgA8gC1gAMB6wJGAFYC7C26hvAqHBzLuvA/9cFrAcYDVgfsAFgQ8AYwFjAOMBGgPGACYCJgI0BmwA2BWwGmATYHLAFYEvAVoDJgK0B2wC2BWwHmAKYCtgekHMmRt75W3D+Fp2/Jedv2RW8xoUmJOq0vGUMecsa8pYz5C1vyBtmyFvBkLeiIW8lQ97KhrxVDHmrGvJWM+StbsizDHm2IS9myIsb8hKGvKQhL2XISxvyMoa8rCFvDUPecEPemoa8EYa8tQx5axvyRhryRhny1jHkrWvIW8+QN9qQt74hbwND3oaGvDGGvLGGvHGGvI0MeeMNeRMMeRMNeRsb8jYx5G1qyNvMkDfJkLe5IW8LQ96WhrytDHmTDXlbG/K2MeRta8jbzpA3xZA31ZC3vSEvZ8hTDnFIqPmmB0DVinlNiE4ElWMnqqtiEGFVt9mlMJ39Ig6/mlDLbamWvG2rim1p3b5V1LZMy75a5NqWNfX7Ita2nHkMLVJty3uNx0WobZj32G5zbStUmidtrG3FynOuTbWttLD524baVl64L2h1bau0xq+0srZVW+ejWlXbaq31d62obfXW+86F19YWP7yQ2uy2+fSKtcXaqg8Vaou3XWs8a0ssim551JZcNA001pZaVD011JZedG1uUVumGp3XastWt2ZoVtsa1a4/UG3Dq1/LNNa2JsW6yKltBM0aa0Fta1Gt16C2tenWfvZIwnWku15W27Twf3+nh0PNt6HOX3TQjoXaQraOhZrVpq1joda22joWam2rrWOh1rbaOhZqbautY6HWttr+f1uoVXsibVrr6yospC57OuECstIJPuoTk6OYFr4znAXvDvrCN8zYgGoHxAzCAbGDTwOC+ozvOoSBxLqEgcR6hIHEaMJAYn3CQGIDwkBiQ8JAYgxhIDGWMJAYRxhIbEQYSIwnDCQmEAYSEwkDiY0JA4lNCAOJTQkDic0IA4lJhIHE5oSBxBaEgcSWhIHEVoSBxGTCQGJrwkBiG8JAYlvCQGI7wkBiCmEgMZUwkNieaeG7o7PA3Ulf+FKf8e1YqLVt61iodSzU9K1joda22joWam2rrWOh1rbaOhZqbavt/7eFWrUn+HYkPMG3E+EC0s8zvjmmhe/OzoJ3F33hS33GN0c4IHYmHBC7CB0QeaYBMdPp+F25B0SecEDMJBwQuxIaVnW6ulm/N7JjE89ELFVKJXKlUtwqZbOZgh0vZAqlUqGYi+fS6YyVLuZLuWIyli/EyvF82SrlSpmknU/k07ZVsOdr9dnQ3mQqZ6Uy5ZQVt2LxWMIqZFP5RDGXTKQTqRRUF89n0rZdSMbsQjqRidmxnJ3MF6x4opRLzaftX0sf8LFMLFlIZwuFVC5ZyOdLpXK6mMplynY+lbNj+TiQycXjmUTCypXKpXwink3ZiUwhAz2ULliJbIv2QteWi7ZqXT5tpWLFVD6pOr4UT+WzVjqeiietcqqcz1l2LJYpJKDJMSubTVrZcjJt2SXu9lqlYt4uxbLxQrxQytr5MjSiBMlcLmkVY4Vkwi7nskUYgMALmmvFS+W8XSjnYoV8PJ5Ml1u0N56wi6l0spyD3i0VSnHocBgd8UIungA7xPN2Np8qZdOpmJVIpSEvAeaLJQoJsHKxFE/yt9cq5oqxWNJKZuLlWC5btnKFPLS5WCqWbbA4TMS8FQd75ErpZLwMPWUn8plMrpyxC/lkrAW/bDqet8BQhVyuEI9nS6UENLeYyyfteCybjVnldH7B4LGgIsguJYvlVNpKWPm4ZWVTMfbxXI7HE7FS1rJKMLqgHbFMFjxOrpTKgF9JxzPlYiEFrSvCGLCtYimdj8esggVz0opZmXSxRf/my9lkBn4TB6tli8lsDDyZFQcXlsrCxE8VU+VsLJGF6RxLJKDGeNIuwxCIFctgioKVYe/fBMyjOExGcKUW+NRiIRMrZXLJZC6bjBUTikYsmSqXLPClxWwiC9kw53KWBeMAOqrl+Mtl1MhPWUUL/iknixlw04lsMZEpg2tMFC2Y/lY+mykV03Y6l80n47FcORUHz5eMW+mszdHebk5dKq3uM3CfIp6O0jNQegeU3hGld0LpnVF6F5SeidK7OmnC9pDbR9U3C3juBtg9/N9T07UhfxY75TD9uFbb7DAjYVU5db17EC6auNq9B1o5EtXL+qqQPekGV4KT516LzjOuZyhu+usU9kQOScFNz0L5e4Wbv05hb/j/PoB9AfuFW74qhNoG+9P1Vdxkg/1RW4sovXcFGxwA/z8QcBBgTpj/VUT9CH3AwYSnfPATyareIY6NOoX8EYklGUQCP/V8CNR/KOAwwOGAuYAjAEcCjgIcDTgGcCzgOMDxgBMAJwJOApwMOAVwKuA0wOmAMwBnAs4CnA04B3Au4DzA+YALABcCLgJcDLgEcCngMsDlgCsAVwLmAa4CXA24BnAt4DrA9YAbADcCbgLcDLgFcCvgNsDtgDsAdwLuAtwNuAdwL+A+wP2ABwAPhp3O7IwGNGdnHhLmEY8QJU+7+amThxzhe9idBe5fteNXLU8VqtNIhRmNuKieolRWm2U/ROh1HiY+59baZWi1vB9qxru62jDfR8KMhFXlLSWoupofIZSNR5mXtBQ2fNS4lK+u5keJPRx1ux/2aHe19T5GLNOuQ1X11of8ValDBarU446zeUJXqccNKvWEDyp1KKFKPU7oTJ4QqlKPM6nUk2FGwk8yqNSThCr1VMBVStnwKQaVeirgKvWER7urrfdpJpV6uh1U6jCBKvWM42ye1VXqGYNKPeuDSh1GqFLPEDqTZ4Wq1DNMKvVcmJHwcwwq9RyhSj0fcJVSNnyeQaWeD7hKPevR7mrrfYFJpV5oB5U6XKBKveg4m5d0lXrRoFIv+aBShxOq1IuEzuQloSr1IpNKvRxmJPwyg0q9TKhSrwRcpZQNX2FQqVcCrlIvebS72npfZVKpV9tBpeYKVKnXHGfzuq5SrxlU6nUfVGouoUq9RuhMXheqUq8xqdQbYUbCbzCo1BuEKvVmwFVK2fBNBpV6M+Aq9bpHu6ut9y0mlXqrHVTqCIEq9bbjbN7RVeptg0q944NKHUGoUm8TOpN3hKrU20wq9W6YkfC7DCr1LqFK/S/gKqVs+D8GlfpfwFXqHY92V1vve0wq9V47qNSRAlXqfcfZfKCr1PsGlfrAB5U6klCl3id0Jh8IVan3mVTqwzAj4Q8ZVOpDQpX6KOAqpWz4EYNKfRRwlfrAo93V1vsxk0p93A4qdZRAlfrEcTaf6ir1iUGlPvVBpY4iVKlPCJ3Jp0JV6hMmlfoszEj4MwaV+oxQpT4PuEopG37OoFKfB1ylPvVod7X1fsGkUl+0g0odLVClvnSczVe6Sn1pUKmvfFCpowlV6ktCZ/KVUJX6kkmlvg4zEv6aQaW+JlSpbwKuUsqG3zCo1DcBV6mvPNpdbb3fMqnUt+2gUscIVKnvHGfzva5S3xlU6nsfVOoYQpX6jtCZfC9Upb5jUqkfwoyEf2BQqR8IVerHgKuUsuGPDCr1Y8BV6nuPdldb709MKvVTO6jUsQJV6mfH2fyiq9TPBpX6xQeVOpZQpX4mdCa/CFWpn5lU6tcwI+FfGVTqV0KV+i3gKqVs+BuDSv0WcJX6xaPd1db7O5NK/d4OKnWcQJX6w3E2f+oq9YdBpf70QaWOI1SpPwidyZ9CVeoPJpX6K8xI+C8GlfqLUKX+DrhKKRv+zaBSfwdcpf70aHe19f7DpFL/tINKHS9QpeY7zuZfXaXmG1TqXx9U6nhClZpP6Ez+FapS85lUqtmrZKkJq8qpVUrVSTVIayLBVillQ8WRWqVqIsFWqX892l1tvZ0iPCql6vVbpU4QqFJhx9lE3K8ONapVpKVKqULcKnUCoUqFCZ1JJCJTpcIRHpWKRhgJRxlUKkqoUrUBVyllw1oGlaoNuEpFPNpdbb2dmVSqczuo1IkCVarOcTb1ukrVGVSq3geVOpFQpeoInUm9UJWqY1KpLhFGwl0YVKoLoUp1DbhKKRt2ZVCprgFXqXqPdldbbzcmlerWDip1kkCV6u44mx66SnU3qFQPH1TqJEKV6k7oTHoIVanuTCrVM8JIuCeDSvUkVKmGgKuUsmEDg0o1BFyleni0u9p6ezGpVK92UKmTBapUb8fZ9NFVqrdBpfr4oFInE6pUb0Jn0keoSvVmUqm+EUbCfRlUqi+hSvULuEopG/ZjUKl+AVepPh7trrbe/kwq1b8dVOoUgSo1wHE2A3WVGmBQqYE+qNQphCo1gNCZDBSqUgOYVGpQhJHwIAaVGkSoUosFXKWUDRdjUKnFAq5SAz3aXW29izOp1OLtoFKnClSpJRxnM1hXqSUMKjXYB5U6lVClliB0JoOFqtQSTCq1ZISR8JIMKrUkoUotFXCVUjZcikGllgq4Sg32aHe19Q5hUqkh7aBSpwlUqaGOs1laV6mhBpVa2geVOo1QpYYSOpOlharUUCaVWibCSHgZBpVahlCllg24SikbLsugUssGXKWW9mh3tfUux6RSy7WDSp0uUKWWd5zNMF2lljeo1DAfVOp0QpVantCZDBOqUsszqdQKEUbCKzCo1AqEKrViwFVK2XBFBpVaMeAqNcyj3dXWuxKTSq3UDip1hkCVWtlxNqvoKrWyQaVW8UGlziBUqZUJnckqQlVqZSaVWjXCSHhVBpValVClVgu4SikbrsagUqsFXKVW8Wh3tfWuzqRSq7eDSp0pUKUsx9nYukpZBpWyfVCpMwlVyiJ0JrZQlbKYVCoWYSQcY1CpGKFKxQOuUsqGcQaVigdcpWyPdldbb4JJpRLtoFJnCVSppONsUrpKJQ0qlfJBpc4iVKkkoTNJCVWpJJNKpSOMhNMMKpUmVKlMwFVK2TDDoFKZgKtUyqPd1dabZVKpbDuo1NkCVWoNx9kM11VqDYNKDfdBpc4mVKk1CJ3JcKEqtQaTSq0ZYSS8JoNKrUmoUiMCrlLKhiMYVGpEwFVquEe7q613LSaVWqsdVOocgSq1tuNsRuoqtbZBpUb6oFLnEKrU2oTOZKRQlVqbSaVGRRgJj2JQqVGEKrVOwFVK2XAdBpVaJ+AqNdKj3dXWuy6TSq3bDip1rkCVWs9xNqN1lVrPoFKjfVCpcwlVaj1CZzJaqEqtx6RS60cYCa/PoFLrE6rUBgFXKWXDDRhUaoOAq9Roj3ZXW++GTCq1YTuo1HkCVWqM42zG6io1xqBSY31QqfMIVWoMoTMZK1SlxjCp1LgII+FxDCo1jlClNgq4SikbbsSgUhsFXKXGerS72nrHM6nU+HZQqfMFqtQEx9lM1FVqgkGlJvqgUucTqtQEQmcyUahKTWBSqY0jjIQ3ZlCpjQlVapOAq5Sy4SYMKrVJwFVqoke7q613UyaV2rQdVOoCgSq1meNsJukqtZlBpSb5oFIXEKrUZoTOZJJQldqMSaU2jzAS3pxBpTYnVKktAq5SyoZbMKjUFgFXqUke7a623i2ZVGrLdlCpCwWq1FaOs5msq9RWBpWa7INKXUioUlsROpPJQlVqKyaV2jrCSHhrBpXamlCltgm4SikbbsOgUtsEXKUme7S72nq3ZVKpbdtBpS4SqFLbOc5miq5S2xlUaooPKnURoUptR+hMpghVqe2YVGpqhJHwVAaVmkqoUtsHXKWUDbdnUKntA65SUzzaXW29OSaVyrWDSl0sUKXyjrMp6CqVN6hUwQeVuphQpfKEzqQgVKXyTCpVjDASLjKoVJFQpUoBVyllwxKDSpUCrlIFj3ZXW2+ZSaXK7aBSlwhUqWmOs5muq9Q0g0pN90GlLiFUqWmEzmS6UJWaxqRSMyKMhGcwqNQMQpXaIeAqpWy4A4NK7RBwlZru0e5q692RSaV2bAeVulSgSu3kOJuddZXayaBSO/ugUpcSqtROhM5kZ6EqtROTSu0SYSS8C4NK7UKoUjMDrlLKhjMZVGpmwFVqZ492V1vvrkwqtWs7qNRlAlVqluNsdtNVapZBpXbzQaUuI1SpWYTOZDehKjWLSaV2jzAS3p1BpXYnVKnZAVcpZcPZDCo1O+AqtZtHu6utdw8mldqjHVTqcoEqtafjbPbSVWpPg0rt5YNKXU6oUnsSOpO9hKrUnkwqtXeEkfDeDCq1N6FK7RNwlVI23IdBpfYJuErt5dHuauvdl0ml9m0HlbpCoErt5zib/XWV2s+gUvv7oFJXEKrUfoTOZH+hKrUfk0odEGEkfACDSh1AqFIHBlyllA0PZFCpAwOuUvt7tLvaeg9iUqmD2kGlrhSoUnMcZ3OwrlJzDCp1sA8qdSWhSs0hdCYHC1WpOUwqdUiEkfAhDCp1CKFKHRpwlVI2PJRBpQ4NuEod7NHuaus9jEmlDmsHlZonUKUOd5zNXF2lDjeo1FwfVGoeoUodTuhM5gpVqcOZVOqICCPhIxhU6ghClToy4CqlbHgkg0odGXCVmuvR7mrrPYpJpY5qB5W6SqBKHe04m2N0lTraoFLH+KBSVxGq1NGEzuQYoSp1NJNKHRthJHwsg0odS6hSxwVcpZQNj2NQqeMCrlLHeLS72nqPZ1Kp49tBpa4WqFInOM7mRF2lTjCo1Ik+qNTVhCp1AqEzOVGoSp3ApFInRRgJn8SgUicRqtTJAVcpZcOTGVTq5ICr1Ike7a623lOYVOqUdlCpawSq1KmOszlNV6lTDSp1mg8qdQ2hSp1K6ExOE6pSpzKp1OkRRsKnM6jU6YQqdUbAVUrZ8AwGlToj4Cp1mke7q633TCaVOrMdVOpagSp1luNsztZV6iyDSp3tg0pdS6hSZxE6k7OFqtRZTCp1ToSR8DkMKnUOoUqdG3CVUjY8l0Glzg24Sp3t0e5q6z2PSaXOaweVuk6gSp3vOJsLdJU636BSF/igUtcRqtT5hM7kAqEqdT6TSl0YYSR8IYNKXUioUhcFXKWUDS9iUKmLAq5SF3i0u9p6L2ZSqYvbQaWuF6hSlzjO5lJdpS4xqNSlPqjU9YQqdQmhM7lUqEpdwqRSl0UYCV/GoFKXEarU5QFXKWXDyxlU6vKAq9SlHu2utt4rmFTqinZQqRsEqtSVjrOZp6vUlQaVmueDSt1AqFJXEjqTeUJV6komlboqwkj4KgaVuopQpa4OuEopG17NoFJXB1yl5nm0u9p6r2FSqWvaQaVuFKhS1zrO5jpdpa41qNR1PqjUjYQqdS2hM7lOqEpdy6RS10cYCV/PoFLXE6rUDQFXKWXDGxhU6oaAq9R1Hu2utt4bmVTqxnZQqZsEqtRNjrO5WVepmwwqdbMPKnUToUrdROhMbhaqUjcxqdQtEUbCtzCo1C2EKnVrwFVK2fBWBpW6NeAqdbNHu6ut9zYmlbqtHVTqZoEqdbvjbO7QVep2g0rd4YNK3UyoUrcTOpM7hKrU7UwqdWeEkfCdDCp1J6FK3RVwlVI2vItBpe4KuErd4dHuauu9m0ml7m4HlbpFoErd4zibe3WVusegUvf6oFK3EKrUPYTO5F6hKnUPk0rdF2EkfB+DSt1HqFL3B1yllA3vZ1Cp+wOuUvd6tLvaeh9gUqkH2kGlbhWoUg86zuYhXaUeNKjUQz6o1K2EKvUgoTN5SKhKPcikUg9HGAk/zKBSDxOq1CMBVyllw0cYVOqRgKvUQx7trrbeR5lU6tF2UKnbBKrUY46zeVxXqccMKvW4Dyp1G6FKPUboTB4XqlKPManUExFGwk8wqNQThCr1ZMBVStnwSQaVejLgKvW4R7urrfcpJpV6qh1U6naBKvW042ye0VXqaYNKPeODSt1OqFJPEzqTZ4Sq1NNMKvVshJHwswwq9SyhSj0XcJVSNnyOQaWeC7hKPePR7mrrfZ5JpZ5vB5W6Q6BKveA4mxd1lXrBoFIv+qBSdxCq1AuEzuRFoSr1ApNKvRRhJPwSg0q9RKhSLwdcpZQNX2ZQqZcDrlIverS72npfYVKpV9pBpe4UqFKvOs7mNV2lXjWo1Gs+qNSdhCr1KqEzeU2oSr3KpFKvRxgJv86gUq8TqtQbAVcpZcM3GFTqjYCr1Gse7a623jeZVOrNdlCpuwSq1FuOs3lbV6m3DCr1tg8qdRehSr1F6EzeFqpSbzGp1DsRRsLvMKjUO4Qq9W7AVUrZ8F0GlXo34Cr1tke7q633f0wq9b92UKm7BarUe46zeV9XqfcMKvW+Dyp1N6FKvUfoTN4XqlLvManUBxFGwh8wqNQHhCr1YcBVStnwQwaV+jDgKvW+R7urrfcjJpX6qB1U6h6BKvWx42w+0VXqY4NKfeKDSt1DqFIfEzqTT4Sq1MdMKvVphJHwpwwq9SmhSn0WcJVSNvyMQaU+C7hKfeLR7mrr/ZxJpT5vB5W6V6BKfeE4my91lfrCoFJf+qBS9xKq1BeEzuRLoSr1BZNKfRVhJPwVg0p9RahSXwdcpZQNv2ZQqa8DrlJferS72nq/YVKpb9pBpe4TqFLfOs7mO12lvjWo1Hc+qNR9hCr1LaEz+U6oSn3LpFLfRxgJf8+gUt8TqtQPAVcpZcMfGFTqh4Cr1Hce7a623h+ZVOrHdlCp+wWq1E+Os/lZV6mfDCr1sw8qdT+hSv1E6Ex+FqpSPzGp1C8RRsK/MKjUL4Qq9WvAVWrB5GVQqV8DrlI/e7S72np/Y1Kp39pBpR4QqFK/O87mD12lfjeo1B8+qNQDhCr1O6Ez+UOoSv3OpFJ/RhgJ/8mgUn8SqtRfAVcpZcO/GFTqr4Cr1B8e7a623r+ZVOrvdlCpBwWq1D+Os5mvq9Q/BpWa74NKPUioUv8QOpP5QlXqHyaV+jfCSPhfBpX6l1ClQtFgq9SCWR2lVyncbqvKjaPd8z3aXW29NVEelVL1uipVF2pypnijVqklJaiUFWNVwBpk2yFOuhP0RRgQAUQBtYDOgDrVR4AugK6AboDugB6AnoAGQC9Ab0AfQF9AP0B/wADAQMAgwGKAxQFLAAYDlgQsBRgCGBoNNVdaRaZOywsb8iKGvKghr9aQ19mQV2fIqzfkdTHkdTXkdTPkdTfk9TDk9TTkNRjyehnyehvy+hjy+hry+hny+hvyBhjyBhryBhnyFjPkLW7IW8KQN9iQt6QhbylD3hBD3tBoy1XdUOfvSOevVd3WzOlU64w7RelWiGGiulQbIyR1/WevaPV1xRx72bXV1pVotL3dubq6LNSPdl01dcWajQm7ftHrsrTxZXdZxLpS5RZj1e66aHVlDOPe7rYodWWMc8ju3va60h7z0e7R1rrSnnPb7tm2umIV/ITd0Ja60hV9jt2r9XUVFuK/7N6trSu9UF9o92ldXVYr/KrdtzV1Wa3y0Xa/hdeVbKW/t/svrK5Eq7XDHlCxrkS5DTpkD6xUV7pNmmYP8q4r00Z9tBfzqCtbbrPW2oub67IWQbftJUx1WYu0BrAHt6zLXsT1hL2kXldxkdcm9lLN64pXsc6xh6C6YuWq1kz2UMIAti1nr6zqtma8q1vrFW3Md+koI2FVuX72qlryS9N1oL0MgVErnb2yqtsW2HAZwrM4rg2XIZ4Efl1XoJu8Rd+uKyzrTLDl9DMbyzodi/OWi/JfV6DzJJa9LOEEWo64c6kHn5o0yxJORrfdywpVpCFk4yhbxHyXjzISXp5ckbLF5QkVaVjAFUnZcBi5ImWLw4Qq0hAy3tmCgS6LIq3gTLAVdUVawaBIK/qgSEMIFWkFwgm0IlPnUjkglydlm1cidGahEL1aLuM4oE7EY5AyFFiZ0JmZbGhVt9mqj1dmWMmsLHQlsxSZ/8nHMd9VooyEVyFfyeTjqxBO/lUDvpJRNlyVfCWTj6/KPPkpHOjKAXegqxHb0N2ohZdyjK9OOPf8XAEvRcY7HzPQZVkBW45jtvUVsGVYAds+rIDpFAiaSjgobabOpZ6IlG2OMa+Areo2WznH1RlWb/GAr1pVv8QFtJtrjMcJx3gi4GPca5FCsfihqitJLNh+RTtLkmlNpoz5pqKMhFPk0U6mnCLswHTAox1lwzR5tJMppwMe7ShHl4wG2xlniJ2xu1G3mXKMZ4VGO0uS8c6UDHRZop01HMc8XI921jBEO8N9iHboFMiy1yAclMOZOpd6IlK2ec2ArwSVc8wyrPpHBDzaUf0yQkC7ucb4CMIxvlbAx7jXIsWqbrMpFylrC722M5hMa2LNnvodGeUkTB7txKyRhJNgVMCjHWXDUeTRTswaFfBoRzm6taPBdsbrCIl2KMf4ukKjncFkvO2ygS5LtLOe45hH69HOeoZoZ7QP0Q6dAln2eoSDcjRT51JPRMo2rx/wlaByjusyrPo3CHi0o/plAwHt5hrjGxCO8Q0DPsa9FilWdZtNuUgZIzTaWYJMa4rNop2xUUbCY8mjnaI1lnASjAt4tKNsOI482ila4wIe7ShHNyYabGe8kZBoh3KMjxca7SxBxrvgW7QzwXHME/VoZ4Ih2pnoQ7RDp0CWPYFwUE5k6lzqiUjZ5o0DvhJUznE8w6p/k4BHO6pfNhHQbq4xvgnhGN804GPca5FiVbfZlIuUzYRGO4uTaU2q2TsxJkUZCU8ij3ZS9iTCSbB5wKMdZcPNyaOdVLN2W1VupnZTOLrNosF2xlsIiXYox/iWQqOdxcl4p3x7l8pWjmOerEc7Wxminck+RDt0CmTZWxEOyslMnUs9ESnbvHXAV4LKOW7JsOrfJuDRjuqXbQS0m2uMb0M4xrcN+Bj3WqRY1W025SJlO6HRzmJ013YymO+UKCPhKfTXdjJTCCfB1IBHO8qGU+mv7WSmBjzaUY5uu2iwnfH2QqIdyjGeExrtLEbGu5g20GWJdvKOYy7o0U7eEO0UfIh26BTIsvOEg7LA1LnUE5GyzcWArwSVc8wxrPpLAY92VL+UBLSba4yXCMd4OeBj3GuRYlW32ZSLlGlCo51BZFqTyGK+06OMhKeTRzuJ7HTCSTAj4NGOsuEM8mgnkZ0R8GhHObpp0WA74x2ERDuUY3xHodHOIDLeiYyBLku0s5PjmHfWo52dDNHOzj5EO3QKZNk7EQ7KnZk6l3oiUrZ5l4CvBJVz3JFh1T8z4NGO6peZAtrNNcZnEo7xXQM+xr0WKVZ1m025SJklNNoZSKY1+WZ3su0WZSS8G3m0k7d3I5wEuwc82lE23J082sk3a7dV5WZqN4WjmxUNtjOeLSTaoRzjewiNdgaS8c77difbno5j3kuPdvY0RDt7+RDt0CmQZe9JOCj3Yupc6olI2ea9A74SVM5xD4ZV/z4Bj3ZUv+wjoN1cY3wfwjG+b8DHuNcixapusykXKfsJjXYG0EU7Bcx3/ygj4f3po53C/oST4ICARzvKhgfQRzuFAwIe7ShHt1802M74QCHRDuUYP0hotDOAbkGcN9BliXbmOI75YD3amWOIdg72IdqhUyDLnkM4KA9m6lzqiUjZ5kMCvhJUzvEghlX/oQGPdlS/HCqg3Vxj/FDCMX5YwMe41yLFqm6zKRcphwuNdvrT3cmWx3znRhkJz6W/ky0/l3ASHBHwaEfZ8Aj6O9nyRwQ82lGO7vBosJ3xkUKiHcoxfpTQaKc/3c1OOQNdlmjnaMcxH6NHO0cbop1jfIh26BTIso8mHJTHMHUu9USkbPOxAV8JKud4FMOq/7iARzuqX44T0G6uMX4c4Rg/PuBj3GuRYlW32ZSLlBOERjv9yLQm0+wN1CdGGQmfSB7tZKwTCSfBSQGPdpQNTyKPdjLWSQGPdpSjOyEabGd8spBoh3KMnyI02ulHxjvt2xuoT3Uc82l6tHOqIdo5zYdoh06BLPtUwkF5GlPnUk9EyjafHvCVoHKOpzCs+s8IeLSj+uUMAe3mGuNnEI7xMwM+xr0WKVZ1m025SDlLaLTTlynaOTvKSPhshmjnbMJJcE7Aox1lw3MYop1zAh7tKEd3VjTYzvhcIdEO5Rg/T2i001dgtHO+45gv0KOd8w3RzgU+RDt0CmTZ5xMOyguERDuUbb4w4CtB5RzPY1j1XxTwaEf1y0UC2s01xi8iHOMXB3yMey1SrOo2m3KRconQaKcPmdbkmr2T7dIoI+FLyaOdXPZSwklwWcCjHWXDy8ijnVz2soBHO8rRXRINtjO+XEi0QznGrxAa7fQh453z7Z1sVzqOeZ4e7VxpiHbm+RDt0CmQZV9JOCjnMXUu9USkbPNVAV8JKud4BcOq/+qARzuqX64W0G6uMX414Ri/JuBj3GuRYlW32ZSLlGuFRju96aKdBOZ7XZSR8HX00U7iOsJJcH3Aox1lw+vpo53E9QGPdpSjuzYabGd8g5Boh3KM3yg02ulNtyCOG+iyRDs3OY75Zj3auckQ7dzsQ7RDp0CWfRPhoLyZqXOpJyJlm28J+EpQOccbGVb9twY82lH9cquAdnON8VsJx/htAR/jXosUq7rNplyk3C402ulFpjXFZtd27ogyEr6DPNopZu8gnAR3BjzaUTa8kzzaKWbvDHi0oxzd7dFgO+O7hEQ7lGP8bqHRTi8y3kXfru3c4zjme/Vo5x5DtHOvD9EOnQJZ9j2Eg/Jeps6lnoiUbb4v4CtB5RzvZlj13x/waEf1y/0C2s01xu8nHOMPBHyMey1SrOo2m3KR8qDQaKeBTGsKJcz3oSgj4YfIo51C6SHCSfBwwKMdZcOHyaOdQunhgEc7ytE9GA22M35ESLRDOcYfFRrtNJDxLhQNdFmincccx/y4Hu08Zoh2Hvch2qFTIMt+jHBQPs7UudQTkbLNTwR8Jaic46MMq/4nAx7tqH55UkC7ucb4k4Rj/KmAj3GvRYpV3WZTLlKeFhrt9CTTGrvZtZ1nooyEnyGPduzsM4ST4NmARzvKhs+SRzt29tmARzvK0T0dDbYzfk5ItEM5xp8XGu30JONt+3Zt5wXHMb+oRzsvGKKdF32IdugUyLJfIByULzJ1LvVEpGzzSwFfCSrn+DzDqv/lgEc7ql9eFtBurjH+MuEYfyXgY9xrkWJVt9mUi5RXhUY7Pci0Jt8s2nktykj4NfJoJ599jXASvB7waEfZ8HXyaCeffT3g0Y5ydK9Gg+2M3xAS7VCO8TeFRjs9yHjnfYt23nIc89t6tPOWIdp524doh06BLPstwkH5NlPnUk9Eyja/E/CVoHKObzKs+t8NeLSj+uVdAe3mGuPvEo7x/wV8jHstUqzqNptykfKe0GinO5nWZDKY7/tRRsLvk0c7mcz7hJPgg4BHO8qGH5BHO5nMBwGPdpSjey8abGf8oZBoh3KMfyQ02ulOxjuTNtBliXY+dhzzJ3q087Eh2vnEh2iHToEs+2PCQfkJU+dST0TKNn8a8JWgco4fMaz6Pwt4tKP65TMB7eYa458RjvHPAz7GvRYpVnWbTblI+UJotNONTGsSzaKdL6OMhL8kj3YSmS8JJ8FXAY92lA2/Io92EpmvAh7tKEf3RTTYzvhrIdEO5Rj/Rmi0042Md8K3aOdbxzF/p0c73xqine98iHboFMiyvyUclN8xdS71RKRs8/cBXwkq5/gNw6r/h4BHO6pffhDQbq4x/gPhGP8x4GPca5FiVbfZlIuUn4RGO13JtCZrY74/RxkJ/0we7WTtnwknwS8Bj3aUDX8hj3ayzdptVbmZ2k3h6H6KBtsZ/yok2qEc478JjXa6kvHOWga6LNHO745j/kOPdn43RDt/+BDt0CmQZf9OOCj/YOpc6olI2eY/A74SVM7xN4ZV/18Bj3ZUv/wloN1cY/wvwjH+d8DHuNcixapusykXKf8IjXa6kGlN2sJ850cZCc8nj3bS1nzCSfBvwKMdZcN/yaOdtPVvwKMd5ej+iQbbGauZT9XPIbRRt5lyjNcQttnPaKcL2XhPlQ10WaKdTrX//Q27CuNGNmqHHu2oQtzRDp0CWXanWrpBGa7l6VzqiUjZ5gix86GecMo51tTSC0O0lle4rOo2W/VLVEC7ucZ4lHCM1wZ8jHstUqzqNptykdKZcNz4Ge3Uk2lNvtkbqOtqGQmrymmjnXypjnAS1BNOTi4b1tdSRzv5Uj2zaFA4us61wXbGXYREO5RjvKvQaKeeLNrJ+/YG6m6OY+6uRzvdDNFOdx+inXrCaKcb4aDsXsvTudQTkbLNPQK+ElTOsSvDqr9nwKMd1S89BbSba4z3JBzjDQEf416LFKu6zaZcpPQSGu3UkWlNrNm1nd61jIR7k0c7Mas34SToE/BoR9mwD3m0E7P6BDzaUY6uV22wnXFfIdEO5RjvJzTaqSOLduyygS5LtNPfccwD9GinvyHaGeBDtFNHGO30JxyUA2p5Opd6IlK2eWDAV4LKOfZjWPUPCni0o/plkIB2c43xQYRjfLGAj3GvRYpV3WZTLlIWFxrtdKbTmgLmu0QtI+ElyKMdq7AE4SQYHPBoR9lwMHm0YxUGBzzaUY5u8dpgO+MlhUQ7lGN8KaHRTme6OzfzBros0c4QxzEP1aOdIYZoZ6gP0Q6hAtlDCAfl0FqezqWeiJRtXjrgK0HlHJdiWPUvE/BoR/XLMgLazTXGlyEc48sGfIx7LVKs6jabcpGynNBop5ZMa1LN7mRbvpaR8PLk0U6qtDzhJBgW8GhH2XAYebSTKg0LeLSjHN1ytcF2xisIiXYox/iKQqOdWrrndny7k20lxzGvrEc7KxminZV9iHZqCaOdlQgH5cq1PJ1LPREp27xKwFeCyjmuyLDqXzXg0Y7ql1UFtJtrjK9KOMZXC/gY91qkWNVtNuUiZXWh0U6UTGvsZu9ks2oZCVvk0Y5tW4STwA54tKNsaJNHO3azdltVbqZ2Uzi61WuD7YxjQqIdyjEeFxrtROnuZPPtnWwJxzEn9WgnYYh2kj5EO1HCaCdBOCiTtTydSz0RKducCvhKUDnHOMOqPx3waEf1S1pAu7nGeJpwjGcCPsa9FilWdZtNuUjJCo12IoSv0cJ816hlJLxGLX29wwMeoah2D69tMjBRvSxRhXIo2dpgO701hUQVlONyBLOjp+iTEQxj3E+HGmZyqGvVMhJei8Ghrh1wh6ravXaHQyWra6QQh0o5LkcF3KGqPhkl3KF2onz5J+K5Ti0j4XUYJus6hINt3YA7Z2XDdRnC+3UDfj5egqNfT4ijpxzjowN+ikT1yWiG+bJ+wE8DKj+xPtMijmtcrk84LjcI+Lj08mdWdZtN6c82DPgYV328IUOARjkO1YIwHGq6FLbg0ahQ842a/1CGz6dQcxwigONSAjguKYDjYAEclxDAcXEBHBcTwHGQAI4DBXAcIIBjfwEc+wng2FcAxz4COPYWwLGXAI4NAjj2FMCxhwCO3QVw7CaAY1cBHLsI4FgvgGOdAI6dBXCsFcAxKoBjRADHsACOnRg44o2m7hhj3U3PKCjbNjjpMXDOdixgHGAjwHjABMBEwMaATQCbAjYDTAJsDtgCsCVgK+c6yWT9OQdV6RAtb6whb5whbyND3nhD3gRD3kRD3saGvMm1LU8mUz9zQXai1rasoYR3LGxNeHEC23Rrg01JL9LYzblXa4dtmOywjQ9ji/AEu70NoU23ZbLptj6MrW0J7bAdkx2282FsEV4YsbcjtOkUJptO4R5bYIcxAbUD5zhaglD/BhPq31SmcTTVBx81lXAcbc9kh+198FGEF/Ts7QltmmOyac6HsZUjtEOeyQ55H8YW4YVYO09o0wKTTQs+6N/YgNqBcxwNJNS/QYT6V2QaR0UffFSRcByVmOxQ8sFHEd5AYJcIbVpmsmnZh7FVJrTDNCY7TPNhbBHe+GFPI7TpdCabTvdB/8YF1A6c46gvof71I9S/GUzjaIYPPmoG4TjagckOO/jgowhvWLJ3ILTpjkw23dGHsbUjoR12YrLDTj6MLcIbzeydCG26M5NNd/ZB/zYKqB04x1EDof71ItS/XZjG0S4++KhdCMfRTCY7zPTBRxHeIGnPJLTprkw23dWHsbUroR1mMdlhlg9ji/DGVnsWoU13Y7Lpbj7o3/iA2oFzHHUj1L/uhPq3O9M42t0HH7U74TiazWSH2T74KMIbsu3ZhDbdg8mme/gwtvYgtMOeTHbY04exRXgjvb0noU33YrLpXj7o34SA2oFzHNUR6l89of7tzTSO9vbBR+1NOI72YbLDPj74KMIHQOx9CG26L5NN9/VhbO1LaIf9mOywnw9ji/DBHXs/Qpvuz2TT/X3Qv4kBtQPnOIoQ6l+UUP8OYBpHB/jgow4gHEcHMtnhQB98FOEDZ/aBhDY9iMmmB/kwtg4itMMcJjvM8WFsET4oaM8htOnBTDY92Af92zigdsBtriFu8yZCeG4qhOdmQnhOEsJzcyE8txDCc0shPLci5Kle0um+qNPl2hBqvlHzH8NgZ2qOYwVwHCeA40YCOI4XwHGCAI4TBXDcmMnHU3DMMNXLxbej3v9b9dLVHbMZ6278YgteqxwC8/pQwGGAwwFzAUcAjgQcBTgacAzgWMBxgOMBJwBOBJxUG2r+cplDalu+cOZQQ95hhrzDDXlzDXlHGPKONOQdZcg70ZB3kpPn55edj64N+GC0//uDbXFy7X9/T9E7Xe3g/orz0QRnUUr/nUaxTyY8I3OKkMhHCs9jhPA8VgjP44TwPF4IzxOE8KTwl2mnLsxTPzterf8kPKNhH8LUN9RtJjxDYh8qpM2EZ1zsw4S0mfAMjn24kDYTnhGy5wppM+EZJvsIIW0mPGNlHymkzYRnwOyjfGqztWib7SZOJIyVTmW6io/rJbaDu9knEfb9qSSxrNqar81qiMf76QRtNp2ZpeZ5BgHPVM7KllKpNCfPMwl45vOpdK6USXLyPIuAZ7yQKpXj6Rgnz7MJeOaSiXI5Gc9x8jyHgGfStkrJWLrMyfNcAp7ZvJVMZTIFTp7nEfC0y5l4MZvLc/I8n6Lf8yWrULSzilufUMs3zOM3y+M3yuM3yeM3yOM3x+M3xuM3xZ+O0j3Di57GJ9tPQukzUPpMlD4Lpc9G6XNQ+lyUPg+lz3fSF8DfCwEXAS4GXAK4FHAZ4PLa/07yq3PV4VDLjfoczAVBP8n/35Zgq9u2ml1xijjpK8AuVwLmAa7SLyZc4VxMwHlXGvLmGfKuqm15ISJKa6xmnVqtg7iCcCF4JVFdqo3zCC+2XEV8y5Vfk/fCjslrnLxXg12uAVwLuE6fvFcbJuU1hrxrDXnX+TB5LyScvFcTTt5rCCfvtYST9zqhk/eijslrnLzXg11uANwIuEmfvNcbJuUNhrwbDXk3+TB5LyKcvNcTTt4bCCfvjYST9yahk/fijslrnLw3g11uAdwKuE2fvDcbJuUthrxbDXm3+TB5LyacvDcTTt5bCCfvrYST9zahk/eSjslrnLy3g13uANwJuEufvLcbJuUdhrw7DXl3+TB5LyGcvLcTTt47CCfvnYST9y6hk/fSjslrnLx3g13uAdwLuE+fvHcbJuU9hrx7DXn3+TB5LyWcvHcTTt57CCfvvYST9z6hk/eyjslrnLz3g10eADwIeEifvPcbJuUDhrwHDXkP+TB5LyOcvPcTTt4HCCfvg4ST9yGhk/fyjslrnLwPg10eATwKeEyfvA8bJuUjhrxHDXmP+TB5LyecvA8TTt5HCCfvo4ST9zHCSaD6uLPT10uHm/p/GZReFqWXQ+nlUXoYSq+A0iui9EoovTJKr4LSq6L0aii9OkpbKG2jdAyl4yidQOkkSqdQOo3SGZTOovQaKD0cpddE6REovRZKr43SI1F6FEqvg9LrovR6KD0apddH6Q1QekOUHoPSY1F6HEpvhNLjUXoCSk9E6Y1RehOU3hSlN0PpSSi9OUpvgdJbovRWKD0ZpbdG6W1QeluU3g6lp6D0VJTeHqVzKP0wSj+B0s+i9Eso/TpKv4PSH6D0pyj9FUp/j9K/oPSfKP0vSkciTel6lO6B0n1QeiBKD0bppVF6GEqvgtI2SqdQejhKj0Tp0Sg9FqUnovQklJ6M0lNQuoDS01F6Z5TeDaX3Qun9UfpglJ6L0seg9IkofRpKn43SF6D0pSg9D6WvQ+mbUfoOlL4XpR9C6cdR+hmUfhGlX0Ppt1H6fZT+BKW/ROnvUPpnlP4Dpeej9FVI//FtI/i2EnzbyXUoja9U4yvZ+Er3TSiNL47hi2f44tptKI3Px+Pz9fh8/l0ojU8B4lOE+BTifSiNzzrgsxL4rMVDKI0DHRwI4UDpMZTGayu89nLXZo+rRRvaapy/I52/VnWb/TjhGkstOtUasFPIe6PiXYNsQX2MRLqYKxTTcWPl1A9FUBplxRBPFETd5hrCNq8kpM2dCNu8MlObqZ3LKsTzxKtvrOo2e1VCnr3CMvpmNVRXLJlLFkrJdCEdzxRypXgmH08XU4lcJlXKx4uWVUzmyyUrniul7FQ8Fs/Fi9m4lU0kS7lUycrGcpw8Vw/JsKclhKcthGeMmCe1z5gF83yPMJ3fUHUdEKbnGQ/RcZwV9kdrreo2O0HY5n5C/HkyJINnSgjPtBCeGSE8s0J4riGE53AhPNcUwnOEEJ5rCeG5thCeI4XwHCWE5zpCeK4rhOd6QniOFsJzfSE8NxDCc0MhPMcI4TlWCM9xQnhuJITneCE8JwjhOVEIz42F8NxECM9NhfDcTAjPSUJ4bi6E5xZCeG4phOdWQnhOFsJzayE8txHCc1shPLcTwnOKEJ5ThfDcXgjPnBCeeSE8C0J4FoXwLAnhWRbCc5oQntOF8JwhhOcOQnjuKITnTkJ47iyE5y5CeM4UwnNXITxnCeG5mxCeuwvhOVsIzz2E8NxTCM+9hPDcWwjPfYTw3FcIz/2E8NxfCM8DhPA8UAjPg4TwnCOE58FCeB4ihOehQngeJoTn4UJ4zhXC8wghPI8UwvMoITyPFsLzGCE8jxXC8zghPI8XwvMEITxPFMLzJCE8TxbC8xQhPE8VwvM0ITxPF8LzDCE8zxTC8ywhPM8WwvMcITzPFcLzPCE8zxfC8wIhPC8UwvMiITwvFsLzEiE8LxXC8zIhPC8XwvMKITyvFMJznhCeVwnhebUQntcI4XmtEJ7XCeF5vRCeNwjheaMQnjcJ4XmzEJ63COF5qxCetwnhebsQnncI4XmnEJ53CeF5txCe9wjhea8QnvcJ4Xm/EJ4PCOH5oBCeDwnh+bAQno8I4fmoEJ6PCeH5uBCeTwjh+aQQnk8J4fm0EJ7PCOH5rBCezwnh+bwQni8I4fmiEJ4vCeH5shCerwjh+aoQnq8J4fm6EJ5vCOH5phCebwnh+bYQnu8I4fmuEJ7/E8LzPSE83xfC8wMhPD8UwvMjITw/FsLzEyE8PxXC8zMhPD8XwvMLITy/FMLzKyE8vxbC8xshPL8VwvM7ITy/F8LzByE8fxTC8ychPH8WwvMXITx/FcLzNyE8fxfC8w8hPP8UwvMvITz/FsLzHyE85wvh+a8QnqpCCTxrhPDsJIRnWAjPiBCeUSE8a4Xw7CyEZ50QnvVCeHYRwrOrEJ7dhPDsLoRnDyE8ewrh2SCEZy8hPHsL4dlHCM++Qnj2E8KzvxCeA4TwHCiE5yAhPBcTwnNxITyXEMJzsBCeSwrhuZQQnkOE8BwqhOfSQnguI4TnskJ4LieE5/JCeA4TwnMFITxXFMJzJSE8VxbCcxUhPFcVwnM1ITxXF8LTEsLTFsIzJoRnXAjPhBCeSSE8U0J4poXwzAjhmRXCcw0hPIcL4bmmEJ4jhPBcSwjPtYXwHCmE5yghPNcRwnNdITzXE8JztBCe6wvhuYEQnhsK4TlGCM+xQniOE8JzIyE8xwvhOUEIz4lCeG4shOcmQnhuKoTnZkJ4ThLCc3MhPLcQwnNLITy3EsJzshCeWwvhuY0QntsK4bmdEJ5ThPCcKoTn9kJ45oTwzAvhWRDCsyiEZ0kIz7IQntOE8JwuhOcMITx3EMJzRyE8dxLCc2chPHcRwnOmEJ67CuE5SwjP3YTw3F0Iz9lCeO4hhOeeQnjuJYTn3kJ47iOE575CeO4nhOf+QngeIITngUJ4HiSE5xwhPA8WwvMQITwPFcLzMCE8DxfCc64QnkcI4XmkEJ5HCeF5tBCexwjheawQnscJ4Xm8EJ4nCOF5ohCeJwnhebIQnqcI4XmqEJ6nCeF5uhCeZwjheaYQnmcJ4Xm2EJ7nCOF5rhCe5wnheb4QnhcI4XmhEJ4XCeF5sRCelwjheakQnpcJ4Xm5EJ5XCOF5pRCe84TwvEoIz6uF8LxGCM9rhfC8TgjP64XwvEEIzxuF8LxJCM+bhfC8RQjPW4XwvE0Iz9uF8LxDCM87hfC8SwjPu4XwvEcIz3uF8LxPCM/7hfB8QAjPB4XwfEgIz4eF8HxECM9HhfB8TAjPx4XwfEIIzyeF8HxKCM+nhfB8RgjPZ4XwfE4Iz+eF8HxBCM8XhfB8SQjPl4XwfEUIz1eF8HxNCM/XhfB8QwjPN4XwfEsIz7eF8HxHCM93hfD8nxCe7wnh+b4Qnh8I4fmhEJ4fCeH5sRCenwjh+akQnp8J4fm5EJ5fCOH5pRCeXwnh+bUQnt8I4fmtEJ7fCeH5vRCePwjh+aMQnj8J4fmzEJ6/COH5qxCevwnh+bsQnn8I4fmnEJ5/CeH5txCe/wjhOV8Iz3+F8Ax1ksGzRgjPTkJ4hoXwjAjhGRXCs1YIz85CeNYJ4VkvhGcXITy7CuHZTQjP7kJ49hDCs6cQng1CePYSwrO3EJ59hPDsK4RnPyE8+wvhOUAIz4FCeA4SwnMxITwXF8JzCSE8BwvhuaQQnksJ4TlECM+hQnguLYTnMkJ4LiuE53JCeC4vhOcwITxXEMJzRSE8VxLCc2UhPFcRwnNVITxXE8JzdSE8LSE8bSE8Y0J4xoXwTAjhmRTCMyWEZ1oIz4wQnlkhPNcQwnO4EJ5rCuE5QgjPtYTwXFsIz5FCeI4SwnMdITzXFcJzPSE8Rwvhub4QnhsI4bmhEJ5jhPAcK4TnOCE8NxLCc7wQnhOE8JwohOfGQnhuIoTnpkJ4biaE5yQhPDcXwnMLITy3FMJzKyE8JwvhubUQntsI4bmtEJ7bCeE5RQjPqUJ4bi+EZ04Iz7wQngUhPItCeJaE8CwL4TlNCM/pQnjOEMJzByE8dxTCcychPHcWwnMXITxnCuG5qxCes4Tw3E0Iz92F8JwthOceQnjuKYTnXkJ47i2E5z5CeO4rhOd+QnjuL4TnAUJ4HiiE50FCeM4RwvNgITwPEcLzUCE8DxPC83AhPOcK4XmEEJ5HCuF5lBCeRwvheYwQnscK4XmcEJ7HC+F5ghCeJwrheZIQnicL4XmKEJ6nCuF5mhCepwvheYYQnmcK4XmWEJ5nC+F5jhCe5wrheZ4QnucL4XmBEJ4XCuF5kRCeFwvheYkQnpcK4XmZEJ6XC+F5hRCeVwrhOU8Iz6uE8LxaCM9rhPC8VgjP64TwvF4IzxuE8LxRCM+bhPC8WQjPW4TwvFUIz9uE8LxdCM87hPC8UwjPu4TwvFsIz3uE8LxXCM/7hPC8XwjPB4TwfFAIz4eE8HxYCM9HhPB8VAjPx4TwfFwIzyeE8HxSCM+nhPB8WgjPZ4TwfFYIz+eE8HxeCM8XhPB8UQjPl4TwfFkIz1eE8HxVCM/XhPB8XQjPN4TwfFMIz7eE8HxbCM93hPB8VwjP/wnh+Z4Qnu8L4fmBEJ4fCuH5kRCeHwvh+YkQnp8K4fmZEJ6fM/HspPGMW6lEopSOley4nbNi2XwmaSWS+VTGztjJTLIYy8TjpUwik87ms2krayfiJbuczMbLTt3DCNv8hU9ttqrb7C870dnv4LCMfo4Q2u8rIWM7Stjmr4W0uZawzd8IaXNnwjZ/K6TNdYRt/k5Im+sJ2/y9kDZ3IWzzD0La3JWwzT8KaXM3wjb/JKTN3Qnb/LOQNvcgbPMvQtrck7DNvwppcwNhm38T0uZehG3+XUibexO2+Q8hbe5D2OY/hbS5L2Gb/xLS5n6Ebf5bSJv7E7b5HyFtHkDY5vlC2jyQsM3/CmnzIMI2h4Sc91yMsM01Qtq8OGGbOwlp8xKEbQ4LafNgwjZHhLR5ScI2R4W0eSnCNtcKafMQwjZ3FtLmoYRtrhPS5qUJ21wvpM3LELa5i5A2L0vY5q5C2rwcYZu7CWnz8oRt7k7YZqhqwT0+nzgNXhGwEmBlwCqAVQGrAVZXxwLYgJiyByABSAJSgDQgA8gC1gAMB6wJGAFYC7C20/5RgHUA6wLWA4wGrA/YALAhYAxgLGAcYCPAeMAEwETAxoBNAJsCNgNMAmwO2AKwJWArwGTA1oBtANsCtgNMAUwFbA/IAfKAAqAIKAHKgGmA6YAZgB0AOwJ2AuwM2AUwE7ArYBZgN8DugNmAPQB7AvYC7A3YB7AvYD/A/oADAAcCDgLMARwMOARwKOAwwOGAuYAjAEcCjgIcDTgGcCzgOMDxgBMAJwJOApwMOAVwKuA0wOmAMwBnAs4CnA04B3Au4DzA+YALABcCLgJcDLgEcCngMsDlgCsAVwLmAa4CXA24BnAt4DrA9YAbADcCbgLcDLgFcCvgNsDtgDsAdwLuAtwNuAdwL+A+wP2ABwAPAh4CPAx4BPAo4DHA44AnAE8CngI8DXgG8CzgOcDzgBcALwJeArwMeAXwKuA1wOuANwBvAt4CvA14B/Au4H+A9wDvAz4AfAj4CPAx4BPAp4DPAJ8DvgB8CfgK8DXgG8C3gO8A3wN+APwI+AnwM+AXwK+A3wC/A/4A/An4C/A34B/AfMC/ADXRagCdAGFABBAF1AI6A+oA9YAugK6AboDugB6AnoAGQC9Ab0AfQF9AP0B/wADAQMAgwGKAxQFLAAYDlgQsBRgCGApYGrAMYFnAcoDlAcMAKwBWBKwEWBmwCmBVwGqA1QEWwAbEAHFAApAEpABpQAaQBawBGA5YEzACsBZgbcBIwCjAOoB1AesBRgPWB2wA2BAwBjAWMA6wEWA8YAJgImBjwCaATQGbASYBNgdsAdgSsBVgMmBrwDaAbQHbAaYApgK2B+QAeUABUASUAGXANMB0wAzADoAdATsBdgbsApgJ2BUwC7AbYHfAbMAegD0BewH2BuwD2BewH2B/wAGAAwEHAeYADgYcAjgUcBjgcMBcwBGAIwFHAY4GHAM4FnAc4HjACYATAScBTgacAjgVcBrgdMAZgDMBZwHOBpwDOBdwHuB8wAWACwEXAS4GXAK4FHAZ4HLAFYArAfMAVwGuBlwDuBZwHeB6wA2AGwE3AW4G3AK4FXAb4HbAHYA7AXcB7gbcA7gXcB/gfsADgAcBDwEeBjwCeBTwGOBxwBOAJwFPAZ4GPAN4FvAc4HnAC4AXAS8BXga8AngV8BrgdcAbgDcBbwHeBrwDeBfwP8B7gPcBHwA+BHwE+BjwCeBTwGeAzwFfAL4EfAX4GvAN4FvAd4DvAT8AfgT8BPgZ8AvgV8BvgN8BfwD+BPwF+BvwD2A+4F+AWlTUADoBwoAIIAqoBXQG1AHqAV0AXQHdAN0BPQA9AQ2AXoDegD6AvoB+gP6AAYCBgEGAxQCLA5YADAYsCVgKMAQwFLA0YBnAsoDlAMsDhgFWAKwIWAmwMmAVwKqA1QCrAyyADYgB4oAEIAlIAdKADCALWAMwHLAmYARgLcDagJGAUYB1AOsC1gOMBqwP2ACwIWAMYCxgHGAjwHjABMBEwMaATQCbAjYDTAJsDtgCsCVgK8BkwNaAbQDbArYDTAFMBWwPyAHygAKgCCgByoBpgOmAGYAdAOp79epb8Oo76+ob5ur74Orb2+q71uqb0ep7zOpbx+o7wuobver7t+rbsuq7reqbqOp7o+pbnuo7meoblOr7jnMA6ruE6pt/6nt66lt16jtw6htr6vtl6ttg6rtb6ptW6ntR6ltM6jtH6htC6vs86ts36rsy6pst6nso6lsj6jse6hsZ6vsT6tsO6rsJ6psE6n3/6l366j316h3w6v3qFwLUe8HVO7fV+6zVu6LVe5jVO47V+4PVu3nVe2/VO2XV+1rVu1DVe0bVOzzV+zHVuyfVex3VOxPV+wjVu/7Ue/TUO+rU+9/Uu9XUe8vUO8HU+7bUu6zUe6LUO5jU+40eAKj38qh33qj3yah3taj3oKh3jKj3d6h3Y6j3Tqh3Oqj3Jah3Eajn/NUz9Or5dPXst3quWj2zrJ4HVs/aqudY1TOi6vlL9Wyjem5QPZOnnndTz5Kp57TUM1Dq+aL3Aeq5GPXMiXqeQz0roda96h5/df+8ujdd3aut7oNW9/Kqe1vVvZ7q3kd1L6C6N07dK6bunVL3Eql7a9S9JureC3Uvgro2r65Vq2u36lqmuranrnWpaz/qWoi6NqDOlatzx+pcqjq3qM61qXNP6lyMOjehYnUVu6pYTsU2aq3f6b+lQ0jdq6y2FUNNm+NWVNUL9qt7e9W9rureT3UvpLo3UN0rp+4dU/dSqXuL1L026t4TdS+GujdBXatX167VtVx1bVNd61PXvtS1IHVtRF0rUOfO1blkdW5VnWtU596GAIYClgao2F3Fsiq2U7GOun9+hVDLbXWU7uX87ffxqEGznrpiNC7X2/n7WHLXg2YObbZrwdpebe9Pqr/ipvmTpuJ92zp/f+tdN+L1ra8agPfNqnC8QyLe+w5z9j196vOPXXlkroj3za3wuyMr/O7oCr87rsK+EyrUeVKF351S4XenVfjdmRX2nV2hznMr/O78Cr+7sMLvLqmw77IKdV5R4XfzKvzu6gq/u67Cvhsq1HlThd/dUuF3t1X43Z0V9t1doc57K/zu/gq/e7DC7x6psO+xCnU+UeF3T1X43TMVfvd8hX0vVqjz5Qq/e7XC716v8Lt/K/xuzeh/f28fedHFK1513Hpufr3zV+k4/r/z3wW+X/n9kc7/reo2ux7VS11/xsol6kPNN2L+8fpQkx5y2cetk6H+Bc9rqG3KnKb69baorbvz/xpkS/c3SvOXCjWlh6Pf1zh57hY21OMez21rPUNbM1ay7NbfhaF+y4otuId6QRvnNNVfh+yntgjaV6/ti6J9XZA9N+u0cHt28t2eafH2dMtdMKc5f7zvQrQvou27CO2LavsuRvtqtX2XoH3u/KvX2sc19jnGggVXJfoY+Nejtqlt3Tmhxq3a4ybSxVyhmI67da83h6NdsYJb/2ie+ktu/etXbxtbz3Dr3oCFe6Kx/g1Z6o9n3PrHsNRvNY6dsaj+mhD92mYcD//Gtc1GLPXbjf07nod/49ifgOoneDa6cR649U9E9Yfo+DfWv7FTP647biViqVIqkSuV4lYpm80U7HghUyiVCsVcPJdOg34W86VcMRnLF2LleL5slXKlTNLOJ/Jp2yo0jp1NDHXbcD04mcpZqUw5ZcWtWDyWsArZVD5RzCUT6UQqBVXH85m0bReSMbuQTmRidixnJ/MFK54o5VJu3Zsa6o5lYslCOlsopHLJQj5fKpXTxVQuU7bzqZwdy8eholw8nkkkrFypXMon4tmUncgUMnD1OV2wElm37s1MvOESdrloK5b5tJWKFVP5pLrAXYqn8lkrHU/Fk1Y5Vc7nLDsWyxQSQD1mZbNJK1tOpi27cbxMMtRtlYp5uxTLxgvxQilr58tApgTJXC5pFWOFZMIu57JFuEgOdQJtK14q5+1CORcr5OPx5H9rGbVtbuIdT9jFVDpZzoG1S4VSHDoAei5eyMUT0J543s7mU6VsOhWzEqk05CXAJLFEIQGWK5biSbfuLYy8rWKuGIslrWQmXo7lsmUrV8gD92KpWLah1XDRP2/FoV25UjoZL4O17EQ+k8mVM3Yhn4y5dW9pqjubjudBw5KFXK4Qj2dLpQTQLubySTsey2ZjVjmdX9CxFlQK2aVksZxKg2PPxy0rm2qseytD3TBm44lYKQvTGHoK+MQy2bidy5VSmWwa+jJTLhZSwLIIfWJbxVI6H49ZBQvGKSzsMumiW/dkk73z5WwyA7+PgyWyxWQ2FrdgoOesWCoLkyRVTJWzsUQWhnsskYDa40m7DF0SK5ahSQWrUTe2NtkkAWMrDoM1n8pYGRgbhUyslMklk7lsMlZMqCpiyVS5ZCWz8WI2kYVsGIc5y4J+AWM19uU2prpzGTW6UlbRgn/KyWIGFkaJbDGRKYM7SBQtmCpWPpspFdN2OpfNJ+OxXDkVh9mejFvpbOOc39apm9Tf2k3+ajsT94X+uvKmzvWqtd8UdN5AjyUJtdXqHmq+XnePgY8dCTHY0YrZNdrxQqHm8XlIO36XEGsMb9dox3P56PbR48Ioj32sGq1+zCdqsI/bl7WGfW5dbpwURXXh8lHURlwep93f47xxzt8GQ5362K0NtWwPznPLqzz3RFzPkHks4npN/RYx1Ntg+L1brt7wu5HOX6vKjXe8NM1lbEt9LnfmOXa2tXPZPX6XUMtxwjGXO2t8vMaaa7s6A9cGbZ/a8FrY61xSneE4DSHz+Ykg1hXpqKtNdeFzV/rY0+chx/kpGPaZ1s5D9/hdQqx+wa5k184Gu/KeX7PTNVr9mE+9wT5uX3Yx7HPr6ur8H2sqLo+v/eDyOO3+Huft7vxtMNSpj9suoZbtwXlYU3fW2oa1rsbjr1uvnufW2yVk1ueRzv+t6raK48ik8T1D9HMd/14fH/h31dqQxzc02bC+le3uGWo5L3QbVppHuC6TDesrHKe2yuPUGo7T3fC7Re2rhgqcu6H83ffZpTBh5uzS7qGFbD0NxLFTxvtccnqeTq6zgVy94TiUDpb3YlbTIO5qsIXJEbjlu7WxfPc2lu9hKF9XoXzPNtbf0MbyvdpYvncby/dpY/m+hvKmBYA7SfuhffriqT/Kb4/Fk3v8LhpXrrHeP9TSdv0MtlNj3B1z00qzF/gdzBvXNcDQLtxuXAaPPb1cTahlX3fV6jHNQZzf3SO/h0d+T4/8Bo/8Xh75vT3y+4Rabtinuf+PamXcC2Dufl3E3DlgsqvOwWRnzv+HfDwWBVd3rpnSNVp+pbHt6i4ew/20ujqh31W6UaTB8Ht9bphOUpnmslvepPl4ERWt0I5a7XdeJ+XCHnWbjo1/py/2K3Gu1MZKJ2nwvDOdBOys7dPXNaGF8Kq0fsK/r/WoCwd9+MSeHtAy3diWZD6xF+M9YWGl3PpxUByiq7/xxr9uPPzTUW083OL8Vf8/vqb5mDGtESvNC9MasQcqo4/97mhfz1bUVenYpvUmrsO9maSngVeD9rsGtA+XCxvq9jp2D4+2hRfCuVIbTWtkXMc4rY34uL1aUVelY5vW27hOPQjHNuzdiroqHdu0dsd11mnHxrz6tKKuSsc2xQG4zm7asTEv97f1ht8RzumMy7W16263/ABDeRyr9NHa1hft09cjetvwcUw272PgZdIxt1x3w+9qPP6GQqFWnQwxcXbb0y/k3Z5+hvb0a2V7+mnt6UfYHhNn5hg07baj2dNPWhsHomNjn6RvYe3/mLea40XtBt6QoS79BgF8fJNf1PvWpDs4r1LfuuXqPY4z0vm/VdVml00Xzt21nMr7VGuTa0Ovi+g90X5cPtOpqc4vQs1tiH/fR2v3AJ52Z/TxhDd33yB0bKxB+mYaay5vNdZ2a8NYw3MLH39hPlZtuk8eaCiP7en2lUlnByJeC34/p2kfPp+qtgjaR3mTjLLdnE5m+6gtOscf+zSEWvqeBm0f9v/9kX10uxKO4ZTJJu7W3dAevJbRN9MYdnm31V/i+axrO7aFHlea1rA4r9KFjgaNA/al2J/V1ZiPif2ZyQ9HtfKDkT/rWtO8jSaNDtpYwGtLfVvYWNityrHg2t4UN5jOSdRonHF5PKYr+bPeiNeC389p2ofXN2qLaPtGOvlWVZvZn+H26v6Myz4NoZZjQPdneP3nHtM0vvV1Pfd6yHSc2iqPU9vK4/xfa49+EVr3TZhDW30z/n1DheNwaMD/tfaYfBaOD9QWQfsIzwdkTT4L82+NzzK1t7U+K6rZB/usrsgG+u84zom4x/a62akX2o/Lr+sIo7Ll6Zp24j5tQO1RW2QOS3uMfYr9SWv61OR/Wtunrs1Mfaqfa+BZLzX1Ke4z/do8Pn5UKz+hlX3anvMUr+P0PjX5JVy+LeeLsc0aQi37W7//hudcRlOf6mt6teEHQL3W9JNb2af+rBfNfVppvWhaJ1RaL7b2OkdDqGV/6+ej26NP8UOxXn1abGWf+nNOo+3z1NSnlebpwvrUtZmpT/UHQZgeUMjobcO+13QNP6qVnylgnuJ7HfQ+rXRfQyjUumuhpvsZGkIt52J3ZAM/+rTxxRmIK75+rvepW37fVvYpHqNqi8xhaU+b56mpTyvNU9M9lrhvXJs1aOXd37s2wDbh6lPT/R74noII2o/LHy5gnrq2XMB/TnMbm+5XwuXber+SazNTrNdD21ev1R0KNb+voqe2z/Qbav76/VY4JvbnHuumMem21SsW0/2MW/50w5is1P5K9jLdmN/ae7f0cy+VHlxt671bpvvYeB8uauoXt81e8RTuN1z+wgr9YrJzpX4xPRCE213pvjm9z0zPEdRo+0KGtmJepvmuv7TJ735RG46JvPrlKp/6BfMx2b6LZi+mZyw81zFqw/EGticuf2MFe5naX8lepjUCrkO/RwuPIX3d153ZXj00e9Vo7cH2xOXvqGAvU/sr2ct0jyFut35fGR5DPQJgr7pW2Ot+H+2l3wvXKWD26tYKez3mo730+/fqKtirRqt7JIm90gnTPb909aeSpv4mrL/xnuUePPWXTOerCOtPm85b09Ufs0zXOgj5F9z6e7PUn0iZ7l8l5N/4ksq+PPU3zq9+PPVnTfdxuL6C+Z64ZI12vFCoeYwX0o7fReNK7PsbnwFs7X1dpntE8fNm+j59jJvuBxtoOI6pru6EdfUjrKsXYV3dCOvqS1hXA2FdNYR19QloG3sS1kU5JihtT2kvyrlNyasHYV2UY5WyH93x5a7rXT3q6/zItJ4m1MTG+yrx89u6HndnOnaNdrxQyKzH7vG7G/i4vLsY9lXzotxstlRKxso520rGU/FSokar3+Wq57UmpjJpO/NzEAnTdYkeyK5qi6B93bV9UbTP5YhfFG+Kayj5t8b++Pim60r4Gd629GXvkFkLXPuoNH7GVV+v4eN20fbh8d5Z24fPD+ovJTJdRzbdk9xV24fnlf5ySdP5e/V7032A+hrOdP9M2NBut7w7B2o9yuv3mrnll3Yaruxxljb2eOKGppd1DkScTPd9DdA4u+WXR5z1czSmtX+le1oW9kyHy6enZjf82/a0V7gV9lrVYK/2u5/QfF87Hu/YN3r1KS7f1j51bWZaP/TX9uF5qcdGle6JW5hvcn+LnzExjTF9nVVpfJv8wkB0HFN5rzEzooJfwM+ZcYzzxRAnU/8N0ji75UdV8Avub7DdKt1vsZih/CCD3XqGWo4h97ftaa/aVthrw1b6Bfx8mtoic1jaY/QLeLzrfsHUp7h8W/vUtVmDVh73r+n5Pf05JdOz8KY5alpfYB3/FOWrrfOc5vUu+IvyXPu4fViHy2v76tG+yJzmx+ni/D+CjoPrcnlEtfLbOQZ317O16Dfu7xsMx6/Vjt+MtyEP96teV9iQ55ZXNt3C+Y9ah3GO53TGslx+ru3xtWG8RdB+XL7gcMU+3f1bTSxWTufscjxXziVzxWKikDM92+fazOsl+3pcuahc9E1fj+NjBPUl+51Y+FR+yX4nQ19xv2RfrX9c/4dthD8eYbr/C48X031oup+uMbTXNDYbPH6vtu4VjtMxppvndYzp/xtj2qS7eB2nNle7sbbj8m59Ua38Yc4OpaFztbVi1HA8Ve60CuVqPP4uqMOQF5nTPM+k+Xgt5JZ3j91lTkuO7r6uaB9eY6qtm/N/bC9cl8sjqpU/WVsL4fWL+/sGw/HrtOM3423I09dCXQ3luxrKq/45Rltf4LZTz/kFx9Tqx3k6t9PQOo16/VPKqM9ylUs527ZjRau0sPUP9fETyVy6kEvbdjZhlxJ2cmHHX8tJ12v7qPup3tBOqvozzr06eCPm3/Fh5NB/6xr3nL1Kr4R+o7apqO4abd/2huNythl/JJbpmZRYHwN//Zmgjo/Etqi/4yOxnlvHR2IXsnV8JNaLuLO59Xd8JLbjI7EdH4nt+EjsApt0fCSW9SOxGac+03VaPa7Tz0fh8iFDXk3I+7yMfgzTtUd3jRUOtVwLe3EzrWdDhjwTt/BCuEUM3PR6O1Voh9dxMCfXPqb7byqd72o8pxEK/vWbEc7/2/v6zRgnLfv8Qbbccf6g8kZ1/sC9tq3Sq6Pf636t0nls2ecNEpbpPgjss9QWmdP82HgfPpcaQfbMaPbhGGvYPjxjLWH1CXmPr47zKp71d5xX8dw6zqssZOs4r+JF3Nk6zqt0nFfpOK/ScV6lmU06zquwnldZ16mvNfc4Ma1FW32PU+P9EyHeOK8m1PL8R6V7nNRzUO4122ml2aP2mD19yxmzdynt3uKLtG6NI1E+3o83vYxeTi+/sLuL3Pyg34W8jvP/IN+FPNxJSziLtaHz//Y+izXC2SH8LJZvd8Ew3VEa470j03wWy3QHZlgrp/8G+8upqMxUjzLbozLbe5TJoTI5jzJ5VCbvUaaAyhQ8yhRRmaJHmRIqU/IoU0Zlyh5lpqEy0zzKTEdlpnuUmYHKzPAoswMqs4NHmR1RmR09yuyEyuzkUWZnVGZnjzK7oDK7eJSZicrM9CizKyqzq0eZWajMLI8yu6Eyu3mU2R2V2d2jzGxUZrZHmT1QmT08yuyJyuzpUWYvVGYvjzJ7ozJ7e5TZB5XZx6PMvqjMvh5l9kNl9vMosz8qs79HmQNQmQM8yhyIyhyIyoRRmYNQmYO0MpxvpIAzwSXuO+hNbzDXV/48b/dt/dMN7vG7hDi1sWnl39o3tpuuMtRo+yJzWrbDdJXB7V9TVKav2fA+HJG441d/Yllt7rhV9U9Ax9oh1Jy7Keoxrek41ykQ6lu84962Kr2Z3NR3EW1fa/pObSeicv5cXWuyHc88se1Kd+W6YyXoceZ45/9BjjPXd9I4zuy4Ktei/o6rcp5bx1W5hWwdV+W8iDtbx1W5jqtyHVflOq7KNbNJx1U51qtyvzv1cZ+r1d9g4x4DH7szy7HtVsf+7vG7hDjPRTTF/qavvJjeQOfap47HPo1vh6oz8Kkz2Mfty3rDPrcu09d6cPk61EZcHqfd3+O8fZ2/pq9Z6W+ZrDe0B+fh+Ge21jbcNzUef9169bxOGsdKX/pZ2NfdcCyA7eb19kb961Ru+YOdv+r/80PmOlv7tUS3/FzE5TAnbTrH57ZBlTuljccOexz7BHTsozzqrFlInfo48bJpJ42DW/445686Xk1N8/abvrin8k4KeZeLVihn+vKWyZ4u13DIfD7RjW0q+eNFHeemL0e6vgvPU8qYSvc3pnbrx1foitoQDrX0QXp505jC9XfVyjdeqw+ZfWlUsw+Pb7dsfcxe5vxVfXWBB+dQyDxv6rTyXVBdpvJufboPv8T5i32RaQzheenyNn2RqtIXAmtC9GsY3EY8Z+d52CfaRvtcj+q8Rms3npu6HuO63bHZNdTyTcmhUPVzHY93XXe7od/o7Vab64Pc/uJ5c7XVuK5pPMeO+PQw8NG/uHaX1q4GZJ+w1lZcj1u+p+G4+E3Ouq701I6r5kdE0xXso/DYu0fjir9apfu3Sm1+AdV5v5M2fdVM/9IhfkO3Ozbqtbpp+7dp3bqoX4h71Pmr7NwZ2Vlt+FoN/kKg2iJzWNqz4K2mXbT+xnM2io6L2xUKNbUbl8c20Md8ONSyb/Q5juel/gZ20xcHTVphWgPrb0bHv8OaMq8V/LsZfqvPv1qP8njc4PKvOH9Na2XTl8WxnSIedb6JuLweat5+3Ad4bfepx7Fx+8OG9uj+ymtd6/Vl+3dDLdtfH2rpvyjvDXA547fPhzWe+PhRrfwHiLM7l3U7YLvVoDx9npjeqN9gsJvr+7Dd3d+a+tYth/vWVIfuP3lsbtumN6qHNP69DfzdfX1QeXxNRt/C2v9xm1R/DdF8Ly6n88FjoTeqX7ehrjmVfCauszVzqKfhOPoc+hm1T1/jdvXg6cUP+zX9axRdDHXh9UDQ7xn+x/l/e98z3N5v7qM+fiyTSWVjeXXdvVAuJuJ+Hz+VSNlwlSFTSBXK2UQh7/fx2/rmRs43ovZwKlDzskHzdVHD8VS5pSqUq/H4u6AOQ15kTvO8oL8RdQmngiC/EbWf86MgvhHVHTte13iY7mlsXMO5/YnjXn1eh0JNmumWT6F5slyNN+caOs4ZnXMndAzTW2hM16oI+TTasBbZsMZwTP3cgVt+NW3t6+o/7oeooR53X53huPhcm953ddpx8TmLGu0YXULm8aCfC60Jcdi2KcbQ26DbpKYCn1CIbm5HNT4JZMM1kP/Hcx7bU/V5pkK5SIVyuE2Nvi5Er8OFLFz8j8fzdjxbLGXt1MJ0+GA07/E+ar9ab2gn9X2xeCPmz/zsli3m2a0wKuP17BYu4/XsFi7j9ewWLuP17BYu4/XsFi5TRGWKHmVKqEzJo0wZlSl7lJmGykzzKOP17BYu4/XsFi7j9ewWLuP17BYu4/XsFi7j9ewWLuP17BYu4/Xsltov+9kbux2fvbE7nr1B+/DzGzFUTh9blZ69ccev6dkbd9yq+kegY00ONeeO66t0TpT3+ZE09/MjbG9ni2n24VinYPtw2F/Zp9Lb2dzx4J7HCIXM5wtcG7XX8zVrOv8P8vM1SSfd8XxNxfo7nq/x3Dqer1nI1vF8jRdxZ+t4vqbj+ZqO52s6nq9pZpOO52tYn69Z03Gy7n0eXm/s12PPSvFoQ2jh8aIpzm9NHG46jomze5wo4XFM1yV4nw1qun+8DvE03c+mX+/B56fDWh2m8vq5Fb3+en/a2+JZH3yNrtbAX7/Oc77zV5XdUWtjJRuqTb8/Vn8mQC+j38dtut+81lC/fj/1rs5fxW8dZwDWa2Wo14ou567IjqZxgu8Rx+VnI86ja8x2CIUqn7vROeDypnuKXB+F7d5V+x2+d0l/RsJUNy4f9qhHv2+z3iN/pPN/q7qt8Zovvk+9pgJ3033qhHyM96nXGI6JxxIuf6jGC9+nrrdVt71CT8NxGwz9o9/T6h5XjZ8NPcZo15DZv3TTbIv5Efq7on4fJt7cfT0MbTXdb4jtpm9h7f+4Tco+42qa6tXL6XywnVxu9SHzfBrp/N+qamvyVy5nL3+lj0G3/ImoraO1tprOm/txL32pprldmz1XqnGq5CPVpvvUbobyuG/0+9/x+K7V9uH1le7zagzHMa0barS6vZ7JcuvT7xs51/mreO9X05yf6d4I9Tt3LdDTcBz9N/h6bqW1Aef5dDUwTNda8HM0l3jwxvMB94l7Lki/l2mVmqY6Lw81bxvTNfWMPgbw2tT0NXrmZzMrrjVNaz99rXl9qHlf4LWISVPCWvkuhuOanlvzev4O61rYcAy89jRdQw0R2rJSvMX8DGm2Rjueaw+ch4/fJcQ6zm19XOH+wfbRY0imcZ5Rz080hJqPD7Xh8xa4byo9u8pznc+KmfyeG+MpDnejfMzL5PdMc9Yt/wCq8z4nbXp2FT+fWslv4TGnawTTeG/0W659TM9wYz5RrfwTiBf2Kya/hetxy5ueHdfXBfi49dpxsd/qqXHDtveaR2obP6fl8XR+tR7l6zz4PYv4uWsM3ji8SRNNcTj21V5x+IuIc2vicJP/0Tng8rjdLh/TM+56zGY6tun9C/qxa0Nta/8boab2633GFLM19lmlZ5jx8fV4+B3EWe8z07q9Up+ZnscyPXPaM9Syn/RnuxbWZ/r6xT1Oa/vMLf9RqKn9ep/xPIvd1GemZ7FNz6jpz2J/hjjrfWbqg0p9trDnnPU+Mz0T3Jo+Uxu+Fo+P09o+c8t/G2pqv5Q++xFx9rvPTOdITNz1NR+zTUvdDe1xN9M5Jf18E35Wua3P1DbefxVq2/kmbKOeqH7dlvq5p0q6huvU1y6mOWLSOn2OhGua2ufT+qHN5w/1dxvgZ/bb2p9um6rpz0pzQ9fvRe1Pk05V6k+3fIP//VnornEIGezX3cDdNK/boz8b50KopZ1M1xhxPv5dpf40rRVNMau+Vhzse39Wf51tKOJc6by1Gz+1x3lr/CxRFB0XtysUatlXalvUa4GmdxVUOm/tdR4aH6cGlcH3YOv78Dls97yEq/v4nJJ7fN7zAU1jDL+vy9Qmr7jXbuUYw89Bqi0yh6U9xjGG+0sfY6bzbKb3lOp2wuX1d8epzfQOT/2+iaihLtM4Mo1J/ByG/jvTOf+gvytjlFPB/7V3ZbT3uyra+q6I9n5XBr6vLOjP9OecQmqebVyBc02IPq79v/JM/+Sa5rz8eqZ/MtIt/f4O9xgdz/Q321o80z8V2fBATXPx+T78rFChQrlIhXK4Te5vuN9tMwPN7x0RnwVlDcdT5fatUK7G4++COgx5kTnN84L+bpu9nAqC/G6bXbV1Bm479XXcBcfU6sd5Ojd37PxffGdXW9+VsZmTrtf2UfdTvaGdVPVnrJRv78rgurbOvQYzvSvDpAlhrZzpN7pW4DK8zzIny8x2sk334FCOI31d4dpcb5Med+IYry36ho/VJcQ6hu1KbcP8Kz2zoa/nTXVF21hXe/ap6V6vtr5PIKrtw1qK3yewFCpnmoNuuZVQen3NRpz+mcsvqK2Pgb++fnHXm6GQeV3n2rW93kGwovP/IL+DYGkn3fEOgor1d7yDwHPreAfBQraOdxB4EXe2jncQdLyDoOMdBB3vIGhmk453ELC+g2B8qIm7V6zTCeW5adM7C/Tz+kxxWawm1DL21GNIfHx1P08/J7377Jm7lcbsMnrvUmGP2TNm7rJurjC9hANtvZKQofHuvhqU73XiRf9NGJXHG154R+Y0Lz/Sybeq2CguMm/q/L+9LzLjFyKorV+I3l4WWhD25anfwh8SDWltwcfVT+KGCDm49bnjIBpquekXePBJB8yvhp6fHdI204Ued3M/OtMX5fXz4Mp0E2GjCPM8jG0eM/hGr67aPrfvIobf1Xj8v5P2t1LZmgr1mm6Mdet0+wrzddvhfnQI31Tl1ktpS/ywEkP9jf6D6YUtcdNYwHn6fNV1DnPSfSox11zjyTrEIawdU+eIy5jGbyft/7rmhltR1jR+3X2NJ+Uq/E6/oU3P008OhwzlG0/wOX+jHnXhF+/g8voNqFx92MfAyeX+/wBE/YXBJlsHAA==",
|
|
1764
|
-
"debug_symbols": "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",
|
|
1974
|
+
"bytecode": "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",
|
|
1975
|
+
"debug_symbols": "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S1i9fQmrty9h9fYlrN6+hNXbl7B6+xJWb1/C6u1LWL19Cau3L2H19iWs3r6E1duXsHr7ElZvX8Lq7UtYvX0Jq7cvYfX2JazevoTV25ewevsSVm9fwurtS1i9fQmrty9h9fYlrN6+hNXbl7B6+xJWb1/C6u1LWL19Cau3L2H19iWs3r6E1dunWL19itXbp1i9fYrV26cOaldWrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7F6u1TrN4+xertU6zePsXq7VOs3j7D6u0zrN4+w+rtM6zePnNQu7Jh9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fYfX2GVZvn2H19hlWb59h9fYZVm+fHd7btxzh3NJZ9uD6J2tx/tvFWrytF/vy4uIc5CY0Bw2PF38VmlmEFg6h+fBOx9OEehahgUVoZBEqLEITi1BlEUpCRtmRkFF2LGTk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",
|
|
1765
1976
|
"brillig_names": [
|
|
1766
1977
|
"get_note_internal",
|
|
1767
1978
|
"decompose_hint",
|
|
1768
1979
|
"get_auth_witness",
|
|
1769
1980
|
"build_msg_block",
|
|
1770
1981
|
"attach_len_to_msg_block",
|
|
1771
|
-
"
|
|
1982
|
+
"enqueue_public_function_call_internal",
|
|
1983
|
+
"call_private_function_internal",
|
|
1984
|
+
"debug_log_oracle_wrapper",
|
|
1985
|
+
"notify_set_min_revertible_side_effect_counter_oracle_wrapper",
|
|
1986
|
+
"notify_created_nullifier_oracle_wrapper",
|
|
1772
1987
|
"directive_invert",
|
|
1773
1988
|
"directive_integer_quotient",
|
|
1774
1989
|
"directive_to_radix"
|
|
1775
1990
|
],
|
|
1776
|
-
"verification_key": "
|
|
1991
|
+
"verification_key": "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"
|
|
1777
1992
|
},
|
|
1778
1993
|
{
|
|
1779
|
-
"name": "
|
|
1994
|
+
"name": "verify_private_authwit",
|
|
1780
1995
|
"is_unconstrained": false,
|
|
1781
1996
|
"custom_attributes": [
|
|
1782
|
-
"private"
|
|
1997
|
+
"private",
|
|
1998
|
+
"noinitcheck",
|
|
1999
|
+
"view"
|
|
1783
2000
|
],
|
|
1784
2001
|
"abi": {
|
|
1785
2002
|
"error_types": {
|
|
@@ -1804,17 +2021,21 @@
|
|
|
1804
2021
|
"error_kind": "string",
|
|
1805
2022
|
"string": "Stack too deep"
|
|
1806
2023
|
},
|
|
2024
|
+
"19458536156181958": {
|
|
2025
|
+
"error_kind": "string",
|
|
2026
|
+
"string": "Function verify_private_authwit can only be called statically"
|
|
2027
|
+
},
|
|
1807
2028
|
"2920182694213909827": {
|
|
1808
2029
|
"error_kind": "string",
|
|
1809
2030
|
"string": "attempt to subtract with overflow"
|
|
1810
2031
|
},
|
|
1811
|
-
"
|
|
2032
|
+
"4939791462094160055": {
|
|
1812
2033
|
"error_kind": "string",
|
|
1813
|
-
"string": "
|
|
2034
|
+
"string": "Message not authorized by account"
|
|
1814
2035
|
},
|
|
1815
|
-
"
|
|
2036
|
+
"5019202896831570965": {
|
|
1816
2037
|
"error_kind": "string",
|
|
1817
|
-
"string": "
|
|
2038
|
+
"string": "attempt to add with overflow"
|
|
1818
2039
|
},
|
|
1819
2040
|
"6869395374906889440": {
|
|
1820
2041
|
"error_kind": "string",
|
|
@@ -2166,315 +2387,151 @@
|
|
|
2166
2387
|
"kind": "field"
|
|
2167
2388
|
}
|
|
2168
2389
|
}
|
|
2169
|
-
],
|
|
2170
|
-
"kind": "struct",
|
|
2171
|
-
"path": "authwit::aztec::protocol_types::block_header::BlockHeader"
|
|
2172
|
-
}
|
|
2173
|
-
},
|
|
2174
|
-
{
|
|
2175
|
-
"name": "tx_context",
|
|
2176
|
-
"type": {
|
|
2177
|
-
"fields": [
|
|
2178
|
-
{
|
|
2179
|
-
"name": "chain_id",
|
|
2180
|
-
"type": {
|
|
2181
|
-
"kind": "field"
|
|
2182
|
-
}
|
|
2183
|
-
},
|
|
2184
|
-
{
|
|
2185
|
-
"name": "version",
|
|
2186
|
-
"type": {
|
|
2187
|
-
"kind": "field"
|
|
2188
|
-
}
|
|
2189
|
-
},
|
|
2190
|
-
{
|
|
2191
|
-
"name": "gas_settings",
|
|
2192
|
-
"type": {
|
|
2193
|
-
"fields": [
|
|
2194
|
-
{
|
|
2195
|
-
"name": "gas_limits",
|
|
2196
|
-
"type": {
|
|
2197
|
-
"fields": [
|
|
2198
|
-
{
|
|
2199
|
-
"name": "da_gas",
|
|
2200
|
-
"type": {
|
|
2201
|
-
"kind": "integer",
|
|
2202
|
-
"sign": "unsigned",
|
|
2203
|
-
"width": 32
|
|
2204
|
-
}
|
|
2205
|
-
},
|
|
2206
|
-
{
|
|
2207
|
-
"name": "l2_gas",
|
|
2208
|
-
"type": {
|
|
2209
|
-
"kind": "integer",
|
|
2210
|
-
"sign": "unsigned",
|
|
2211
|
-
"width": 32
|
|
2212
|
-
}
|
|
2213
|
-
}
|
|
2214
|
-
],
|
|
2215
|
-
"kind": "struct",
|
|
2216
|
-
"path": "authwit::aztec::protocol_types::abis::gas::Gas"
|
|
2217
|
-
}
|
|
2218
|
-
},
|
|
2219
|
-
{
|
|
2220
|
-
"name": "teardown_gas_limits",
|
|
2221
|
-
"type": {
|
|
2222
|
-
"fields": [
|
|
2223
|
-
{
|
|
2224
|
-
"name": "da_gas",
|
|
2225
|
-
"type": {
|
|
2226
|
-
"kind": "integer",
|
|
2227
|
-
"sign": "unsigned",
|
|
2228
|
-
"width": 32
|
|
2229
|
-
}
|
|
2230
|
-
},
|
|
2231
|
-
{
|
|
2232
|
-
"name": "l2_gas",
|
|
2233
|
-
"type": {
|
|
2234
|
-
"kind": "integer",
|
|
2235
|
-
"sign": "unsigned",
|
|
2236
|
-
"width": 32
|
|
2237
|
-
}
|
|
2238
|
-
}
|
|
2239
|
-
],
|
|
2240
|
-
"kind": "struct",
|
|
2241
|
-
"path": "authwit::aztec::protocol_types::abis::gas::Gas"
|
|
2242
|
-
}
|
|
2243
|
-
},
|
|
2244
|
-
{
|
|
2245
|
-
"name": "max_fees_per_gas",
|
|
2246
|
-
"type": {
|
|
2247
|
-
"fields": [
|
|
2248
|
-
{
|
|
2249
|
-
"name": "fee_per_da_gas",
|
|
2250
|
-
"type": {
|
|
2251
|
-
"kind": "field"
|
|
2252
|
-
}
|
|
2253
|
-
},
|
|
2254
|
-
{
|
|
2255
|
-
"name": "fee_per_l2_gas",
|
|
2256
|
-
"type": {
|
|
2257
|
-
"kind": "field"
|
|
2258
|
-
}
|
|
2259
|
-
}
|
|
2260
|
-
],
|
|
2261
|
-
"kind": "struct",
|
|
2262
|
-
"path": "authwit::aztec::protocol_types::abis::gas_fees::GasFees"
|
|
2263
|
-
}
|
|
2264
|
-
},
|
|
2265
|
-
{
|
|
2266
|
-
"name": "max_priority_fees_per_gas",
|
|
2267
|
-
"type": {
|
|
2268
|
-
"fields": [
|
|
2269
|
-
{
|
|
2270
|
-
"name": "fee_per_da_gas",
|
|
2271
|
-
"type": {
|
|
2272
|
-
"kind": "field"
|
|
2273
|
-
}
|
|
2274
|
-
},
|
|
2275
|
-
{
|
|
2276
|
-
"name": "fee_per_l2_gas",
|
|
2277
|
-
"type": {
|
|
2278
|
-
"kind": "field"
|
|
2279
|
-
}
|
|
2280
|
-
}
|
|
2281
|
-
],
|
|
2282
|
-
"kind": "struct",
|
|
2283
|
-
"path": "authwit::aztec::protocol_types::abis::gas_fees::GasFees"
|
|
2284
|
-
}
|
|
2285
|
-
}
|
|
2286
|
-
],
|
|
2287
|
-
"kind": "struct",
|
|
2288
|
-
"path": "authwit::aztec::protocol_types::abis::gas_settings::GasSettings"
|
|
2289
|
-
}
|
|
2290
|
-
}
|
|
2291
|
-
],
|
|
2292
|
-
"kind": "struct",
|
|
2293
|
-
"path": "authwit::aztec::protocol_types::transaction::tx_context::TxContext"
|
|
2294
|
-
}
|
|
2295
|
-
},
|
|
2296
|
-
{
|
|
2297
|
-
"name": "start_side_effect_counter",
|
|
2298
|
-
"type": {
|
|
2299
|
-
"kind": "integer",
|
|
2300
|
-
"sign": "unsigned",
|
|
2301
|
-
"width": 32
|
|
2302
|
-
}
|
|
2303
|
-
}
|
|
2304
|
-
],
|
|
2305
|
-
"kind": "struct",
|
|
2306
|
-
"path": "aztec::context::inputs::private_context_inputs::PrivateContextInputs"
|
|
2307
|
-
},
|
|
2308
|
-
"visibility": "private"
|
|
2309
|
-
},
|
|
2310
|
-
{
|
|
2311
|
-
"name": "app_payload",
|
|
2312
|
-
"type": {
|
|
2313
|
-
"fields": [
|
|
2314
|
-
{
|
|
2315
|
-
"name": "function_calls",
|
|
2316
|
-
"type": {
|
|
2317
|
-
"kind": "array",
|
|
2318
|
-
"length": 4,
|
|
2319
|
-
"type": {
|
|
2320
|
-
"fields": [
|
|
2321
|
-
{
|
|
2322
|
-
"name": "args_hash",
|
|
2323
|
-
"type": {
|
|
2324
|
-
"kind": "field"
|
|
2325
|
-
}
|
|
2326
|
-
},
|
|
2327
|
-
{
|
|
2328
|
-
"name": "function_selector",
|
|
2329
|
-
"type": {
|
|
2330
|
-
"fields": [
|
|
2331
|
-
{
|
|
2332
|
-
"name": "inner",
|
|
2333
|
-
"type": {
|
|
2334
|
-
"kind": "integer",
|
|
2335
|
-
"sign": "unsigned",
|
|
2336
|
-
"width": 32
|
|
2337
|
-
}
|
|
2338
|
-
}
|
|
2339
|
-
],
|
|
2340
|
-
"kind": "struct",
|
|
2341
|
-
"path": "authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"
|
|
2342
|
-
}
|
|
2343
|
-
},
|
|
2344
|
-
{
|
|
2345
|
-
"name": "target_address",
|
|
2346
|
-
"type": {
|
|
2347
|
-
"fields": [
|
|
2348
|
-
{
|
|
2349
|
-
"name": "inner",
|
|
2350
|
-
"type": {
|
|
2351
|
-
"kind": "field"
|
|
2352
|
-
}
|
|
2353
|
-
}
|
|
2354
|
-
],
|
|
2355
|
-
"kind": "struct",
|
|
2356
|
-
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
2357
|
-
}
|
|
2358
|
-
},
|
|
2359
|
-
{
|
|
2360
|
-
"name": "is_public",
|
|
2361
|
-
"type": {
|
|
2362
|
-
"kind": "boolean"
|
|
2363
|
-
}
|
|
2364
|
-
},
|
|
2365
|
-
{
|
|
2366
|
-
"name": "is_static",
|
|
2367
|
-
"type": {
|
|
2368
|
-
"kind": "boolean"
|
|
2369
|
-
}
|
|
2370
|
-
}
|
|
2371
|
-
],
|
|
2372
|
-
"kind": "struct",
|
|
2373
|
-
"path": "authwit::entrypoint::function_call::FunctionCall"
|
|
2374
|
-
}
|
|
2375
|
-
}
|
|
2376
|
-
},
|
|
2377
|
-
{
|
|
2378
|
-
"name": "nonce",
|
|
2379
|
-
"type": {
|
|
2380
|
-
"kind": "field"
|
|
2381
|
-
}
|
|
2382
|
-
}
|
|
2383
|
-
],
|
|
2384
|
-
"kind": "struct",
|
|
2385
|
-
"path": "authwit::entrypoint::app::AppPayload"
|
|
2386
|
-
},
|
|
2387
|
-
"visibility": "private"
|
|
2388
|
-
},
|
|
2389
|
-
{
|
|
2390
|
-
"name": "fee_payload",
|
|
2391
|
-
"type": {
|
|
2392
|
-
"fields": [
|
|
2393
|
-
{
|
|
2394
|
-
"name": "function_calls",
|
|
2395
|
-
"type": {
|
|
2396
|
-
"kind": "array",
|
|
2397
|
-
"length": 2,
|
|
2398
|
-
"type": {
|
|
2399
|
-
"fields": [
|
|
2400
|
-
{
|
|
2401
|
-
"name": "args_hash",
|
|
2402
|
-
"type": {
|
|
2403
|
-
"kind": "field"
|
|
2404
|
-
}
|
|
2405
|
-
},
|
|
2406
|
-
{
|
|
2407
|
-
"name": "function_selector",
|
|
2408
|
-
"type": {
|
|
2409
|
-
"fields": [
|
|
2410
|
-
{
|
|
2411
|
-
"name": "inner",
|
|
2412
|
-
"type": {
|
|
2413
|
-
"kind": "integer",
|
|
2414
|
-
"sign": "unsigned",
|
|
2415
|
-
"width": 32
|
|
2416
|
-
}
|
|
2417
|
-
}
|
|
2418
|
-
],
|
|
2419
|
-
"kind": "struct",
|
|
2420
|
-
"path": "authwit::aztec::protocol_types::abis::function_selector::FunctionSelector"
|
|
2421
|
-
}
|
|
2422
|
-
},
|
|
2423
|
-
{
|
|
2424
|
-
"name": "target_address",
|
|
2425
|
-
"type": {
|
|
2426
|
-
"fields": [
|
|
2427
|
-
{
|
|
2428
|
-
"name": "inner",
|
|
2429
|
-
"type": {
|
|
2430
|
-
"kind": "field"
|
|
2431
|
-
}
|
|
2432
|
-
}
|
|
2433
|
-
],
|
|
2434
|
-
"kind": "struct",
|
|
2435
|
-
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
2436
|
-
}
|
|
2437
|
-
},
|
|
2438
|
-
{
|
|
2439
|
-
"name": "is_public",
|
|
2440
|
-
"type": {
|
|
2441
|
-
"kind": "boolean"
|
|
2442
|
-
}
|
|
2443
|
-
},
|
|
2444
|
-
{
|
|
2445
|
-
"name": "is_static",
|
|
2446
|
-
"type": {
|
|
2447
|
-
"kind": "boolean"
|
|
2448
|
-
}
|
|
2449
|
-
}
|
|
2450
|
-
],
|
|
2451
|
-
"kind": "struct",
|
|
2452
|
-
"path": "authwit::entrypoint::function_call::FunctionCall"
|
|
2453
|
-
}
|
|
2390
|
+
],
|
|
2391
|
+
"kind": "struct",
|
|
2392
|
+
"path": "authwit::aztec::protocol_types::block_header::BlockHeader"
|
|
2454
2393
|
}
|
|
2455
2394
|
},
|
|
2456
2395
|
{
|
|
2457
|
-
"name": "
|
|
2396
|
+
"name": "tx_context",
|
|
2458
2397
|
"type": {
|
|
2459
|
-
"
|
|
2398
|
+
"fields": [
|
|
2399
|
+
{
|
|
2400
|
+
"name": "chain_id",
|
|
2401
|
+
"type": {
|
|
2402
|
+
"kind": "field"
|
|
2403
|
+
}
|
|
2404
|
+
},
|
|
2405
|
+
{
|
|
2406
|
+
"name": "version",
|
|
2407
|
+
"type": {
|
|
2408
|
+
"kind": "field"
|
|
2409
|
+
}
|
|
2410
|
+
},
|
|
2411
|
+
{
|
|
2412
|
+
"name": "gas_settings",
|
|
2413
|
+
"type": {
|
|
2414
|
+
"fields": [
|
|
2415
|
+
{
|
|
2416
|
+
"name": "gas_limits",
|
|
2417
|
+
"type": {
|
|
2418
|
+
"fields": [
|
|
2419
|
+
{
|
|
2420
|
+
"name": "da_gas",
|
|
2421
|
+
"type": {
|
|
2422
|
+
"kind": "integer",
|
|
2423
|
+
"sign": "unsigned",
|
|
2424
|
+
"width": 32
|
|
2425
|
+
}
|
|
2426
|
+
},
|
|
2427
|
+
{
|
|
2428
|
+
"name": "l2_gas",
|
|
2429
|
+
"type": {
|
|
2430
|
+
"kind": "integer",
|
|
2431
|
+
"sign": "unsigned",
|
|
2432
|
+
"width": 32
|
|
2433
|
+
}
|
|
2434
|
+
}
|
|
2435
|
+
],
|
|
2436
|
+
"kind": "struct",
|
|
2437
|
+
"path": "authwit::aztec::protocol_types::abis::gas::Gas"
|
|
2438
|
+
}
|
|
2439
|
+
},
|
|
2440
|
+
{
|
|
2441
|
+
"name": "teardown_gas_limits",
|
|
2442
|
+
"type": {
|
|
2443
|
+
"fields": [
|
|
2444
|
+
{
|
|
2445
|
+
"name": "da_gas",
|
|
2446
|
+
"type": {
|
|
2447
|
+
"kind": "integer",
|
|
2448
|
+
"sign": "unsigned",
|
|
2449
|
+
"width": 32
|
|
2450
|
+
}
|
|
2451
|
+
},
|
|
2452
|
+
{
|
|
2453
|
+
"name": "l2_gas",
|
|
2454
|
+
"type": {
|
|
2455
|
+
"kind": "integer",
|
|
2456
|
+
"sign": "unsigned",
|
|
2457
|
+
"width": 32
|
|
2458
|
+
}
|
|
2459
|
+
}
|
|
2460
|
+
],
|
|
2461
|
+
"kind": "struct",
|
|
2462
|
+
"path": "authwit::aztec::protocol_types::abis::gas::Gas"
|
|
2463
|
+
}
|
|
2464
|
+
},
|
|
2465
|
+
{
|
|
2466
|
+
"name": "max_fees_per_gas",
|
|
2467
|
+
"type": {
|
|
2468
|
+
"fields": [
|
|
2469
|
+
{
|
|
2470
|
+
"name": "fee_per_da_gas",
|
|
2471
|
+
"type": {
|
|
2472
|
+
"kind": "field"
|
|
2473
|
+
}
|
|
2474
|
+
},
|
|
2475
|
+
{
|
|
2476
|
+
"name": "fee_per_l2_gas",
|
|
2477
|
+
"type": {
|
|
2478
|
+
"kind": "field"
|
|
2479
|
+
}
|
|
2480
|
+
}
|
|
2481
|
+
],
|
|
2482
|
+
"kind": "struct",
|
|
2483
|
+
"path": "authwit::aztec::protocol_types::abis::gas_fees::GasFees"
|
|
2484
|
+
}
|
|
2485
|
+
},
|
|
2486
|
+
{
|
|
2487
|
+
"name": "max_priority_fees_per_gas",
|
|
2488
|
+
"type": {
|
|
2489
|
+
"fields": [
|
|
2490
|
+
{
|
|
2491
|
+
"name": "fee_per_da_gas",
|
|
2492
|
+
"type": {
|
|
2493
|
+
"kind": "field"
|
|
2494
|
+
}
|
|
2495
|
+
},
|
|
2496
|
+
{
|
|
2497
|
+
"name": "fee_per_l2_gas",
|
|
2498
|
+
"type": {
|
|
2499
|
+
"kind": "field"
|
|
2500
|
+
}
|
|
2501
|
+
}
|
|
2502
|
+
],
|
|
2503
|
+
"kind": "struct",
|
|
2504
|
+
"path": "authwit::aztec::protocol_types::abis::gas_fees::GasFees"
|
|
2505
|
+
}
|
|
2506
|
+
}
|
|
2507
|
+
],
|
|
2508
|
+
"kind": "struct",
|
|
2509
|
+
"path": "authwit::aztec::protocol_types::abis::gas_settings::GasSettings"
|
|
2510
|
+
}
|
|
2511
|
+
}
|
|
2512
|
+
],
|
|
2513
|
+
"kind": "struct",
|
|
2514
|
+
"path": "authwit::aztec::protocol_types::transaction::tx_context::TxContext"
|
|
2460
2515
|
}
|
|
2461
2516
|
},
|
|
2462
2517
|
{
|
|
2463
|
-
"name": "
|
|
2518
|
+
"name": "start_side_effect_counter",
|
|
2464
2519
|
"type": {
|
|
2465
|
-
"kind": "
|
|
2520
|
+
"kind": "integer",
|
|
2521
|
+
"sign": "unsigned",
|
|
2522
|
+
"width": 32
|
|
2466
2523
|
}
|
|
2467
2524
|
}
|
|
2468
2525
|
],
|
|
2469
2526
|
"kind": "struct",
|
|
2470
|
-
"path": "
|
|
2527
|
+
"path": "aztec::context::inputs::private_context_inputs::PrivateContextInputs"
|
|
2471
2528
|
},
|
|
2472
2529
|
"visibility": "private"
|
|
2473
2530
|
},
|
|
2474
2531
|
{
|
|
2475
|
-
"name": "
|
|
2532
|
+
"name": "inner_hash",
|
|
2476
2533
|
"type": {
|
|
2477
|
-
"kind": "
|
|
2534
|
+
"kind": "field"
|
|
2478
2535
|
},
|
|
2479
2536
|
"visibility": "private"
|
|
2480
2537
|
}
|
|
@@ -3584,24 +3641,146 @@
|
|
|
3584
3641
|
"visibility": "databus"
|
|
3585
3642
|
}
|
|
3586
3643
|
},
|
|
3587
|
-
"bytecode": "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q9NWr61B22hte2obo22str207a1tnLbx2iZom6htH22TtE3WNkXbvtqmapumbT9t+2ubru0AbTO0HajtIG0Ha5up7RBts7Qdqu0wbYdrO0LbbG1HajtK29HajtF2rLbjtB2v7QRtJ2o7SdvJ2k7Rdqq207Sdru0MbWdqO0vb2drO0XautvO0na/tAm1ztF2o7SJtF2u7RNul2i7Tdrm2K7Rdqe0qbVdru0bbtdqu03a9thu03ajtJm03a7tF263abtP2P223a7tD253a7tJ2t7Z7tN2r7T5t92t7QNuD2uZqe0jbPG0Pa3tE26PaHtP2uLYntD2p7SltT2t7Rtuz2p7T9ry2F7S9qO0lbS9re0Xbq9pe0/a6tje0vantLW1va3tH27va3tP2vrYPtH2o7SNtH2v7RNun2j7T9rm2L7R9qe0rbV9r+0bbt9q+0/a9th+0/ajtJ20/a/tF26/aftP2u7Y/tP2p7S9tf2v7R5sR9AJtTbQVaivSVqytRFtTbc20lWor09ZcWwttLbW10tZaW7m2Ntraamunrb22Dto6altJWydtnbWtrG0VbatqW03b6trW0NZF25ra1tK2trZ1tK2rbT1tXbV107a+tg20baitu7Ye2jbStrE2T5vSFtUW0xbXVqGtUluVtoS2pLae2npp662tj7a+2jbR1k9bf20DtA3UNkjbYG1DtG2qbTNtm2vbQttQbVtq20rb1tq20battu20DdO2vbYdtA3XtqO2nbTtrG0XbSO07aptN227a9tD20hto7RVa6vRVqutTlu9tgZto7XtqW2MtrHa9tK2t7Zx2sZrm6BtorZ9tE3SNlnbFG37apuqbZq2/bTtr226tgO0zdB2oLaDtB2sbaa2Q7TN0naotsO0Ha7tCG2ztR2p7ShtR2s7Rtux2sz75c2728170c07x837vM27ss17qM07ns37k827ic17f807dc37as27YM17Vs07TM37Qc27N817LedoM+9jNO86NO8RNO/oM++/M++WM+9tM+9EM+8bM+/yMu/JMu+gMu93Mu9OMu8lMu/8Me/TMe+qMe+BMe9YMe8vMe8GMe/dMO+0MO+LMO9iMO85MO8QMM/nN8++N8+Vv1+beR66eda4eY63eUa2ef60ebazeW6yeSaxed6veZaueU6teQaseb6qeXapeS6oeeameZ6leVakeQ6j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",
|
|
3588
|
-
"debug_symbols": "7Z3druS4ka3fpa/rgn8RQc6rDIyB7fEZNNCwB7bnAAcDv/vRrqpUZnWmyN5spbTIpZtBl0eRikWRjE/cGSv/96f//Muf/ue//uPnv/6fv/3jp3/79//96Ze//fmP//z5b39d/vW/P8X49X/7x3//8a8f//zHP//493/+9G9eNXz56S9//c+P/7Twry8//Z+ff/nLT/+my38+XRyC2veLQ8hlvbjIq4tLyt8vji74+sVeY8lrHsnfLw+qL6+X++Vm96tzfHV11Hi7Onn3w9V/+PJTTNfIbIyMXCOzMTJ6jczGyNg1Mhsjk6+R2RiZco3M65FJ7hqZjZHx18hsjEy4RmZjZC4G3hqZdI3MxshcDLw1MhcDb43MxcBbI3Mx8NbIXAy8MTJyMfDWyFwMvDUyFwNvjczFwFsjk66R2RiZi4G3RuZi4K2RuRh4a2QuBt4amYuBN0ZGLwbeGpmLgbdG5mLgrZG5GHhrZNI1MhsjczHw1shcDLw1MhcDb43MxcBbI3Mx8MbI2MXAWyNzMfDWyFwMvDUyFwNvjUy6RmZjZC4G3hoZbAZOUe4jk0pjZIIPesvEJ/mdI4PNwGeODDYDnzkyv5+Bkyu3i5MPeb3YyscNsnv3DX4/kfno0u3iGO/j7/3Lq5232wNY/rvEx4ReTZxcyjpzynP+YfD8N+jG37f8qI38RdY5KnrPX19NaFvnc04Pn2svLs1abkKzxdhYVzmt6yonS42ro9wuTuFhVb1csGGdvyE6qV/sow/3Z+kbFy+Pb32Smh8v/ngy6XoyoE9GricD+mT0ejKgT8auJwP6ZPL1ZECfTLmeDOaTKe56MqBPxl9PBvTJhOvJgD6Z6wwA9cmk68mAPpnrDAD1yVxnAKhP5joDQH0y1xkA6pO5zgBAn4x31yEA7KO5TgFgH811DAD7aK5zANhHk65Hg/porpMA2EdzHQXAPprrLAD20VyHAbCP5joNQH00/joNaD0aWwcw/JjGq7Gw+7ecrcjvezTXaQDso9njNMDujyY3Ho2W21ftze7r/SOva0P79aOJ16NBfTTpejSoj0auR4P6aPR6NKiPxq5Hg/po8vVoUB9NuR4N6KMJ7no0qI/GX48G9dFcpwGwj+Y6DYB9NOl6NKiP5joNgH0012kA7KO5TgNQ/14TrtMA2Eezx2mAW++g4uqPhn28o7vG+9Dx9td4HzreO7yM6+q66M2H+ngHn251IXhz9U+Ozt9MFxc0uVcGLy+HO8UbnMSk9zH0N6mRR2rikSo8UpVHqvFIzTxSC43U5Hikeh6pPLSUeGgpJR6pPLSUeGgp8dBS4qGlxENLwkNLwkNLwkNLwkNLknik8tCS8NCS8NCS8NCS8NCS8tCS8tCS8tCS8tCS8tCS8tCS8tCS8tCS8tCS8tCS8dCS8dCS8dCS8dCS8dCS8dCS8dCS8dCS8dCS8dBS5qGlzENLmYeWMg8t7fHb4aNI5aGlzENLmYeWMg8tZR5aKjy0VHhoqfDQUuGhpT1+ZXUUqTy0VHhoqfDQUpmJlszfrhaff5D6Kmu5Z+3888DMxFafGhh7GJgSfj0wwU1EYiJ5HZjSHBjnVzMAFx+ujq8yCaWUNZN4tw6IKb3KJJQ17/jw2cF/G/OJkBBnzJOL69Yo8jTmE7HpG8c8unQf8/x75/lEkIwz5o15nq4x/01jft9b/O/ezyd6bcAZ88Y8n+j95Z1j7u97i//d+/lEL1I4Y96Y5xO90b11zO97S/jd+/lEL4s4Y16f5/56D/1N70TZ7jP34eV/Y8xtHZGY/cNxkX0bc9r30BDdLeuQwg9j/nVgaF8WWwND+0bXGpjEOjAprduXOG1tX3Hd7EKKd40brqHcHqPB075XXpPqfZOK9sU55nVcZCGgxqTy67MMIeRrUtUnFe3JwDWp3jepJjr6UHf7pYaosTQmVSnr32xLeXiUVl5lHfL6Gv7xmyT58fKvwzjRacaJwxiOPqCIZR3GFPzjJ39N5+h3dwm3oQ+S3FM6ASudiJVOwkpHsNJRrHQMK52MlU6BSic6rHSwduWItStHrF05Yu3KEWtXjli7csTalSPWrhyxduWEtSsnrF05Ye3KCWtXTli7csLalRPWrpywduWEtSsnrF1ZsHZlwdqVBWtXFqxdWbB2ZcHalQVrVxasXVmwdmXB2pUVa1dWrF1ZsXZlxdqVFWtXVqxdWbF2ZcXalRVrV1asXdmwdmXD2pUNa1c2rF3ZsHZlw9qVDWtXNqxd2bB2ZcPalTPWrpyxduWMtStnrF05Y+3KGWtXzli7csbalTPWrpyxduWCtSsXrF25YO3KBWtXLli7csHalQvWrlywduWCtSsXqF05OqhdOTqoXTk6qF05OqhdOTqoXTk6qF05OqhdOTqoXTk6qF05Oqxd2WPtyh5rV/ZYu7LH2pU91q7ssXZlj7Ure6xd2WPtyh5rVw5YuzJWb1/E6u2LWL19Eau3L2L19kWs3r6I1dsXsXr7IlZvX8Tq7YtYvX0Rq7cvYvX2RazevojV2xexevsiVm9fxOrti1i9fRGrty9i9fZFrN6+iNXbF7F6+yJWb1/E6u2LWL19Eau3L2L19kWs3r6I1dsXsXr7IlZvX8Tq7YtYvX0Rq7cvYvX2RazevojV2xexevsiVm9fxOrti1i9fRGrty9i9fZFrN6+iNXbF7F6+yJWb1/E6u2LWL19Eau3L2L19kWs3r6I1dsXsXr7IlZvX8Tq7YtYvX0Rq7cvYvX2RazevojV2xexevsiVm9fxOrti1i9fRGrty9i9fZFrN6+iNXbF7F6+yJWb1/E6u2LWL19Eau3L2L19kWs3r6I1duXsHr7ElZvX8Lq7UtYvX3JQe3KCau3L2H19iWs3r6E1duXsHr7ElZvX8Lq7UtYvX0Jq7cvYfX2JazevoTV25ewevsSVm9fwurtS1i9fQmrty9h9fYlrN6+hNXbl7B6+xJWb1/C6u1LWL19Cau3L2H19iWs3r6E1duXsHr7ElZvX8Lq7UtYvX0Jq7cvYfX2JazevoTV25ewevsSVm9fwurtS1i9fQmrty9h9fYlrN6+hNXbl7B6+xJWb1/C6u1LWL19Cau3L2H19iWs3r6E1duXsHr7ElZvX8Lq7UtYvX0Jq7cvYfX2JazevoTV25ewevsSVm9fwurtS1i9fQmrty9h9fYlrN6+hNXbl7B6+xJWb1/C6u1LWL19Cau3L2H19iWs3r6E1duXsHr7ElZvX8Lq7UtYvX0Jq7cvYfX2JazevoTV25ewevsSVm9fwurtS1i9fQmrty9h9fYlrN6+hNXbl7B6+xJWb1/C6u0TrN4+wertE6zePsHq7RMHtSsLVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59g9fYJVm+fYPX2CVZvn2D19glWb59i9fYpVm+fYvX2KVZvnzqoXVmxevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+xSrt0+xevsUq7dPsXr7FKu3T7F6+wyrt8+wevsMq7fPsHr7zEHtyobV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX2G1dtnWL19htXbZ1i9fYbV22dYvX12eG/fcoRzS2fZg+ufrMX57xdr8bZe7MuLi3NIN6E5aHi8+KvQzCK0cAjNh3c6nibUswgNLEIji9DEIlRYhCqLUBIyyo6EjLJjISPPQkaehYw8Cxl5FjI6vKv7NKEsZORZyMizkJFnISPPQkaBhYwCCxkFFjIKLGR0uLPCaUJZyCiwkFFgIaPAQkaBhYwiCxlFZDKykG5pWND0lDsy7LRyR+aXVu4JOvdSbrlH/5w7MmW0ckcGh1buyCzQyh25vLdyR67YjX0mIRfhVu4D19WEXVer8z1h19V67gPX1TRwXU0D19U0cF1NA9fVNHBdlYHrqgxcV2Xg91UZ+H31cGufHfcZGbiuysB1VQauqzJwXRXsulrNXbHraj137Lpaz33g91UduK4ebs60Z+7YdbWeO3ZdreeOXVfruQ9cV3XgumoD11UbuK7awHXVBj4HPtxea8/cB35ftYHfV23gumrYdbWe+8DnwHngc+A88DlwHriu5oHr6uEGaXvmPnBdzQPX1TzwOXAe+H01D/y+WgZ+Xy0D19Uy8N9Xy8DnwIdb3O2Z+8DnwGXgugrttNfKfeC6Cu2HV8+9QFvctXIf9xy4QBvRtXIf9321OOy6Ws993LpaoE3dWrmPew5coK3XWrmPew5coA3SGvsMtOdZK/eB6yq0M1kr94HrKrR/WCv3cd9XC7TLVyv3cd9XC7QXV6OuQttrtXIf9xy4QJtgtXIf9xy4QFtVNfYZaPepVu4D11Voj6hW7gPXVWgnp0bu0OZMrdwHfl8F91uq5z5wXQX3W6rnPvA5MLjfUj33gc+BB/ZbKuB+S9Xcwf2W6rkPXFcH9lsqA/stlYH9lsrAfktlYL+lAu63VK2r4H5L9dwHPgce2G+pDOy3VMD9lqr7DLjfUj33gevqwH5LZWC/pTKw31IZ2G+pDOy3VAb2WyrgfkvVugrut1TPfeBz4IH9lsrAfksF3G+pvs8MXFcH9lsqA/stlYH9lsrAfktlYL+lMrDfUhnYb6mA+y1V6yq431I994HPgQf2WyoD+y0VcL+l6j4D7rdUz33gujqw31IZ2G+pDOy3VAb2WyoD+y2Vgf2WCrjfUrWugvst1XMf+Bx4YL+lMrDfUgH3W6ruM+B+S/XcB66rA/stlYH9lsrAfkveDWy4tCQ/7hvrkvy4r6xL8uPW1iV57OLaSH7c0+Al+XGPg5fkxz0PXpIft8AuyY9cYQe2XlqSH7nCDmy+tCQ/7qnwkjx2hW0kP+7765L8uC+wS/IjV1hwC6ZG8uOeDXs3sAnTkvy4p8NL8iNXWHAfpkbyI1fYgZ2YluRHrrADezEtyY/8DjuwG5N3A9sxLcmPXGHBDZkayY98SjywJdOS/MinxOCmTI3dZuQKO7At05L8yBV2YGOmJfmRT4kHtmZakh/5HXZgc6Yl+ZErLLg9UyP5kU+JBzZoWpIf+ZQY3KKpvtuAezQ1kh+5wg7s0rQkP3KFHdinaUl+5HfYgZ2aluRHfocF92qqV1hws6ZG8iOfEg9s17QkP/IpMbhhU323AXdsaiQ/coUd2LNpSX7kCjuwa5N3A9s2LcmP/A47sHHTkvzIFRbcuqmR/MinxAObNy3Jj3xKDG7f1NhtRq6wAxs4LcmPXGEHtnBakh/5lHhgE6cl+ZHfYQe2cVqSH7nCghs5NZIf+ZR4YCunJfmRT4nBzZzquw24m1Mj+ZEr7MB+TkvyI1fYgR2dluRHfocd2dPJj+zp5ME9naoV1oN7OjWSH/iU2DvsCttIfuBTYg/u6dTYbQausH5kTyc/sqeTH9nTyY/s6eRH9nTyI3s6+ZE9nTy4p1O9woJ7OjWSH/iU2I/s6eRH9nTy4J5O9d0G3NOpkfzIFXZkTyc/sqeTH9nTyY/s6eRH9nTyI3s6eXBPp3qFBfd0aiQ/8inxyJ5OfmRPJw/u6VTfbcA9nRrJj1xhR/Z08iN7OvmRPZ38yJ5OfmRPJz+yp5MH93SqV1hwT6dG8iOfEo/s6eRH9nTy4J5Ojd1m5Ao7sqeTH9nTyY/s6eRH9nTyI3s6+ZE9nfzInk4e3NOpXmHBPZ0ayY98Sjyyp5Mf2dPJg3s61XcbcE+nRvIjV9iRPZ38yJ5OfmRPJz+yp5Mf2dPJj+zp5ME9neoVFtzTqZH8yKfEI3s6+ZE9nTy4p1Njtxm5wo7s6eRH9nTyI3s6+ZE9nfzInk5+ZE8nP7Knkwf3dKpXWHBPp0byI58Sj+zp5Ef2dPLgnk713Qbc06mR/MgVdmRPJz+yp5Mf2dPJj+zp5Ef2dPIjezp5cE+naoUN4J5OjeQHPiUOI3s6hZE9nYIbuMIGcE+nRvIDV9gwsqdTGNnTKYzs6RRG9nQKI3s6hZE9nQK4p1O9woJ7OjWSH/iUOIzs6RRG9nQK4J5Ojd1m5Ao7sqdTGNnTKYzs6RRG9nQKI3s6hZE9ncLInk4B3NOpXmHBPZ0ayY98Sjyyp1MY2dMpgHs61XebkT2dArinUyP5kd9hwT2dGsmPXGFH9nQK4J5O9ZEH93RqJD9yhQX3dGokP3KFBfd0qu824J5OjeRHfocF93RqJA9dYVOQW/Ip2HPyR1fYHP0t+fxxRfWTs4+3T87xrjSmVx8dNd2eU9SSfrj6q9bDLaDO1OqJtAYirZFIayLSKkRalUirEWnNRFon4qYsN0SM5SGP11dni+771dnkxcjoRJS188hMxGSfGxlZs86SrXG1T2ldfMt/q7wYyYmI7+SRnIgnd16t6RqZjZGZiFVPXn0TkfDJIzkRZ++8Wiei8p1Hhpbhkwu3kUnRP4+MXQy/MWeMluGbI3Mx+U61zGiZfPeRTNdq3VittAzfHJmLyfdafbRMvvtIXgy/tVqvc/iNkcm0DN96u8kXw2/NGVqGb47MxeQ71bLD7WbnHcmL4bdWKy3DN0fmYvK9Vh8tk+8+khfDb6zWcp3Db40MLcO33m7KxfBbc+b6rsvWyKSrlu1Ty8r13Zi9RvJi+K3Ven3XZWtkLibfa/XRMvnOIxndxfCvV2t01zn81sjQMnzj7Sa6i+G35ky6RmZjZC4m36uWXd+N2WskL4bfWq3Xd122RuZi8p1Wn6dl8t1H8mL4jdXqr3P4rZGhZfjW283hP7Ixzpy5vuuyNTIXk+9Vy67vxuw1khfDb63W67suGyMTLibfafWFy2dmr5G8GH5rtV7n8Fsjk663m9dvN+Fi+K05c33XZWtkLibfq5Zd343ZayQvht9YrfH6rsvWyFxMvtPqi5fPzF4jeTH81mpN18hsjAwtw7febuLF8Ftz5vquy9bIXEy+Vy27vhuz00imi+E3Vmu6vuuyNTIXk++1+i6fmb1GMl2rdWO1XufwWyNDy/Ctt5s0D8MvUm8fnZy5xtXFp9uvLZbgSmtfcsluA7n8d3EvRnIe5j97JOdh/pNHcqJfxjx7JOd5Rzh7JOd5pzh7JOd5pzh7JNM1kjuN5DzvIBLcLQ8JWl5oneetoq11nveEttZ5SL6tdR7Wbmqd6BdM21rn4dW21nmIsq11HuZra01EWom4aaJfx5Tobx8t0bTFzxZ01WgxtHk7qF95O5QX57cT/T7m+WM5EfedPpYTceWhY2nPYznRr3a+eyyb5xMT/c7n+WM5EXefPpYTcf3pY5musdxtLCd6L/nkWMZyTztp65sW3qtbv7nkNYUXY8n73vPZsbQo61iavhpL3vee/ceS971n/7Hkfe/ZfSwn+qXT88eS971n/7Hkfe/Zfyx533v2H8tEO5Zq64ebufhibHjfY9pjw/tekuN9bLK86DaZ6HdVJebbC6ok3zwbyN6n9cO9vDgbmOiXUvcfm5neA3Yem4l+/XT/sZmJ0/cem5m4e++xmYmj9x6bdI3N5tjMxMV7j81MXLz32FxcvD02vFwc0v3Dg6XG9VrcLXEt/v7Nl48bPV28fPZt3HN4OP5YLv426rzEfd6op4l+BXWkUed9Szhz1HnfP84cdd43mzNHPV2jfsKo876NnTnqvO95Z4467xvkmaN+vZueMerXu+kJoz7RrwGPNOrXu+kZo369m54x6te76Rmjnq5RP2HUr3fTM0b9ejc9Y9Svd9MzRv16Nz1j1K930xNGfaJfxR5p1K930zNG/Xo3PWPUr3fTM0Y9XaN+wqhf76ZnjPr1bnrGqF/vpmeM+vVuesaoX++mJ4z6RL/2PtKoX++mZ4z69W56xqhf76ZnjHq6Rv2EUb/eTc8Y9evd9IxRv95Nzxj16930jFG/3k1PGPV0vZueMerXu+kZo369m54x6te76Rmjnq5RP2HUr3fTM0b98HfT1QE0uiCPn/wtn7e+tX27xQ6vKBZW3x1LpS7Zx7jmE/X+dDW/erg+rQ/Xyz2NkG4PrIycvbihs/cHZ5/CarOcNNez90Xi+qMfRR7yt1cbQwi53C4PoYT8ePk3tYFKbaRSm6jUCrDa4Hy+/e59cPHhBwzX9BX7YZX1o4s+eNCt6dvB6ds9fXv4zdfX6Wty69Wq4cXo57HTL8jpmxW3Xp0fYPaWvrqx0/djpx/GTj+OnX4aO/2jy1ZYMcBH/0PZ+paPDV1GNQ8NMYf/CLNfD1WCN1f/5Oi8rKcSck/+61vg89XqbsMYNd6H0YdXV5cit6xLeTjc6WRZG/oN2vzQ2Yehs6d6w93jh3cHUov8hru/WvAX4p3VgnPLzmqRMWd/tYVJbXZUapH/WtAG9ox8/B+clbymn38c/RdslOWWiGZ70PpdKjIZ7Sw18UjFPvXfVSoyEO0sFZmGPiu1rIf3WoI9ScU+8dlVKjIH7Su1IEPQzlKxCWhXqTPRUkPqTLTUkJp4pM5ESw2pM9FSQyoPLRUeWio0tCSOhpbE0dCSOBpaEkdDS+ISj1QaWhJHQ0viaGhJHA0tieOhJc9DS56HljwPLXkeWtrjl4NGkcpDS56HljwPLXkeWvI8tBR4aCnw0FLgoaXAQ0t7/JbFKFKnoqXVfkSLPEudipbqUqeipbrUqWipLnUqWqpKjVPRUl3qVLRUlzoVLdWlTkVLdamJRyoPLUUeWoo8tBR5aCny0FLioaXEQ0uJh5YSDy3t4fc7ilQeWko8tJR4aCnx0FLioSXhoSVoD+GdpfLQErR78M5SE49UHlqC9hjeWSoPLQkPLQkPLSkPLSkPLSkPLSkPLR3u4XyiVB5aUh5agnbN3lkqDy0pDy0ZDy0ZDy0ZDy1B+3bvLDXxSOWhJWi77p2l8tAStFH3zlJ5aAnaontnqTy0NJWXd0MqDy1N5eXdkMpDS1N5eTek8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpPLQ0l5d3XSoNLelcXt51qTS0pHN5edel0tCSusQjlYaWdC4v77pUGlrSuby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeW5vLyrkvloaW5vLzrUnloicfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vI3Hy9t4vLyNx8vbeLy8zSUeqTS0ZDxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbYd7edtdqmmpS/0wDlqvVg3+Ueq39MvQ6R/uuf259DWFe/oWGxMtyzrRsvlfT7TDPbdPlBp4pEYeqYlHqvBIVR6pxiMVm2p2lYpNQJ+TWlZe0hKeWDXOREsNqTPRUkPqTLTUkDoTLTWkJh6pM9FSQ+pMtNSQOhMtNaTOREsNqTy0lHhoKfHQUuKhpcRDS4d7bp8olYeWEg8tJR5aSjy0lHhoSXhoSXhoSXhoSXho6XDP7ROl8tCS8NCS8NCS8NCS8NCS8tCS8tCS8tCS8tDS4Z7bJ0rloSXloSXloSXloSXloSXjoSXjoSXjoSXjoaXDPbdPlMpDS8ZDS8ZDS8ZDSzYVLVU7EvNUtFSXOhUt1aVC09Kyvtx6dfb2KPVb+tAE1E4/jZ0+NKm004emj3b60ETRTh+aEtrpQ1f+ZvoFupq304eu0O30x666Zeyqe7jH8s7pj111y9hVt4xddcvYVbcMXXWzG7rqZjd01c1u6Kqb3dBVN7uhq252Q1fd7IauutkNXXWzG7rqZjd21fVjV10/dtX1Y1ddP3bVPdzzdef0x666fuyq68euutgequ30x6662B6q7fTHrrrYXqft9MeuutiepO30x6662N6h7fTHrrrYHp/t9MeuuthenO30x6662J6Z7fTHrrrY3pbt9MeuutgelO30x6662F6R7fTHrrrYno7t9Meuutjei+30x6662B6J7fTHrrrYXobt9Meuutieg+30x6662N6A7fTHrrrYHn7t9Meuuthee+30x6662J547fTHrrrY3nXt9Gl6hvNcfnR1qcP2DH9L/+BqHpzcEgrOtJ5+Lvl2cfHB6s8pO/1+7XKusV4aVL4LjcBCKxd/Sz6NnLyMnPweFd/imnyRevIl6a2KFElan/LLktb1k+P9k328TfodCn52drt4+TtXY3OSuD4n0fsqVHu1sfrkbxvrcvV9yabb3pSHzr6MnP0eHmmfyl7DQ6GSeva+SCy3q4tIY5mEkMvt8hDKj7/Q/k2tp1IbqNRGKrUJWG1wy7a4VttY/HP6Ap2+lbymn38c/Rd7bPWHgvMeHmijSDUeqZlHaqGRmpFp6LNSq852OSOj0M5SkTloZ6nIELSz1MQjdSZaakidiZYaUmeipYbUmWipIXUmWqpLLTy0VHhoqfDQUuGhpT088UaRykNLhYeWCg8tFR5aKjS0VBwNLRVHQ0vF0dBScTS0VFzikUpDS8XR0FJxNLRUHA0tFcdDS56HljwPLXkeWvI8tLSHB+UoUnloyfPQkuehJc9DS56HlgIPLQUeWgo8tBR4aGkP79BRpPLQUuChpcBDS4GHlgIPLUUeWoo8tBR5aCny0NIenq+jSOWhpchDS5GHliIPLUUeWko8tJR4aCnx0FLioaU9vHpHkcpDS4mHlhIPLSUeWko8tCQ8tCQ8tCQ8tCQ8tLSHx/IoUnloSXhoSXhoSXhoSXhoSXloSXloSXloSXloaQ9v6lGk8tCS8tCS8tCS8tCS8tAStFf3zlJ5aAnapXtnqTy0BO7PvatUHlqaysu7IZWHlqby8m5I5aElHi/vwuPlXXi8vAuPl3fh8fIuPF7ehcfLu/B4eRceL+/C4+VdeLy8C4+Xd+Hx8i48Xt6Fx8u78Hh5Fx4v78Lj5V14vLwLjZd3cDRe3otUFlpapLLQ0iJ1KlpK6286FnmWmnikTkVLdalT0VJd6lS0VJc6FS3VpU5FS1Wpc3l516VORUt1qVPRUl0qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpPLQ0l5d3XSoPLc3l5V2XykNLc3l516Xy0NJcXt51qTy0NJeXd10qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpPLQ0l5d3XSoPLc3l5V2XykNLc3l516Xy0NJcXt51qTy0NJeXd10qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpPLQ0l5d3XSoPLc3l5V2XykNLc3l516Xy0NJcXt51qTy0NJeXd10qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpNLTk5/LyrkuloSU/l5d3XSoNLXmXeKTS0JLn8fL2PF7ensfL2/N4eXseL2/P4+Xteby8PY+Xt+fx8vY8Xt6ex8vb83h5ex4vb8/j5e15vLw9j5e35/Hy9jxe3p7Hy9vzeHl7Hi9vz+Pl7Xm8vD2Pl7fn8fL2PF7ensfL2/N4eXseL2/P4+Xteby8PY+Xt+fx8vY8Xt6ex8vb83h5ex4vb8/j5e15vLw9j5e35/Hy9jxe3p7Hy9vzeHl7Hi9vz+Pl7Xm8vD2Pl7fn8fL2PF7ensfL2/N4eXseL2/P4+Xteby8PY+Xt+fx8vY8Xt6ex8vb83h5ex4vb8/j5e15vLw9j5e35/Hy9jxe3p7Hy9vzeHl7Hi9vz+Pl7Xm8vD2Pl7fn8fL2PF7ensfL2x/u5V3uUotqXepycODkPjDBP0r9ln4YO/0Inb6mh2lpsTHRsqwTLZt/mmiJR6rwSFUeqcYjNfNILTRSD/fcfqfUslZWLeGJago21ewqFZuAdpU6Ey01pCYeqTPRUkPqTLTUkDoTLTWkzkRLDakz0VJVanA0tBQcDS0FR0NLwdHQUnCJRyoNLQVHQ0vB0dBScDS0FBwPLXkeWvI8tOR5aMnz0NLhntsnSuWhJc9DS56HljwPLXkeWgo8tBR4aCnw0FLgoaXDPbdPlMpDS4GHlgIPLQUeWgo8tBR5aCny0FLkoaXIQ0uHe26fKJWHliIPLUUeWoo8tBR5aCnx0FLioaXEQ0uJh5YO99w+USoPLSUeWko8tJR4aCnx0JLw0JLw0JLw0JLw0NLhntsnSuWhJeGhJeGhJeGhJeGhJeWhJeWhJeWhJeWhpcM9t98qteZhFnQqWqpLhaYls+JuV1v29ij1W/rQBNROH5pq2ulDk0ozfYOmj3b60ETRTh+aEtrpQ1f+dvrQ1bydPnSFbqc/dtW1sauujV11beyqm8euutj+xu30x6662P7G7fTHrrrYPsTt9Meuuth+we30x6662L6+zfSxvXrb6Y9ddbE9ddvpj111sb1v2+mPXXWxPWrb6Y9ddbG9ZNvpD111I7bnazv9oatuxPZmbac/dNWNbuiqG7F9UdvpD111I7Z/aTv9oatuxPYZbaaP7R3aTn/sqovt8dlOf+yqi+3F2U5/7KqL7ZnZTn/sqovtbdlOf+yqi+1B2U5/7KqL7RXZTn/sqovt6dhOf+yqi+292E5/7KqL7ZHYTn/sqovtZdhOf+yqi+052E5/7KqL7Q3YTn/sqovt4ddOf+yqi+21105/7KqL7YnXTn/sqovtXddOf+yqi+0x105/h6prIa33SKWRfgq3rmqfNN8vzi8uDs7KLY/gcsiP6T9fXu/tjXv4xo0i1XikZh6phUbqHr5xo0j1PFIDj9TIIzXxSOWhJeGhJeGhJeGhJeGhJeWhJeWhJeWhJeWhpT1840aRykNLykNLykNLykNLykNLxkNLxkNLxkNLxkNLe/jyjSKVh5aMh5aMh5aMh5aMh5YyDy1lHlrKPLSUeWhpDz/FUaTy0FLmoaXMQ0uZh5YyDy0VHloqPLRUeGip8NDSHj6Yo0jloaXCQ0uFh5YKDy0VGlpKjoaWkqOhpeRoaCk5GlpKLvFIpaGl5GhoKTkaWkqOhpaS46Elz0NLnoeWPA8teR5a2sN3dhSpPLTkeWjJ89CS56Elz0NLgYeWAg8tBR5aCjy0tIdf8ChSeWgp8NBS4KGlwENLgYeWIg8tRR5aijy0FHloaQ+f51Gk8tBS5KGlyENLkYeWIg8tJR5a2sMb2yyuUovUpapP/paOl/snh1S+J3S027XE9UGJ+vvF1pV9HDr7NHT2R//AhN6dulWlnr0vEsvt6iIP+b9ctSHkcrs8hPLjIv+mVqnUGpXaTKW2MKkVR6XWU6kN86jV5ZpbuQ1enrVGYK3B+awrI8fin9NP0Ol/DvGzrIifzf8a8QWZi3aWigxFO0tFJqKdpSLj0M5SkVloX6mKDEI7S0WmoE+fJ7mVC0p4Ok9SZATaWSo2Ae0qNfFInYmWGlJnoqWG1JloqSF1JlpqSJ2JlupSbSZaakjloSXjoSXjoaU9TK1HkcpDS8ZDS8ZDS8ZDS8ZDS5mHljIPLWUeWso8tLSHqfUoUnloKfPQUuahpcxDS5mHlgoPLRUeWio8tFR4aGkPU+tRpPLQUuGhpcJDS4WHlgoNLYmjoSVxNLQkjoaWxNHQkrjEI5WGlsTR0JI4GloSR0NL4nhoyfPQkuehJc9DS56HlvYwtR5FKg8teR5a8jy05HloyfPQUuChpcBDS4GHlgIPLe1haj2KVB5aCjy0FHhoKfDQUuChpchDS5GHliIPLUUeWtrD1HoUqTy0FHloKfLQUuShpchDS4mHlhIPLSUeWko8tHS4EfeJUnloCdqye2epPLQEbda9s1QeWoK26d5ZKg8tQRt07yyVh5am8vJuSOWhpam8vBtSeWhpKi/vhlQeWprKy7shlYeWeLy8hcfLW3i8vIXHy1t4vLyFx8tbeLy8hcfLW3i8vIXHy1t4vLyFx8tbeLy8hcfLW3i8vIXHy1t4vLyFx8tbeLy8hcfLW3i8vIXHy1t4vLyFx8tbeLy8hcfLW3i8vGUuL++0/tRskSepc3l516VORUt1qVPRUl3qVLRUl5p4pE5FS3WpU9FSXepUtFSXOhUt1aXS0JLO5eVdl0pDSzqXl3ddKg0tqUs8UmloSefy8q5LpaElncvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeW5vLyrkvloaW5vLzrUnloaS4v77pUHlqay8u7LpWHluby8q5L5aGluby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeW5vLyrkvloaW5vLzrUnloaS4v77pUHlqay8u7LpWHluby8q5L5aGluby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeW5vLyrkvloaW5vLzrUnloaS4v77pUHlqay8u7LpWHluby8q5L5aGluby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeWeLy8lcfLW3m8vJXHy1t5vLyVx8tbeby8lcfLW3m8vJXHy9t4vLyNx8vbeLy8jcfL21zikUpDS8bj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+VtPF7exuPlbTxe3sbj5W08Xt7G4+Vth3t5l7vUolqX6jU5uQ9M8I9Sv6Z/uD/3zul76PQ1PUxLi42JlmWdaNn8ryfa4Z7bJ0qNPFITj1Thkao8Uo1HauaRik01e0rN2AT0Oall5SUt4YlV80y01JA6Ey01pM5ESw2piUfqTLTUkDoTLTWkzkRLDakz0VJD6ky0VJdaeGip8NBS4aGlwkNLh3tunyiVh5YKDy0VHloqPLRUaGgpOxpayo6GlrKjoaXsaGgpu8QjlYaWsqOhpexoaCk7GlrKjoeWPA8teR5a8jy05Hlo6XDP7ROl8tCS56Elz0NLnoeWPA8tBR5aCjy0FHhoKfDQ0uGe2ydK5aGlwENLgYeWAg8tBR5aijy0FHloKfLQUuShpcM9t0+UykNLkYeWIg8tRR5aijy0lHhoKfHQUuKhpcRDS4d7bp8olYeWEg8tJR5aSjy0lHhoSXhoSXhoSXhoSXho6XDP7ROl8tCS8NCS8NCS8NCS8NCS8tCS8tCSTkVLNcfXrFPRUl1q4pEKTUtmxd2utuztUeq39KEJqJ0+NNW004cmlXb60PTRTB/bw7qdPjQltNOHrvzt9KGreTt96ArdTn/sqovt89xOf+yqi+3H3E5/7KqL7ZvcTn/sqovtb9xOf+yqi+1D3E5/7KqL7RfcTn/sqovt69tOf+yqi+2/205/7KqL7ZPbTn/sqovtZ9tOf+yqi+07205/7KqL7Q/bTn/oqluwfVzb6Q9ddQu232o7/aGrbnFDV92C7XXaTn/oqluwPUnb6Q9ddQu2d2gzfWw/0Hb6Y1ddbN/OdvpjV11sf812+mNXXWwfzHb6Y1ddbL/KdvpjV11sX8l2+mNXXWz/x3b6Y1ddbJ/GdvpjV11sP8V2+mNXXWzfw3b6Y1ddbH/CdvpjV11sH8F2+mNXXWy/v3b6Y1ddbF++dvpjV11s/7x2+mNXXWyfu3b6Y1fdufzoat2lZS4/urpU6Gpek/ot/aOrucTbaHpRX09fffK3oV+uXi8O6Za9Dp29DZ390aVcw8NUlsbELxLLukzkIf+Xazx8fGXr++Xh42zgeZ0UJrWHW7ydq9ZTqQ1UaiOV2kSlVuZRq8s1t3IbvDxrVWCtwfmst0flYvHP6Rt0+lbymn7+caa9eFRZ1heCbP7XLwSCzEU7S0WGon2lKjIR7SwVGYd2lorMQjtLRQahnaWmiaRWfQiLIiPQzlKxCWhXqTPRUkPqTLTUkDoTLdWl2ky01JA6Ey01pM5ESw2pM9FSQ2rikcpDS8ZDS8ZDS8ZDS8ZDS5mHljIPLWUeWso8tHS4FeKJUnloKfPQUuahpcxDS5mHlgoPLRUeWio8tFR4aOlwC8sTpfLQUuGhpcJDS4WHlgoLLUXnWGhpkcpCS4tUFlpapLLQ0iI18UhloaVFKgstLVJZaGmRykJLi1QeWvI8tOR5aMnz0JLnoaXDLWNPlMpDS56HljwPLXkeWvI8tBR4aCnw0FLgoaXAQ0uHW/2eKJWHlgIPLQUeWgo8tBR4aCny0FLkoaXIQ0uRh5YOt2g+USoPLUUeWoo8tBR5aCny0FLioaXEQ0uJh5YSDy0dboF9olQeWko8tJR4aAnatXtnqTy0BO3XvbNUHlqCdureWSoPLUF7dO8slYeWwP25d5XKQ0tTeXk3pPLQ0lRe3g2pPLQ0lZd3QyoPLdF4eS9SeWiJxst7kcpDSzRe3otUHlqi8fJepPLQEo2X9yKVh5ZovLwXqTy0ROPlvUjloSUaL+9FKg8t0Xh5L1J5aInGy3uRykNLNF7ei1QeWqLx8l6k8tASjZf3IpWHlmi8vBepPLQ0l5d3Wn9qtsiz1KloqS418UidipbqUqeipbrUqWipLnUqWqpLnYqWalL9XF7edalT0VJdKg0t+bm8vOtSE49UGlryc3l516XS0JKfy8u7LpWHluby8q5L5aGluby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeW5vLyrkvloaW5vLzrUnloaS4v77pUHlqay8u7LpWHluby8q5L5aGluby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeW5vLyrkvloaW5vLzrUnloaS4v77pUHlqay8u7LpWHluby8q5L5aGluby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+Whpbm8vOtSeWhpLi/vulQeWprLy7sulYeW5vLyrkvloaW5vLzrUnloaS4v77pUHlqay8u7LpWHluby8q5L5aGluby861J5aGkuL++6VB5amsvLuy6Vh5bm8vKuS+WhJR4vb8/j5e15vLw9j5e35/Hy9jxe3p7Hy9vzeHkHHi/vwOPlHXi8vAOPl3dwiUcqDS0FHi/vwOPlHXi8vAOPl3fg8fIOPF7egcfLO/B4eQceL+/A4+UdeLy8A4+Xd+Dx8g48Xt6Bx8s78Hh5Bx4v78Dj5R14vLwDj5d34PHyDjxe3oHHyzvweHkHHi/vwOPlHXi8vAOPl3fg8fIOPF7egcfLO/B4eQceL+/A4+UdeLy8A4+Xd+Dx8g48Xt6Bx8s78Hh5Bx4v78Dj5R14vLwDj5d34PHyDjxe3oHHyzvweHkHHi/vwOPlHXi8vAOPl3fg8fIOPF7egcfLO/B4eQceL+/A4+UdeLy8A4+Xd+Dx8g48Xt6Bx8s78Hh5Bx4v78Dj5R0O9/Iud6lFtS7Va3JyH5jgH6V+Sz+OnX6CTl/Tw7S02JhoWdaJls0/TTThkao8Uo1HauaRWmikHu65faJUzyMVm2p2lYpNQJ+TWlZe0hKeWPVwz+0Tpc5ESw2pM9FSQ+pMtNSQOhMtNaTOREt1qWUmWmpInYmWGlJnoqWGVB5aOtxz+0SpPLRUeGip8NBS4aGlQkNL0dHQUnQ0tBQdDS1FR0NL0SUeqTS0FB0NLUVHQ0vR0dBSdDy05HloyfPQkuehJc9DS4d7bp8olYeWPA8teR5a8jy05HloKfDQUuChpcBDS4GHlg733D5RKg8tBR5aCjy0FHhoKfDQUuShpchDS5GHliIPLR3uuX2iVB5aijy0FHloKfLQUuShpcRDS4mHlhIPLSUeWjrcc/tEqTy0lHhoKfHQUuKhpcRDS8JDS8JDS8JDS8JDS4d7bp8olYeWhIeWhIeWhIeWhIeWlIeWlIeWlIeWlIeWDvfcPlHqVLRUc3yNOhUt1aVORUt1qdC0ZFbc7WrL3h6lfksfmoCa6Rs01bTThyaVdvrQ9NFOH5oo2umnsdOHrvzt9KGreTt96ArdTn/sqovt89xMH9u7uZ3+2FUX22O5nf7YVRfbC7md/thVF9uzuJ3+2FUX21u4nf7YVRfbA7id/thVF9urt53+2FUX21O3nf7YVRfb+7ad/thVF9ujtp3+0FU3YXvJttMfuuombM/XdvpDV93khq66CdtvtZ3+0FU3YfuittMfuuombP/SZvrYnqTt9Meuutjeoe30x6662B6f7fTHrrrYXpzt9Meuutieme30x6662N6W7fTHrrrYHpTt9Meuutheke30x6662J6O7fTHrrrY3ovt9Meuutgeie30x6662F6G7fTHrrrYnoPt9MeuutjegO30x6662B5+7fTHrrrYXnvt9MeuutieeO30x6662N517fRpeobTXH50danD9gx/S//oai7xNppe1NfTV5/8beiXq9eLQ7plX0bO/nAnuH2zP7qUa3iYytKY+EViWZeJPOT/co2HkMvt8hBKyE/r5HB/t3PVRiq1iUqtUKlVKrVGpTbPo1aXa27lNnh51lqAtQbns94elYvFP6V/uI3b59K3ktf0848z7cWjyrK+EGTzv34hUGQu2lkqMhTtLBWZiHaWmnikIrPQzlKRQWhnqcgU9FmpVR/CpMgItLNUbALaU6rNREsNqTPRUkPqTLTUkDoTLTWkJh6pM9FSQ+pMtNSQykNLxkNLxkNLmYeWMg8tZR5ayjy0dLgN4YlSeWgp89BS5qGlzENLmYeWCg8tFR5aKjy0VHho6XD7yBOl8tBS4aGlwkNLhYeWCg0tiaOhJXE0tCSOhpbE0dCSuMQjlYaWxNHQkjgaWhJHQ0vieGjJ89CS56Elz0NLnoeWDrdrPVEqDy15HlryPLTkeWjJ89BS4KGlwENLgYeWAg8tHW6ze6JUHloKPLQUeGgp8NBS4KGlyENLkYeWIg8tRR5aOtwe+USpPLQUeWgp8tBS5KGlyENLiYeWEg8tJR5aSjy0dLit9YlSeWgp8dBS4qGlxENLiYeWhIeWoF27d5bKQ0vQft07S008UnloCdqme2epPLQEbdC9s1QeWprKy7shlYeWpvLybkjloaWpvLwbUnloaSov74ZUHlri8fIWHi9v4fHyFh4vb+Hx8hYeL2/h8fIWHi9v4fHyFh4vb+Hx8hYeL2/h8fIWHi9v4fHyFh4vb+Hx8hYeL2/h8fIWHi9v4fHyFh4vb+Hx8hYeL2/h8fIWHi9v4fHylrm8vNP6U7NFnqVORUt1qVPRUl3qVLRUlzoVLdWk6lxe3nWpU9FSXepUtFSXOhUt1aUmHqk0tKRzeXnXpdLQks7l5V2XykNLc3l516Xy0NJcXt51qTy0NJeXd10qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpPLQ0l5d3XSoPLc3l5V2XykNLc3l516Xy0NJcXt51qTy0NJeXd10qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpPLQ0l5d3XSoPLc3l5V2XykNLc3l516Xy0NJcXt51qTy0NJeXd10qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8tzeXlXZfKQ0tzeXnXpfLQ0lxe3nWpPLQ0l5d3XSoPLc3l5V2XykNLc3l516Xy0NJcXt51qTy0NJeXd10qDy3N5eVdl8pDS3N5edel8tDSXF7edak8tDSXl3ddKg8t8Xh5K4+Xt/J4eSuPl7fxeHkbj5e38Xh5G4+Xt7nEI5WGlozHy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL23i8vI3Hy9t4vLyNx8vbeLy8jcfL2w738i53qUW1LtVrcnIfmOAfpX5LP4ydfoROX9PDtLTYmGhZ1omWzT9NtMQjVXikKo9U45GaeaQWGqmHe26fKBWbanaVik1An5NaVl7SEp5YNc9ESw2piUfqTLTUkDoTLTWkzkRLDakz0VJD6ky0VJdaZqKlhtSZaKkhlYeWCg8tHe65faJUHloqPLRUeGip8NBSoaGl7GhoKTsaWsqOhpayo6Gl7BKPVBpayo6GlrKjoaXsaGgpOx5a8jy05HloyfPQkuehpcM9t0+UykNLnoeWPA8teR5a8jy0FHhoKfDQUuChpcBDS4d7bp8olYeWAg8tBR5aCjy0FHhoKfLQUuShpchDS5GHlg733D5RKg8tRR5aijy0FHloKfLQUuKhpcRDS4mHlhIPLR3uuX2iVB5aSjy0lHhoKfHQUuKhJeGhJeGhJeGhJeGhpcM9t0+UykNLwkNLwkNLwkNLwkNLykNLykNLykNLykNLh3tuf0qqWXG3qy17e5T6LX1oAmqnD0017fShSaWdPjR9tNOHJopm+gZNCe30oSt/O33oat5OH7pCt9Mfu+pi+zy30x+76mL7MbfTH7vqYvsmN9PH9kJupz921cX2LG6nP3bVxfYWbqc/dtXF9gBupz921cX26m2nP3bVxfbUbac/dtXF9r5tpz921cX2qG2nP3bVxfaSbac/dtXF9nxtpz901S3Y3qzt9IeuugXbQ7Wd/tBVt7ihq27B9i9tpz901S3YPqPt9IeuugXbD7SZPrbHZzv9sasuthdnO/2xqy62Z2Y7/bGrLra3ZTv9sasutgdlO/2xqy62V2Q7/bGrLranYzv9sasutvdiO/2xqy62R2I7/bGrLraXYTv9sasutudgO/2xqy62N2A7/bGrLraHXzv9sasuttdeO/2xqy62J147/bGrLrZ3XTv9Haru8r7//eLgnK+nn7Xo94uzxXu7aPiQ8nx1CuvVyVLj6ii3i1NwD9e+uDSYL7ecf0zj9SjqOohFGhe79ZO90/x48bcBD9eAHzvg8RrwYwc8/e4BD87LOuCpsSOql9vTWe4hj1vcq732nvzypNaLfcrfs5eDsw/5tp9rKKWefQi5rE81LO/bz/u5jp2+jZ1+Hjv9MnT6OxjjnZX+8o8//f3nX375+b/+45e//fmP//z5b3/9x0ew+/g/r81OLNlNl6VyT9W/LgfZf784PhQw8R8j99phZMfPT2/+fHnz5+ubP9/e/Pn5zZ9f3vv5r80Zdvx8/+bPf/P6tTevX3vz+rU3r1978/q1T6/fj6DcE1Q6grLrCfI9QaEnKPYEpZ4g6QnSnqCeGZF7ZkTumRGlZ0aUnhlRemZE6ZkRpWdGlJ4ZUXpmROmZEaVnRpSeGeGd64ryXVGhK+r1rJBwA/blP/U5KnVFSVeUdkVZV1Tuiio9Ua+/RN2M8l1RoSuqa274rrnhu+aG75obr7+Faaq3987lP+NzVO6KKj1Rr7/q14zyXVGhKyp2RaWuKOmK0q6orrkRuuZG6JobsWtuxI254W4n1FZibND6D1fLcy2J4YB7xAPukQ64hxxwDz3gHvb77yEp3P5SK0nuf635+OvB6z+U+PUvJcG7H67/mlPeIyeLt5xyKo2c7otPH/5043P4lk/Byic5sHz80fkkr7cZl0T0aQalAJdRhMsowWUkcBkpXEYGl1GGy6igZSQOLiO4PVvg9myB27MFbs8WuD1b4PZsgduzBW7Pljfv2R/3UHfAPfwB99hjp8zm13vk53cwjQfcIx1wD9n7HvZ8Dz3gHnbAPfbYFUpa71HkxfMo77+HuQPuscM6V4m3v+2oWGidmxRbv6NZHmZ6TOlbRgEuowiX0Q47jjq/frHWhfg0M/IezyGmVXXU55Wa4wH3SAfcY4fdWdP917PSwxcI13voAfewA+6Rd75HlOd7lPffo7gD7rHH7pz0vvO43Nh5dC2tmh/o9vsJaQlg+USwfBJYPgKWj4LlY2D5ZLB8ClQ+wTmwfLD25+Cw9ufgsPbn4LD25+Cw9ufgsPbn4Oz4N6+0tlQvr86/fvMKLsNlVNAy8g4uIw+XUYDLCO2UI/gEl5HAZaRwGRlcRhkuo8P37AVVb1cvFGRPGQUHl5GHyyjAZRThMkpwGQlcRgqXkcFllNEyiifsR+vL0fKf8TmjE9Zavo/RQxfXmtHxa83H22cvLCTPGSlcRgaXUYbLqKBllBxcRh4uo3BqRva8Z6cIl1GCy+iEPTusVcTH57qWFC4jg8sow2VU0DISB5eRh8sowGV0/J4d1m9CLW/U5TmjBJeRwGWkcBkZXEYZLqOClpE6uIw8XEYBLqMT9iONa0Yv3kX0hLWW72OU03NGx6+1eK+0UZ7J3xxcRh4uowCXUYTLKMFlJHAZ6akZ6fOebQaXUYbL6Iw9e60iMTzXtezgMvJwGQW4jCJcRgkuI4HLSOEyMriMMlxGcHt2gduzC9yeXeD27AK3Z5c379lf7yEH3EMPuIcdcI98wD3K2+8Rd+mqkXy7WvXBQ329xx47jvn1HhZb/nyquaxX+/icUYDLKMJllOAyEriMFC4je29GX++RD7hHef89dulVad3DH3CPcMA99tifGnN3l56P1j3kgHvoAfewA+6RD7hHef89dulvaN3DH3CPcMA9Dljn4YB1Hg5Y5+GAdR4OWOfhgHUeDljn8YB1Hg9Y5/GAdR4PWOfxgHUeD1jn8YB1Hg9Y5/GAdR4PWOfpgHWeDljn6YB1ng5Y5+mAdZ4OWOfpgHWeDljn6YB1ng5Y53LAOpcD1rkcsM7lgHUuB6xzOWCdywHrXA5Y53LAOpcD1rkesM71gHWuB6xzPWCd6wHrXA9Y53rAOtcD1rkesM71gHVuB6xzO2Cd2wHr3A5Y53bAOrcD1rkdsM7tgHVuB6xzO2Cd5wPWeT5gnecD1nk+YJ3nA9Z5PmCd5wPWeT5gnecD1nk+YJ2XA9Z5OWCdlwPWeTlgnZcD1nk5YJ2XA9Z5OWCdl/evwfRbvr+nP9zja5TvigpdUbErKnVFSVeUdkVZV1Tuiio9Ub5rbviuueG75obvmhu+a274rrnhu+aG75obvmtu+K65EbrmRuiaG6FrboSuuRG65kbomhuha26ErrkRuuZG6JobsWtuxK65EbvmRuyaG7FrbsSuuRG75kbsmhuxa27ErrmRuuZG6pobqWtupK65kbrmRuqaG6lrbqSuuZG65kbqmhvSNTeka25I19yQrrkhXXNDuuaGdM0N6Zob0jU3pGtuaNfc0K65oV1zQ7vmhnbNDe2aG9o1N7RrbmjX3NCuuWFdc8O65oZ1zQ3rmhvWNTesa25Y19ywrrlhXXPDuuZG7pobuWtu5K65kbvmRu6aG7lrbuSuuZG75kbumhu5a26UrrlRuuZG6ZobpWtulK65UbrmRumaG6VrbpSuuVF65oZ0nYtK17modJ2LSte5qHSdi0rXuah0nYtK17modJ2LSte5qHSdi0rXuah0nYtK17mo/IZzUQn/qv+9weeYvl/tc7r/gp/4b7eQ999C338Le/8t8vtvUd5+i99wSvy7b+Hff4vw/lvE99/i/as7vH91h/ev7vD+1R3ev7rD+1d3fP/qju9f3fH9q/uEn1upWxzLCT+3EkpaMyrlOaMIl1GCy0jgMjrBuj/bLaPo3HNGBpdRhsuooGV0ws+ttDLycBkFuIxO2LOrRvlyxs+tNDISuIwULiODywjtJyDkjJ9bqWd0xs+tNDLycBkFuIzg9myF27MVbs8+4Sdp6j8gLCf8JI134ZaRd08/kyEn/CRNKyMPl1GAy+iEn6Evcs8oP2eU4DISuIwULiODyyjDZVTQMjrhJ2nqP0MvJ/wkTSujAJdRhMsowWUkcBkpXEYGl1GGy6igZVTg9uwCt2cXtD1bX38lSIu7veVp8Xc69+XFLXJItz8G5aDh8eKvd0hvv4O8/Q769jvY2++Q336H8u47vP7i0K538J+8w9eg0BMUe4LePk3C26dJePs0iW+fJtG//Q7h7Xd4+9Yf3771R+lYRFF7gj678v6w/MN/XPr66xne+Vukd/H+VRz/qoqbuw2C+fB46R8+uqPe+/H2+z8+3r50ZKn8+uPzDh9/O0k0jb/++PL7P351SrFiv/r4199P2O/j/e/++GXR3JZP+vWjff3NgU9+/O0cJ4v++uPj7/94uz3a/Dw4acePL7+a98s/wseFrx9wstugyoN3jsr2M6tGhE9HxE9HpE9HyOciln/Ejwv96+aJ5Wj4NtbyuExjih9386+bJ5pRvisqdEXFrqjUFSVdUdoVZV1RuSuqa26ErrkRuuZG6JoboWtuhK65EbrmRuiaG69fN5YDutuZwnLq456jcldU6Yl6jfrNKN+M8vIc9XoMSyhrlDyP4WtDlOVVdjVgC/E56rUhSjPKd0WFrqjXuu4VQlPJT1GvC2ozyndFha6o169F4mw9dQvlOSp1RUlXlHZFWTMqpqeo19+dUpF7lD2vr9ffb2pGxa6o1BUlXVEbY1jWGaXued8w3xX1Upe5sL5MPfLtGvU6Q01uvVfyz1G5K6r0RL3+267a+p1itfI8e1///bUZFbqiYldU6oqSrijtirKeqLLxvGSdvabP+0bZOFxSWWeve64pJXVFSc9K2bAoaEVZV1TuiiodUWHDoqAV5buiQldU7IpKXVHSFaVdUT1zI/jmfpif53zwvisqdEXFrqjXazlHWaPEPUe9rinZ4hqV9Slq4+9CrSjfFRW6ol6PYdZyj7LnqNQVJV1R2hVlXVG5K6r0RG39IWU9uVz+8/l5xVb90pKf13JMXVHSFaVdUdYVlbuiSk/UxptvK2rjD3Lrtx9ekUPYePOt80ZIsSsqdUVJV5R2RVlP1Otv2SxHEWk9iE/+xU7/+rswvyHu9Z/TUlBd44I9r+jXvPcb4qwzLnfGla64+Jr7fkOc74wLnXGxMy5txK2v7B9x9hwnnXHaGWedcbkzrnTELf9KH1dvLEKX1r+MLf9dnhZhiX1hqS9M+sK0L8z6wnJfWOkK8xurvR33erVLWb9UuPy3Pp/abKz2dlzsjEudcbIRZ+4el1/EaWfc6+enLt9eB5YjVPe0m238vXO5NuR7XHo+E3j93vcb4kJnXOyMSxtxWe5xxZ7jpDNOO+OsMy53xpW+uOA647bmSylr3HIE8RwXOuNiZ9zWfLmvvyXux/X3wnAp+PXrNIsEV1rXp/sLwvLfL/4aFAQ0LwXNy0DzyqB5Fcy8ogPNy4PmFUDziiflZeUhr+e/KsXd9nt/z8s/178oB91HD7qPHXSffNB9yjH3Se6g+/iD7rO138gDD+qLuNgZlzrjpDNOO+OsMy53xpW+OHGdcb4zrnO+SOd82fh2ti5/trivA3l+LxbpjNPOOOuMy31xuvHcY7rvD/HFNzHVd8ZtjGe8n7ZqtGdu0A194u/vcfLiOwta+uLMdcb5zrjQGRc741JnnHTGaWfcxnoQtXucPfOcbc2Xh3kmP/Qfv6p7O7aGbXw77cyMsoPLyMNlFOAyinAZJbiMBC6jjdWv/n4uvxxcP+1jG38QU5Vwj3ux/238aUuX4nqPS+E5TjrjtDPOOuNyZ1zpitv4FuNviPOdcaEzbmN3UH2cL/k5LnXGSWecdsZtzBdzd/634J/jcmdc6Yvb+ntaM853xoXOuNgZtzFfLD3ESXqOk8447Yyzzrit+RIf4158e7b0xW39Pa0Z5zvjQmdc7IxLnXFb8+V+nrtsE8/7xNbfo5px1hmXO+O25os+xj3V97D195BmnO+MC51xsTMudcZJZ9zGfMkPfJbDc73dOv9uxuXOuNIXt3XenN1j3IvvYPrOuNAZFzvjUmecdMZpZ9wW7+Y79+Rf9T2+OI+PFlYOjBafv7W5dX786fukcr+PvviecznmPlvn07vfxx90n3DQfeJB90kH3UcOuo/udB/N9/s8f1s2iL1Bz6v75IPuU465j7qD7rPXflDWv4vE/Pz9y6DhoPvEg+6TDrqPHHQfPeg+dtB98kH32Wk/yO6+TrN/fo8y9wY9r+7jD7pPOOg+8aD77LQf5Ojv90nP+7XJQffRg+5jB90nH3Sfcsx9sjvoPv6g++y0H2R5WKfyfA6S4xv0vLpPOug+ctB99KD7WNffA0POnXGlL664zjjfGRc642JnXOqMk8447YzrnC+lc76Uvvmy1b3b+l7YVveuxvv3wzU5/xyXOuOkM04746wzLnfGlb64rb93NuN8Z1zojOucL75zvvjO+bLx94+WG0Hc+PtHO67PHSDGTneA1OkOkDrdAVKnO0DqdAfY+HtEO04647QzrtMdIHW6A6TSFyeuM853xoWOuOVf8nH165tKWX3hH8DOx29m1fo18LX/S7ztFfnBl9HHb7/hEz8fkj4fIp8P0c+H2OdDXs7DvFrg5pSfQsqnQ16fNtdD/OdDwudD4udD0udD5PMh+vkQ+3zI66ef129ilvJDyPMbV1zNhJY/BdxXcwxfP7689eNfn1nu9/H+vR8f3vvx8b0fn9778fLej9cdPz7Hp4+39358fu/Hv1y1Zf3hkRLt1/vI69PCeoj/fEj4fEj8fEj6fIh8PkQ/HfL6KKIekj8f8vLph/XrnuGxOfDbhNkwL2rE+I6Y0BETO2JSR4x0xLycBAsW32JKfI6xjpjcEVM+H/P6EKMR4ztiwidjln/Zx5Ubs+7BdME9nCWEb7+cszHtWkGxJyj1BElPkPYEWU9Q7gkqHUGvp18rqGdG+J4Z4XtmhO+ZEb5nRvieGeF7ZoTvmRGvGwPK/XjGufQU9LoroBXke4JCT1DsCUo9QfLZoOVf+ePSjYO4vHbr+fLDqcK30PI19HXpLW79BePycJL68XvHf/jX8s//+8e///zHP/3yl38sQR//3//565//+fPf/vr9n//8f/99+//86e8///LLz//1H//997/9+S//+T9//8t//PK3P3/8/35y3//Pv3/8doWq/8PXHzP7dynyRZ183WA+/p9Ov6j3X2fXxz8XKF7+trL+zuPXayR/0bj+fFz8/r/k9SPKF0vrb6V9/C9B85flr37f76j2xex2cVj+dhxEbvcLUr6EJbd/fffu/LgkLv9bzO6W75K8u0VHn7/EEG/RMaTln7qemX3LNn2Rsp6Gff2fivtS1lsuS+/LsijWevhtUL5oud3EB/viY1if/tf/MekX8etT/fY/yRdZPuZfyxP7/w==",
|
|
3644
|
+
"bytecode": "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",
|
|
3645
|
+
"debug_symbols": "7V3bjuW2sf2XeZ4HsW4k8yuBETiOTzCAYQe2c4CDIP9+1O3Z2j3WbbpGm1q1qRejt0dLtVQqFouUVuk/H/7x49///c+/ffr5f3757cNf/vqfDz/98sP3v3/65efx138+JHr9f7/96/ufX37+9vv3v/7+4S/JjD5++PHnf7z8mem/Hz/8z6effvzwFxv/nB1MZPnzwUSlTgdXXTq4Svl8MA+Utg9OJqwTD5H7uUeTSydPZDcmSfR+dJGls7Px7eSShi+O/u7jh8SXZ1Y8I5dnVjyjl2dWPGPf7BkZ6u1gSVSmg3N9NZAfbaC808ALpi5iSk43TB3STjxUoukW13w/mJcOHrLV2z0b6vDm8KV7Vqze7nDJzDvxUGSKhyJZdo5mvR0s9CYabDHkJ78TD7p9cOI0OZw57Rw8pJs70mDl7cHj3aHhujvAdydddwf47tB1d77i7uTJh/QljSWH53w7ccpVv+nu8HV3gO+OXHcH+O7oN98dTnqr4TlV3rk7SXgqs/Owc+Yh6XTf9U4j6dKFsvAUJWJ3HunzlVo3V5q7udLSzZXWXq6Uh26uNHVzpdTNlXI3VyrdXGk3NRJ3UyNxNzUSd1MjcTc1knRTI0k3NZJ0UyNJNzWSSDdX2k2NJN3USNJNjSTd1EjSTY2k3dRI2k2NpN3USNpNjaTSzZV2UyNpNzWSdlMjaTc1knZTI1k3NZJ1UyNZNzWSdVMjmXRzpd3USNZNjWTd1EjWTY1k3dRIuZsaKXdTI+VuaqTcTY2UpZsr7aZGyt3USLmbGil3UyPlbmqk0k2NVLqpkUo3NVLppkYq0s2VdlMjlW5qpNJNjVS6qZFKNzVS7aZGqs9UI02kWVP54krnRyebWI880swvz1RRvcsv+Y1fKs388kT1l+rUokrrrl+GNOn4B35zNC8xoVrrxITvqn+Wpf5XTHXizW/OTenV5XK5/HiXy8BTWlT9s8ufqCJ9oMt5kLvLyzdG+ROVxjgu347yJ6rRH+rye2JJ35rLn2ixgOPy7Sh/olXLI12e7oklfWMuT8MTrZ9wfL4Z5qPly+df5fN7aiH+1jh/olUijs934vxagX7Vcqjke+S+WfWv+DxPvZ25pDe7RPkPn0uvPicebpdIQl/4/NUx3S4U9xzT7XJuzzHdLrpEpvSlg+2lL56SHQnf3bjS6rPvxqBp6HZZeQXV44Kq24XzFVQPC6rU7c4Al8kvmvJeUKXpXhJRuYJqO6i63fq4gupxQfVEezs2yO1o47oTVLVOrGt9cytzXWJNZdrbefnix+zbROmJtmvOdKM0diPXyY1CX5z5lU7rfQ+lm+tJZZjRMSw6GYtOwaJToejQgEUnYdEhLDqMRUew6GBlZcLKyoSVlQkrKxNWVmasrMxYWZmxsjJjZWXGysqMlZUZKyszVlZmrKzMWFlZsLKyYGVlwcrKgpWVBSsrC1ZWFqysLFhZWbCysmBlZcXKyoqVlRUrKytWVlasrKxYWVmxsrJiZWXFysqKlZUNKysbVlY2rKxsWFnZsLKyYWVlw8rKhpWVDSsrG1ZWzlhZOWNl5YyVlTNWVs5YWTljZeWMlZUzVlbOWFk5Y2XlgpWVC1ZWLlhZuWBl5YKVlQtWVi5YWblgZeWClZULVlauWFm5YmXlipWVK1ZWrlhZuWJl5YqVlStWVq5YWblCZWUaoLIyDVBZmQaorEwDVFamASor0wCVlWmAyso0QGVlGqCyMg1YWTlhZeWElZUTVlZOWFk5YWVlLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9hGWto+wtH2Epe0jLG0fYWn7CEvbR1jaPsLS9jGWto+xtH2Mpe1jLG0fD1BZmbG0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2MZa2j7G0fYyl7WMsbR9jafsYS9vHWNo+xtL2CZa2T7C0fYKl7RMsbZ8MUFlZsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYJlrZPsLR9gqXtEyxtn2Bp+wRL2ydY2j7B0vYplrZPsbR9iqXtUyxtnw5QWVmxtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9imWtk+xtH2Kpe1TLG2fYmn7FEvbp1jaPsXS9hmWts+wtH2Gpe0zLG2fDVBZ2bC0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+w9L2GZa2z7C0fYal7TMsbZ9hafsMS9tnWNo+a67ty2Y3OrmU7TOPzrrRGInm6eBUFw4uJLcLLfRyuvvBrxdKvVwo93Kh0suFai8Xar1caO7lQksvF1r7uNDcXAV72oV2UhnloZPKKA+dVEZ5kF4utJPKKA+dVEZ56KQyykMnlVEeeqmMUi+VUeqlMkq9VEapl8qoueL/tAvtpTJKvVRGqZfKKPVSGaVeKiPqpTKiXioj6qUyol4qo+ZdN067UOTKaLwN5fPBmUxm3JGLnT3uyPXLHnfkkiRTrTfunObckauMHe6MXDjscUeuBfa4I0/ve9yRZ+ydPNO8ycqR3APPq4w9r27HO/a8us098LzKgedVCTyvSuB5VQLPqxJ4Xm3eJudI7oHnVQm8XpXA61UJPK9K4HlVA8+rGnhe1cDzqmLPq9vcsefVbe7Y8+o298DrVQ08ryr2vLrNHXte3eRu2PPqNnfseXWbe+B51QLPq81bVR3JPfC8aoHnVQu8D2yB16sWeL2aA69Xc+B5NWPPq9vcA+8DN282diT3wPvAOfC8mgPPqznwvJoDz6sl8LxaAu8Dl8Dr1RJ4vdq8XdyR3APPqyXw89USeB+4BN4HLoH3gWvgeRW6094e98DzKnQ/vD3ugedV6K51e9wDr1ehe8vtcQ+8XoXuALc9rxbopm573OPuAxfo1mt73OPuA5ch7rxaoHue7XGPO68W6M5ke9zjzqsFun/YDnfolmB73OOuVwt046497oHnVej2Wnvc4+4DF+gmWHvc4+4DF+hWVXt5JvC8Ct1Qao974HkVuu3THve4+8AFujnTHvfA61Xwfkvb3APPq+D9lra5B94HBu+3tM098D5w4H5LBbzf0jb3wPMqeL+lbe6B59XA/ZZK4H5LJXC/pRK431IB77e0Oa+C91va5h54Hzhwv6USuN9SAe+3tJ1nAs+rgfstlcD9lkrgfkslcL+lErjfUgncb6kE7rdUwPstbc6r4P2WtrkH3gcO3G+pBO63VMD7LW3mGfB+S9vcA8+rgfstlcD9lkrgfkslcL+lErjfUgncb6mA91vanFfB+y1tcw+8Dxy431IJ3G+pgPdb2swz4P2WtrkHnlcD91sqgfstlcD9lkrgfkslcL+lErjfUgHvt7Q5r4L3W9rmHngfOHC/pRK431IB77e0nWcCz6uB+y2VwP2WSuB+SyVwv6USuN9SCdxvqQTut1TA+y1tzqvg/Za2ucfdB66B+y3VwP2WKni/pa08U8H7LW1zjzuv1sD9lmrgfks1cL+lGrjfUg3cb6kG7rdUwfstbc6r4P2WtrnH3Qeugfst1cD9lip4v6XtPBN4Xg3cb6kG7rdUA/dbqoH7LdXA/ZZq4H5LNXC/pQreb2lzXgXvt7TNPe4+cA3cb6kG7rdUwfstbeYZ8H5L29wDz6uB+y3VwP2WauB+SzVwv6UauN9SDdxvqYL3W9qcV8H7LW1zD7wPHLjfUg3cb6mC91vazDPg/Za2uQeeVwP3W6qB+y3VwP2WauB+SzVwv6UauN9SBe+3tDmvgvdb2uYeeB84cL+lGrjfUgXvt7SdZwLPq4H7LdXA/ZZq4H5LNXC/pRq431IN3G+pBu63VMH7LW3Oq+D9lra5B94HDtxvqQbut1TB+y1t5hnwfkvb3APPq4H7LdXA/ZZq4H5LNXC/pRq431IN3G+pgvdb2pxXwfstbXMPvA8cuN9SDdxvqYL3W9rOM4Hn1cD9lmrgfks1cL+lGrjfUg3cb6kG7rdUA/dbquD9ljbnVfB+S9vcA+8DB+63VAP3W0oDeMOlrUQzko87s47k406tI/m4c+tIPu7kOpKPuxs8ko+7bB3Jx123juTjLlxH8pFnWPDWSzvk4+4Jj+TjbgqP5OPuCo/kI8+w4P2XdshHnmEDd2AayUeeYQP3YEpD4CZMI/nIa9jAbZhG8pFnWPBGTDvk4+4Qj+TjbhGP5OPuEY/kI8+w4N2YtskHbsc0ko88wwZuyDSSj7xLHLgl00g+8ho2cFOmkXzkGRa8LdMO+ci7xIEbM43kI+8Sg7dm2s424L2ZdshHnmEDd2cayUeeYQP3ZxrJR17DBu7QlIbALZpG8pFnWPAmTTvkI+8SB27TNJKPvEsM3qhpJ9tEnmEDt2oayUeeYQM3axrJR94lDtyuaSQfeQ0buGHTSD7yDAvesmmHfORd4sBNm0bykXeJwds2bWcb8L5NO+Qjz7CBOzeN5CPPsIF7N43kI69hA3dvGslHXsOC92/anmHBGzjtkI+8Sxy4hdNIPvIuMXgTp+1sA97FaYd85Bk2cB+nkXzkGTZwJ6c0BG7lNJKPvIYN3MxpJB95hgVv57RDPvIuceCGTiP5yLvE4C2ddrJN4Bk2Re7plCL3dEqRezqlyD2d0oA9w+6QD7yGTZF7OiXwnk6bM2wC7+m0Qz7wLnGK3NMpRe7plMB7Om1nG/CeTjvkI8+wkXs6pcg9nVLknk4pck+nFLmnU4rc0ymB93TanmHBezrtkA+8S5wi93RKkXs6JfCeTjvZJvIaFryn0w75yGtY8J5OO+Qjz7CRezol8J5OO56PPMOC93TaIR/4OWyK3NMpgfd02sk2kdew4D2ddshHfg6L3dNJSG/khfKcfOsZtvDtzFSMt8+cSuIbjcL3K2WRJR4mt/vEVuWLo/+4VunoWrWja7WOrjV3dK2lo2ut/Vxr8+ZYZ15r6uhaqaNrfaK6qeitROSaaOfoknn4fHTJuuQZuTyz4pknqsne5xm1G+uiJe8cPdbp0+Ab/zZd8OQTVXwne/KJ6smDR+sTVZ8He+aJatVzR589USV8siefqM4+drTaE1XlB3um2xpeBrp5RjgteEaumFmJmW5r+F3PXDX5UXNZtzX54Z68avi10dptDb/nmXzV5AeNvtxtTX64J68afm20Xvvwa56Ra3WzvLrJVw2/FjPd1vC7nrlq8qPmsm5r8sM9edXwK6O1dFvD73rmqskPGn2l25r8cE9eNfzaaJXLMyue6baG31vdlKuGX4uZ612XNc9cNflRc9n1bsxBnqxXDb8yWuv1rsuaZ66a/KjR121Nfrgn5RqtK6P12odf80y3Nfze6qZeNfxazFzvuqx55qrJj5nLaLjejTnKk1cNvzxaabjedVnzzFWTHzX65PLkQZ68avi10Xrtw695ptsafmd1Q8NVw6/FzPWuy4pn0lWTHzSXpevdmKM8edXwa6P1etdlzTNyjb6DRt/VZ+YoT141/Npovfbh1zzTbQ2/t7pJVw2/EjN0veuy5pmrJj9oLqPr3ZijPHnV8GujVS7PrHjmqsmPGn1Xn5mjPHnV8Guj9dqHX/NMtzX83uqGrxp+JWb4etdlzTNXTX7QXMbXuzFHeVKu0boyWq93XdY8c9XkR42+q8/MUZ68avi10Xrtw694Rrqt4fdWN/I8Nfx4qbdTy5CHnaNrktvXFisNdS8vDZJvjhz/rsOCJ5+n5j/bk89T85/tSbk8eZAnn2eNcLYnn2dNcbYnn2dNcbYnn2dNcbYnn2cNojTceChZnV/rE33vdP9an2edsH+tz1PJ71/r89Ta+9cqHV3r89Sr+9f6PBXl/rU+T823f63PU5XtX2tHddMTfR1TOd1OrZxtr37OZOV28sy0X2+TTT4ZqC7s3z7R9zHP9+UT1X2n+/KJ6sqmvswLvpTLl1/py939iSf6zuf5vnyiuvt0Xz5RXX+6L59o3XC6L59oXfJOX3LNky/F9t60SMmG6c2lZEJzXz7RF0gf7cvMOvky25Iv+133HO/Lftc9x/uy33XP8b6Uy5eH+bLfdc/xvux33XO8L/td9xzvy37XPZank+c88IJv+l3H7Prmib6q+l7fFL77puiC2uSJvquqXG4LVJW0uzdQUpLp5EkX9gae6Eupx/vmmdYBR/tGLt+s+uaZ6vSjffNMdffRvnmmOvpo3zxTXXy0b56pLj7YN0/0pdLjfdNvXUxyP/m4R7lzvI1++Hy41XR/u+PF0Ozg8dw3vxd6s8QfD/7D6/1W3Gd6vd9a/kyvy+X1E7ze7/rjTK/3u7I50+v9rpnO9Hq/q7Ezvd7vOu88r/MTfVc3ktevtekZXr/Wpmd4/VqbnuF1ubx+gtevtekZXr/Wpmd4/VqbnuH1a216htevtekJXn+i70tH8vq1Nj3D69fa9AyvX2vTM7wul9dP8Pq1Nj3D69fa9AyvX2vTM7x+rU3P8Pq1Nj3B60/03fRIXr/Wpmd4/VqbnuH1a216htfl8voJXr/Wpmd4/VqbnuH1a216htevtekZXr/Wpid4na+16Rlev9amZ3j9Wpue4fVrbXqG1+Xy+glev9amZ3j9Wpue4fVrbXqG16+16Rleb742nbpc8kD69syvfOTYVRu9PZg/m1heophNn1iwTNsm8hitnw/OXO6XnJduAduNjqT7vU2c//vd+Ovvv3766adP//zbT7/88P3vn375+bcX5PDyn2WeWfJkWuqbG0q26O40efvuCU0vnhB68Pn5weeXB59fH3x+e/D584PPXx58/vrY8y9/FvrA8z94/OqDx68+ePzqg8evPnj86rvH7wsoe0DFA6oOkA0eUPKAyANiD0g8IPWAPBFhnogwT0SYJyKyJyKyJyKyJyKyJyKyJyKyJyKyJyKyJyKyJyKyJyKKJyKKJyKWG5dnpdsHFsY/bQZiD0g8IPWAzAPKHlDxgKoDtNyAdQ+UPCBPRFRPRFRPRFRPRCw3lcv39ej4J89A2QMqHlB1gNJyR6VdVHKhyIViF0pcKHWhzIXKLlRxoVyxkVZiY7AbqjLvFOZfHK00t5Ea2KAGNriBDWlgQxvYsG+3oUJ52rrVN9t1Upa2bodUp43JgdLwxfGvnPIRnKY9Uy1SdzjdB5/ZfaN63Fj+g08B41Ox+NDQmo+k+/6wqs0iiBIcI4JjxHCMBI6RwjEyOEYZjlGBY1TRGDFczma4nM1wOZvhcjbD5WyGy9kMl7MZLmfzg3P2q436eBsyNLBxRKa8vx2ipczXYEINbHADG3K0jTy3oQ1sWAMbR2SFKpONqgv3ozSwUR9vQw8Y56bTG1Gmb16fWtk3qfn2glyq5e1ny/QPRgmOEcExOiDj2JCGG6OBeBYZdsR9YJmumm0+Uo0a2OAGNg7IzibD7UmRCZW5DW1gwxrYyAfbYJ3bKA1s1MfbyEdkZ7F75hnKTuaxaWq18qa6/bxDmhMYHwLjw2B8BIyPgvExMD4ZjE8B41Ox+BSw/FzA8nMBy88FLD8XsPxcwPJzsfYrLxmmlZek2cqrZDhGBY5RRWNUBzhGCY4R3C5HZThGAsdI4RgZHKMMx6h5zqYh3Y6mQfKcUQVjRMMAxyjBMSI4RgzHSOAYKRwjg2OU0RilE0b/tDga/+Q5oxMiu9x99EazNTFqH9mJb+em8RHJnJHBMcpwjAoco4rGiAY4RgmOEZ3KKM9zNjEcI4FjdELOpmkWSTyf18jgGGU4RgWOUUVjxAMcowTHiOAYtc/ZNL0JNc4Ydc5I4BgpHCODY5ThGBU4RhWNkQxwjBIcI4JjdEI+Mp4YLaxF5ISxVu4+KjJn1H6s8X2mZZ1X/u3f/d5llOAYERwjhmMkcIwUjpGdysjmOVszHKMCx+iMnD3NIkzzec0GOEYJjhHBMWI4RgLHSOEYGRyjDMeowDGCy9kZLmdnuJyd4XJ2hsvZ+cE5+9WGNrBhDWzkBjZKAxv18TYOUbFouR1t9qZd+mTjiIyT02Qj815/PrPpQywjkOeMCI4RwzESOEYKx8jgGOXHMnq1URrYqI+3cYgyZM9GamCDGtg4Ij/txO4hCos9G9rAhjWwkRvYKA1s1Ifb4EPUBHs2UgMb1MAGN7AhDWxoAxvWwEZuYKM0sNFgnKcG4zw1GOepwThPDcZ5ajDOU4NxnhqM89RgnKcG4zw1GOfUYJxTg3FODcY5NRjn1GCcU4NxTg3GOTUY59RgnFODcc4Nxjk3GOfcYJxzg3HODcY5Nxjn3GCcc4Nxzg3GOTcY59JgnEuDcS4Nxrk0GOfSYJxLg3EuDca5NBjn0mCcS4Nxrg3GuTYY59pgnGuDca4Nxrk2GOfaYJxrg3GuDca5Nhjn1mCcW4Nxbg3GuTUY59ZgnFuDcW4Nxrk1GOfWYJxbg3GeG4zz3GCc5wbjPDcY57nBOM8NxnluMM5zg3GeG4zBr3l/z76w8YpKLhS5UOxCiQulLpS5UNmFKi5U9aCqKzaqKzaqKzaqKzaqKzaqKzaqKzaqKzaqKzaqJzZkGFyo5EKRC8UulLhQ6kKZC5VdqOJCuWIjuWIjuWIjuWIjuWIjuWIjuWIjuWIjuWIjuWIjuWKDXLFBrtggV2yQKzbIFRvkig1yxQa5YoNcsUGu2GBXbLArNtgVG+yKDXbFBrtig12xwa7YYFdssCs2xBUb4ooNccWGuGJDXLEhrtgQV2yIKzbEFRviig11xYa6YkNdsaGu2FBXbKgrNtQVG+qKDXXFhrpiw1yxYa7YMFdsmCs2zBUb5ooNc8WGuWLDXLFhrtjIrtjIrtjIrtjIrtjIrtjIrtjIrtjIrtjIrtjIrthw7YuKa19UXPui4toXFde+qLj2RcW1LyqufVFx7YuKa19UXPui4toXFde+qLj2ReUr9kWVvkDNnzekwvL56FTk/gU/TX+Y0MebsMebyI83UR5voj7ahH7FLvE3m0iPN0GPN8GPNyGPN6GPN2GPN5Efb6I83sTjR3d6/OhOjx/d6fGj+4TPrWy3ONYTPrdCVSZGtc4ZMRwjgWOkcIxOaN1f8o0RD8OcUYZjVOAYVTRGJ3xuZY9RgmNEcIxOyNmbjfL1jM+t7DBSOEYGxyjDMUL7BISe8bmVbUZnfG5lh1GCY0RwjOBytsDlbIHL2Sd8kmb7A8J6widp0kA3RmmYfSZDT/gkzR6jBMeI4Bid8NH3qndGZc5I4BgpHCODY5ThGBU4RhWN0QmfpNn+DL2e8EmaPUYEx4jhGAkcI4VjZHCMMhyjAseoojHKcDk7w+XsDJezl18JsjrcVnlW0706T3XBRCG5PQwqZPT24FcL8nAL+nAL9nAL+eEWysMt1AdbsOUXhw61kN5p4RVEHhB7QPnhDigPt/DwMEkPD5OUHm6BHm6BH25BHm5BHYMomQf03pH33fgjvRy6/MJIGtINmQa+v4qTlmbxPNyckBO9PfS7ly/KPvb09u2n59tLR1nqn0+fDzj9bScxG//59OXbTz91Ssk1//n09aGnX3794V2nHwfNbfjIn2/t8rsM7zz9bR+nqP359PTtp8+3W1vmzuEDT1//FPfjD3odu4s3WPLNqfqmd47p+j3bRKR3I+jdCH43Qt6HGH/wy4HLigvNdnO1vh2lLPJibFlwsQNa1lvsgZIHRB4Qe0DiAakHZB5Q9oA8EVE9EZGGwYVKLhS5UOxCiQulLtRyYJR820fQ+sU7X59R2YUqLlT1oJYXBV+gks5Ryz6sVCeUzn243DrFxh2YW7FIvICqHtRy65RdVHKhlq/rPiuY1DJHVQ9qeSLdRSUXanmxpUOedtqozlHsQokLpS6U7aJYZqjlN7hsfJZ633ecj6/lt6x2UeRCsQslLtSKD+sUUTbM84YOLtTyE7SBpgXU25p2Qi0zNBkmW5LmqOxCFRdqOQPk6T1iy3UevctPgXdRyYUiF4pdKHGh1IUyF2rlfukUvdnmeSOvbFmZTtE7zOeUzC6UeEbKSjODPZS5UNmFKi5U9aBWmhnsoZILRS6UKx8WV2wUV2wUV2yU3XxYFmK+Di5UcqHIhVoey4V1Qul8hl15MlUyT6hic1R1oGjlCdIeKrlQyz4sVu+oPEexCyUulLpQ5kJlF6p4UGuPZ6bdyvHP+f1Ke/OX1aJzFLtQ4kKpC2UuVHahigtVPaiVlW+d3nhYqhxoZeW7XW8QkQvFLpS4UOpCmQe1/K7PuASUafNd0jzT0/IbOV+Bk2UcmU04yvMRvVzvfQXOnLjsxBUnrvpwZXDikhNHThyv4KYl+wtunv+LOHHqxJkTl5244sCNv+Tl6JVBOMj0NGz8u84GYSYfjH0w8cHUBzMfLPtgxQerLtjKWNc6vUY4/m2zPZuVob4LIx+MfTBZgeXhDitzmPpgy/fNhnJbBoybT8Msiy0v9sZDqdxhMitvlld7+7Dkg5EPxiuwondYnSWw5cec+zD1wcwHyz5Y8cGqC7byyPPl2DrhKC08REtOHDlxa5FyH3Mj7ssxt9BRaVxgTHbGBUDdO17uq4Hx74VHP4OA8lJQXgbKK4PyKqC8KiavNIDySqC86CReub7hNX+ElA7L9+nOK83nvySN7GgjO9bITm5kpzSyU9vYoaGRnbV8o2/qQVvAkRPHTpw4cerEmROXnbjixFUfjgcnzhkv7IyXldevjdju40Dnj+1YnDh14syJy07cyn1nuecHXnjtUgYnbsWffN9aNc7zukFWrk/TfR2nC4+upThx1YfTwYlLThw5cezEiROnTtzKeFDLd1ye13O6Fi9v4ky/EBgvzXsHar9WXkU7lVFFY2QDHKMEx4jgGDEcI4FjtDL6Ld0348cd61keW3n6ZaZ0xy3kv5XnWDZOrnec0BwnTpw6cebEZSeuOHHVh1t5nLWPS07cSnYwexsv8/qqsBMnTpw6cSvxkod7/Z9p/kr3yqPrfVxx4qoPt/YYbReXnDhy4lbiJcsbnM7z2dqjtF2cOnHmxK3FC7/FzevVtcdpu7jqwtHa87RdXHLiyIljJ24tXu77uWOaKHOcOnHmxGUnbi1e7C2uznHVh1t7XrGLS04cOXHsxIkTtxIv5U19VojmOHPishNXnLiVeCnDW9zCC5eDE5ecOHLi2IkTJ06duLV6t9zrnvInkePCfjxnmupAzjx/FXFt//jddqTe7djCS82lkZ3axs7afvbhdlIjO9TIDjeyI43s6EF2rNztLLway/aA61mykxvZKY3s1DZ25Kh8UKfnIlzmL12SpEZ2qJEdbmRHGtnRRnaskZ3cyM5B+aAM93Fa0nwdJfUB17NgR4dGdlIjO9TIzkH5oHC625F5vlZpZEcb2bFGdnIjO6WRndrGjg2N7ByUD4q+Gac63wcxesD1LNnhRnakkR1tZMdczwPJshNXnLjqw+XBiUtOHDlx7MSJE6dOnDNesjNesjNe1p537rwXtibVNb6/H24ypDmOnThx4tSJMycuO3HFias+3Nrzzl1ccuKc8VKd8VJ98cIrzz/2Wg/wyvOPfZyvFQCn4sT5WgEwDU5ccuLIiWMnTpw4deJ8rQCYshNXnLjqw/HgxCUHbvylL0cvL6p1ekSn+ub9MM4vBpfXx9sQeT9E3w+xd0L+O/783+9//fT933/68bcR8vKv//75h98//fLz55+//9+/bv/y918//fTTp3/+7V+//vLDj//4968//u2nX354+bcPw+f//NVo+GiSvntt2P1XzfpRi373Igl8+Vnso9aXf3x9QG2i47F5+pbB6zGcPwpNLdL58//Jt1NI+ag89QN/+T/j5tjHsfD9bNHyxzwdPD6H+jg+g7jZG7e7P45bxFOvildz4/9jrTe+I/lhQtf8kQe6oXl8VsiDTmHzSi19fL3Wz1f30UZq/x2d+v8=",
|
|
3589
3646
|
"brillig_names": [
|
|
3590
3647
|
"get_note_internal",
|
|
3591
3648
|
"decompose_hint",
|
|
3592
3649
|
"get_auth_witness",
|
|
3593
3650
|
"build_msg_block",
|
|
3594
3651
|
"attach_len_to_msg_block",
|
|
3595
|
-
"
|
|
3596
|
-
"call_private_function_internal",
|
|
3597
|
-
"debug_log_oracle_wrapper",
|
|
3598
|
-
"notify_set_min_revertible_side_effect_counter_oracle_wrapper",
|
|
3599
|
-
"notify_created_nullifier_oracle_wrapper",
|
|
3652
|
+
"store_in_execution_cache_oracle_wrapper",
|
|
3600
3653
|
"directive_invert",
|
|
3601
3654
|
"directive_integer_quotient",
|
|
3602
3655
|
"directive_to_radix"
|
|
3603
3656
|
],
|
|
3604
|
-
"verification_key": "
|
|
3657
|
+
"verification_key": "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"
|
|
3658
|
+
},
|
|
3659
|
+
{
|
|
3660
|
+
"name": "compute_note_hash_and_optionally_a_nullifier",
|
|
3661
|
+
"is_unconstrained": true,
|
|
3662
|
+
"custom_attributes": [],
|
|
3663
|
+
"abi": {
|
|
3664
|
+
"error_types": {
|
|
3665
|
+
"11091894166229312484": {
|
|
3666
|
+
"error_kind": "fmtstring",
|
|
3667
|
+
"item_types": [],
|
|
3668
|
+
"length": 20
|
|
3669
|
+
},
|
|
3670
|
+
"16761564377371454734": {
|
|
3671
|
+
"error_kind": "string",
|
|
3672
|
+
"string": "Array index out of bounds"
|
|
3673
|
+
},
|
|
3674
|
+
"17843811134343075018": {
|
|
3675
|
+
"error_kind": "string",
|
|
3676
|
+
"string": "Stack too deep"
|
|
3677
|
+
},
|
|
3678
|
+
"2920182694213909827": {
|
|
3679
|
+
"error_kind": "string",
|
|
3680
|
+
"string": "attempt to subtract with overflow"
|
|
3681
|
+
},
|
|
3682
|
+
"5019202896831570965": {
|
|
3683
|
+
"error_kind": "string",
|
|
3684
|
+
"string": "attempt to add with overflow"
|
|
3685
|
+
},
|
|
3686
|
+
"8270195893599566439": {
|
|
3687
|
+
"error_kind": "string",
|
|
3688
|
+
"string": "Invalid public keys hint for address"
|
|
3689
|
+
}
|
|
3690
|
+
},
|
|
3691
|
+
"parameters": [
|
|
3692
|
+
{
|
|
3693
|
+
"name": "contract_address",
|
|
3694
|
+
"type": {
|
|
3695
|
+
"fields": [
|
|
3696
|
+
{
|
|
3697
|
+
"name": "inner",
|
|
3698
|
+
"type": {
|
|
3699
|
+
"kind": "field"
|
|
3700
|
+
}
|
|
3701
|
+
}
|
|
3702
|
+
],
|
|
3703
|
+
"kind": "struct",
|
|
3704
|
+
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
3705
|
+
},
|
|
3706
|
+
"visibility": "private"
|
|
3707
|
+
},
|
|
3708
|
+
{
|
|
3709
|
+
"name": "nonce",
|
|
3710
|
+
"type": {
|
|
3711
|
+
"kind": "field"
|
|
3712
|
+
},
|
|
3713
|
+
"visibility": "private"
|
|
3714
|
+
},
|
|
3715
|
+
{
|
|
3716
|
+
"name": "storage_slot",
|
|
3717
|
+
"type": {
|
|
3718
|
+
"kind": "field"
|
|
3719
|
+
},
|
|
3720
|
+
"visibility": "private"
|
|
3721
|
+
},
|
|
3722
|
+
{
|
|
3723
|
+
"name": "note_type_id",
|
|
3724
|
+
"type": {
|
|
3725
|
+
"kind": "field"
|
|
3726
|
+
},
|
|
3727
|
+
"visibility": "private"
|
|
3728
|
+
},
|
|
3729
|
+
{
|
|
3730
|
+
"name": "compute_nullifier",
|
|
3731
|
+
"type": {
|
|
3732
|
+
"kind": "boolean"
|
|
3733
|
+
},
|
|
3734
|
+
"visibility": "private"
|
|
3735
|
+
},
|
|
3736
|
+
{
|
|
3737
|
+
"name": "packed_note_content",
|
|
3738
|
+
"type": {
|
|
3739
|
+
"kind": "array",
|
|
3740
|
+
"length": 5,
|
|
3741
|
+
"type": {
|
|
3742
|
+
"kind": "field"
|
|
3743
|
+
}
|
|
3744
|
+
},
|
|
3745
|
+
"visibility": "private"
|
|
3746
|
+
}
|
|
3747
|
+
],
|
|
3748
|
+
"return_type": {
|
|
3749
|
+
"abi_type": {
|
|
3750
|
+
"kind": "array",
|
|
3751
|
+
"length": 4,
|
|
3752
|
+
"type": {
|
|
3753
|
+
"kind": "field"
|
|
3754
|
+
}
|
|
3755
|
+
},
|
|
3756
|
+
"visibility": "public"
|
|
3757
|
+
}
|
|
3758
|
+
},
|
|
3759
|
+
"bytecode": "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",
|
|
3760
|
+
"debug_symbols": "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",
|
|
3761
|
+
"brillig_names": [
|
|
3762
|
+
"compute_note_hash_and_optionally_a_nullifier"
|
|
3763
|
+
]
|
|
3764
|
+
},
|
|
3765
|
+
{
|
|
3766
|
+
"name": "sync_notes",
|
|
3767
|
+
"is_unconstrained": true,
|
|
3768
|
+
"custom_attributes": [],
|
|
3769
|
+
"abi": {
|
|
3770
|
+
"error_types": {
|
|
3771
|
+
"17843811134343075018": {
|
|
3772
|
+
"error_kind": "string",
|
|
3773
|
+
"string": "Stack too deep"
|
|
3774
|
+
}
|
|
3775
|
+
},
|
|
3776
|
+
"parameters": [],
|
|
3777
|
+
"return_type": null
|
|
3778
|
+
},
|
|
3779
|
+
"bytecode": "H4sIAAAAAAAA/7WTyw7CIBBFqcUo0sTEx39MU0y7dOHafyCtLHVRN+766dZkJkyI0QVwEzJMgMNcHoXwKjBKESGCHDEqjAs2Xs7tjDnEqVbBvin5HRijvvhLWH+jkFnk4QPxM50/rJBzmTyfe6F913PTrF8J/z5y+af7y+l//8OzRq9bzCvh/8P4uvfXx/M2ij/SbJGc0ptoOwAqvkT+EvmhJBvn8w+Yb4Svj6KMqNO1tnaNdfZkh8H0dhfwP+KH/QbzqHp4zgQAAA==",
|
|
3780
|
+
"debug_symbols": "bY/RCoMwDEX/Jc99aLrppr8iQ6pGKZRWah0M8d8Xxybd5sslN5xcchfoqJmH2rjeT1BWC1jf6mi8Y7esAppgrDVDna5BboKnFz+N2m12ijpEKDG7CCDX8ZRnfN8bS1DmahX/qESpPrBEVew4nq/HfIE7r1B+8beV7V0HoxtL7+f72bVJl/gY6afWGHxL3RxoK5h0Y60wE0pyLEc/AQ==",
|
|
3781
|
+
"brillig_names": [
|
|
3782
|
+
"sync_notes"
|
|
3783
|
+
]
|
|
3605
3784
|
},
|
|
3606
3785
|
{
|
|
3607
3786
|
"name": "constructor",
|
|
@@ -5267,8 +5446,8 @@
|
|
|
5267
5446
|
"visibility": "databus"
|
|
5268
5447
|
}
|
|
5269
5448
|
},
|
|
5270
|
-
"bytecode": "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",
|
|
5271
|
-
"debug_symbols": "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",
|
|
5449
|
+
"bytecode": "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",
|
|
5450
|
+
"debug_symbols": "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",
|
|
5272
5451
|
"brillig_names": [
|
|
5273
5452
|
"get_contract_instance_internal",
|
|
5274
5453
|
"decompose_hint",
|
|
@@ -5287,186 +5466,7 @@
|
|
|
5287
5466
|
"directive_invert",
|
|
5288
5467
|
"directive_to_radix"
|
|
5289
5468
|
],
|
|
5290
|
-
"verification_key": "
|
|
5291
|
-
},
|
|
5292
|
-
{
|
|
5293
|
-
"name": "process_log",
|
|
5294
|
-
"is_unconstrained": true,
|
|
5295
|
-
"custom_attributes": [],
|
|
5296
|
-
"abi": {
|
|
5297
|
-
"error_types": {
|
|
5298
|
-
"16761564377371454734": {
|
|
5299
|
-
"error_kind": "string",
|
|
5300
|
-
"string": "Array index out of bounds"
|
|
5301
|
-
},
|
|
5302
|
-
"16954218183513903507": {
|
|
5303
|
-
"error_kind": "string",
|
|
5304
|
-
"string": "Attempted to read past end of BoundedVec"
|
|
5305
|
-
},
|
|
5306
|
-
"17843811134343075018": {
|
|
5307
|
-
"error_kind": "string",
|
|
5308
|
-
"string": "Stack too deep"
|
|
5309
|
-
},
|
|
5310
|
-
"2920182694213909827": {
|
|
5311
|
-
"error_kind": "string",
|
|
5312
|
-
"string": "attempt to subtract with overflow"
|
|
5313
|
-
},
|
|
5314
|
-
"5019202896831570965": {
|
|
5315
|
-
"error_kind": "string",
|
|
5316
|
-
"string": "attempt to add with overflow"
|
|
5317
|
-
},
|
|
5318
|
-
"6753155520859132764": {
|
|
5319
|
-
"error_kind": "string",
|
|
5320
|
-
"string": "Failed to deliver note"
|
|
5321
|
-
},
|
|
5322
|
-
"8270195893599566439": {
|
|
5323
|
-
"error_kind": "string",
|
|
5324
|
-
"string": "Invalid public keys hint for address"
|
|
5325
|
-
},
|
|
5326
|
-
"8861757336002045335": {
|
|
5327
|
-
"error_kind": "fmtstring",
|
|
5328
|
-
"item_types": [
|
|
5329
|
-
{
|
|
5330
|
-
"kind": "integer",
|
|
5331
|
-
"sign": "unsigned",
|
|
5332
|
-
"width": 32
|
|
5333
|
-
},
|
|
5334
|
-
{
|
|
5335
|
-
"kind": "integer",
|
|
5336
|
-
"sign": "unsigned",
|
|
5337
|
-
"width": 32
|
|
5338
|
-
},
|
|
5339
|
-
{
|
|
5340
|
-
"kind": "field"
|
|
5341
|
-
}
|
|
5342
|
-
],
|
|
5343
|
-
"length": 99
|
|
5344
|
-
},
|
|
5345
|
-
"9862881900111276825": {
|
|
5346
|
-
"error_kind": "fmtstring",
|
|
5347
|
-
"item_types": [
|
|
5348
|
-
{
|
|
5349
|
-
"kind": "field"
|
|
5350
|
-
}
|
|
5351
|
-
],
|
|
5352
|
-
"length": 35
|
|
5353
|
-
}
|
|
5354
|
-
},
|
|
5355
|
-
"parameters": [
|
|
5356
|
-
{
|
|
5357
|
-
"name": "log_plaintext",
|
|
5358
|
-
"type": {
|
|
5359
|
-
"fields": [
|
|
5360
|
-
{
|
|
5361
|
-
"name": "storage",
|
|
5362
|
-
"type": {
|
|
5363
|
-
"kind": "array",
|
|
5364
|
-
"length": 18,
|
|
5365
|
-
"type": {
|
|
5366
|
-
"kind": "field"
|
|
5367
|
-
}
|
|
5368
|
-
}
|
|
5369
|
-
},
|
|
5370
|
-
{
|
|
5371
|
-
"name": "len",
|
|
5372
|
-
"type": {
|
|
5373
|
-
"kind": "integer",
|
|
5374
|
-
"sign": "unsigned",
|
|
5375
|
-
"width": 32
|
|
5376
|
-
}
|
|
5377
|
-
}
|
|
5378
|
-
],
|
|
5379
|
-
"kind": "struct",
|
|
5380
|
-
"path": "std::collections::bounded_vec::BoundedVec"
|
|
5381
|
-
},
|
|
5382
|
-
"visibility": "private"
|
|
5383
|
-
},
|
|
5384
|
-
{
|
|
5385
|
-
"name": "tx_hash",
|
|
5386
|
-
"type": {
|
|
5387
|
-
"kind": "field"
|
|
5388
|
-
},
|
|
5389
|
-
"visibility": "private"
|
|
5390
|
-
},
|
|
5391
|
-
{
|
|
5392
|
-
"name": "unique_note_hashes_in_tx",
|
|
5393
|
-
"type": {
|
|
5394
|
-
"fields": [
|
|
5395
|
-
{
|
|
5396
|
-
"name": "storage",
|
|
5397
|
-
"type": {
|
|
5398
|
-
"kind": "array",
|
|
5399
|
-
"length": 64,
|
|
5400
|
-
"type": {
|
|
5401
|
-
"kind": "field"
|
|
5402
|
-
}
|
|
5403
|
-
}
|
|
5404
|
-
},
|
|
5405
|
-
{
|
|
5406
|
-
"name": "len",
|
|
5407
|
-
"type": {
|
|
5408
|
-
"kind": "integer",
|
|
5409
|
-
"sign": "unsigned",
|
|
5410
|
-
"width": 32
|
|
5411
|
-
}
|
|
5412
|
-
}
|
|
5413
|
-
],
|
|
5414
|
-
"kind": "struct",
|
|
5415
|
-
"path": "std::collections::bounded_vec::BoundedVec"
|
|
5416
|
-
},
|
|
5417
|
-
"visibility": "private"
|
|
5418
|
-
},
|
|
5419
|
-
{
|
|
5420
|
-
"name": "first_nullifier_in_tx",
|
|
5421
|
-
"type": {
|
|
5422
|
-
"kind": "field"
|
|
5423
|
-
},
|
|
5424
|
-
"visibility": "private"
|
|
5425
|
-
},
|
|
5426
|
-
{
|
|
5427
|
-
"name": "recipient",
|
|
5428
|
-
"type": {
|
|
5429
|
-
"fields": [
|
|
5430
|
-
{
|
|
5431
|
-
"name": "inner",
|
|
5432
|
-
"type": {
|
|
5433
|
-
"kind": "field"
|
|
5434
|
-
}
|
|
5435
|
-
}
|
|
5436
|
-
],
|
|
5437
|
-
"kind": "struct",
|
|
5438
|
-
"path": "authwit::aztec::protocol_types::address::aztec_address::AztecAddress"
|
|
5439
|
-
},
|
|
5440
|
-
"visibility": "private"
|
|
5441
|
-
}
|
|
5442
|
-
],
|
|
5443
|
-
"return_type": null
|
|
5444
|
-
},
|
|
5445
|
-
"bytecode": "H4sIAAAAAAAA/+19W4wcSXZdVndXk91ks4sznCeXM5zhPHdmdzMrs17zIKvJHr5mOMN52gYM2/XcHXk0s57hLryAsCh5YVj2xwqQJUheePXpD3kB/8iGDBjQv2FYhgwYsADLMPThDwG2ftYw9CGogsxbdfrUrejM7ojqyiUDICs7I+LeEzdu3LhxIzKzFNxLn4z/ldLrtfT3WPpr7j8U7E1Stp3+hodLkUNaoS+MpQJgXCkAxtUCYFwrAMZyATCuFwDjsQJgPF4AjBsFwLhZAIwnCoDxZAEwbhUA46kCYNwuAMZKATCe9oDRB86HCoLzYYc40bf3hfdMsPw6+kgBMD5aAIyPFQDj4wXA+EQBMD5ZAIxnC4DxawXAeK4AGJ8qAManC4DxfAEwPlMAjM8WAOOFAmB8rgAYny8AxhcKgPHFAmB8qQAYXy4Axq8XAOMrBcD4agEwfqMAGL9ZAIzfKgDGsAAYowJgrBYAY1wAjEkBMNYKgLFeAIyNAmBsFgBjqwAYXysAxtcLgPGNAmB8swAYLxYA46UCYGwXAONOATBeLgDGKwXAuFsAjG8VAOPVAmC8VgCM1wuA8UYBMN4sAMa3C4DxnQJgvFUAjO8WAON7BcB4uwAY3y8Axg8KgPFDDxh94PyoIDg/LgjOTzzhDP4GgV4Z/zMPbpkHo8yDR+bBHvPgjHkwxTz4YR6sMA8umAcDzMF7c7DdHByvjP+Zg8/mULE5sGsOwZpDpuYQpzkkaQ4hmkN+5hCdOaRmDoGZQ1bmEJM5JHR+/O+Z8T9ziMQc0jCHIMwhA7OJbzbJzSa02eQ1m6hmk9JsAppNNrOJZTaJTKvMJofZRDBBehMEN0FmE8Q1QVIThDRBPhNEM0EqEwQyQRYTxJAggVnkmkWkWaSZRZBZZBgn3jjJxgk1Tp5xooyTYpwAM8maScxMEsYIGyNnjIgZpGYAGOX6JJifREn+5ca93/Tnbh9IvsOH6KIN4uuSfjPs9DeU9jnEH2+kNI97oV9rCP0NP/hDedD2k9GUPrZF+K6mv98ZTWX5ndFeTFLm96DM71EZaY+f/q7V/corqm6RjAJoi/De9MM7LhE/7BfME/6bgU/dvPdQMvITPCwfsR1bUmY0xVOivLXRbDskrwx50r+Gz9ehHOvWccoTLCaJ/m6BbCR9muZJn64BTXf6Wu/41dckPDp9TaJfRH1do7y10Ww78uor6hbrazmYJrGlkrcOef+a8o5B3s9GU941wHEjvfZrk+/NwTj2XM9hDyv4kZdJx0ZTeYgOrsK9MsjvrnywPOVtQN7aaC+fzfTvNeCDtARHmcon6d/b6e861JH6FYX/OvHfg1u5x3LZUMpvKOWNrn0jvTa+tujzldGUnsM+rQr9XaAfuKMfCv23RtO2Cu04TKr1QT3pDAZxOGi1mr0o7jV7g0Gv34k7jUYzbPS7g06/Vu32qsO4OwwHnUGzFnWTbiMKexOf9qpCO4riqFbvhPXmsB7GYTWuJmGvVe8m/U4taST1+ph03G02oqhXq0a9RtKsRtVOVOv2wjgZdOpC+5pCu9qs1nqNVq9X79R63e5gMGz0653mMOrWO1G1G48JdeK4mSRhZzAcdJO4VY+SZq/ZipJGL0xaQvu6hrva6g77kUHZbYT1ar/erSXJoDGI691W2IjrcS0c1ofdzthHqjZ7yRh6NWy1amFrWGuE0UBo31Boh4N+NxpUW3Ev7g1aUXc4BjMYX3Y6tbBf7dWSaNhp9cOWoTmGHcaDYTfqDTvVXjeOa42h0L6p4Y6TqF9v1IadsbQHvUE87oBxz8W9TpyM2xN3o1a3Pmg16tUwqTfG95KxSKpJLxlLrj+Ia0L7bRV32O/0q9VaWGvGw2qnNQw7ve4Ye3/QH0bjVnebtW4Yj9vVGTRq8XAsrSjpNpudYTPqdWsTHX9Ho91qxN1w3Phep9OL49ZgkIxh9zvdWhRXW61qOGx073ZsOCY6vj2o9Yf1xnjC78Zh2KpPaN9SaI91Nk6qg1YYDsY9NcZTbbbiqNMZ1Jutxrgvm8N+rz5G2R/3SRT2B41uXA174VhPw2rYbEzWVO9q8u4OW7XmuH48lkSrX2tV43Cs6J2wWm+NB0m9Xx+2qklrrO7VJBlTj2vRcNwl1f5w3KRe2BTa72kySca6FY+VtVtvhs2xbvSa1UGzU6t1WrVqPzEkqrX6cBDWWnG/lbTGt8d62AnDcb+MhTXpy9sa7U7TaFc97Ifj/4a1fjNMakmrnzSHY3OQ9MPxUAm7reag34ganVa3Flc7w3o8Hu21OGy0JmP+/ZS2Y3uYCP0P/NCPhf6HmmzsKdqPuND+KD/tfZPQ/vjwtGfaYeY54yf9OHWmTHzpVEr724M7lz/7ovf33/3eL3cHX6KHy9483scVhiRD9aEp1StffH7ny07vzk6//+Xgq6+YwqZCOZhDdROofqfz6ec3+kztxMGofTL48qtPv/icqZ3MSE18tYmfHEz9cFyfoW9h/ons0V/egvK7oyk9LP9h+it+6DbUd+mHPgR0A+K1QXhd82YZoUyR54pFFoE7PBH3wd9Mf814+s1jU57mn/i1AWBGHUKf1fw7rZSvQBlp7zZhwLobSj0fa03hV56DdQXysfzftcjroZzyelgpj7paIXmdhjypu6Xw5jjCw3DfYdwrcxxB+G8qbfTRtza5msRj7Ywf+UzG/hkFzxlFPtKXjyh5QuvR9G/UWyx/BtqI5fFa6uO976a/FaJpkvgHJSVvVbmHa9NforZh35Tm/ApdvrdCGFE20r8bgU8di2bidmjXTHu/D/exP7C/jiu4y1T+q2NTmj9I720r9Vk/eKzvN3efAeyrSpmVOfh+mP4aLL9NdnBFafNDFsySh/4DYt4d7cUg5X+U/vodx7r/ILy2CS/3D7dF6xPW6+OKHDaUem0n7Ut6QaDr4ukMOKSNbrDUW1pfuqPfmMQ8H/GDf7LP9agf+pN9zcf80K8K/cf90O8J/Sf89G8i9J/0Q78m9M/6kc9kX/lrXugnE/zn/OCfyP8pP/Qjof+0H/pNoX/eC/1qKPSf8aOfE/zP+qE/sQ8X/NDvCv3n/PTvQOg/7wf/pH9f8EN/Mj++6IV+bSj0X/Ij/wn9l/3Qr4l/Lnu5wsMk4f0K3HfnJ9aTEvELAn09LPw3Catjv3WyHn6F8LB8cF/d5L2qYK0oeTxHvarweVXho9F6xiGt5x3SetkhrUcd0npiSdt4ziGt8w5pPeeQ1ksOaS1rP553SMul3ruUvUudWNZ+XNY2nndIy6VOPLKkbXzcIa1l1a+zDmm51NWnHdI675DWBYe0XOrEMw5pPfDljq6NLn25Fx3Suh9s4RmHtM47pPWYQ1pPOqS1rL6JyzltWdcd5x3ScjmnPeWQ1rLae5djyKW8XNroB3PHL8bc4XJt5dIWPuuQ1nmHtB7ErI5O9i7b+IJDWsu6HjrvkNaKQ1rLGo926ec8sBP5aLn0Jx7YiaOT/bLaCfa/HlVoac81S/nHlPK4/uBz9OhXPZaBlo3340p5pMln0hHX4xlo2Xg/qZRHGnIudVvB9WQGWjbeZ5XySOMD4o1tPZuBlo3315TySON94o1tlbp+z6WFk3PPiLVEvHH96O4cQzXzcwbCf5OwusUzPVfxFOFh+ayQfJ72I5/JcwZPK3ieVuQjffmMkie0ZE2EZ7ix/NPQRiyP11If7/1a2mEVhSbr7jNKe/CeyNecXf9HKd1thRafU9HG51mFbkWpL+U8nwPt+j1H2Wj4PUdZq7GOCQ+UHeqMw/GQ+RyW8N8MZnXRh714lvDM02eR3SsK1oqSx32onfd6ReGj0XrOIa2zS4rrJYe0nlrSNp5fUlwuZf+EQ1ovO6R13iEtl218wSGt5x3SWlbZrzikdW5J23jBIa0HdiIfrReXtI33g51wKftltRMSh9LesVhKfz0/O1srET9pB95D/pvBrEx9+OLaM/krilxFdk8oWCuUZ9JHo2k5zltV7q0UmBbrjknt9Dc8VIqTLYUv6yyuLxzqyCCrzgr/zWBWR3zorBa30PpMe8bTIZ5+iegjnnOKfKQvn1LyhJasYTHehOXPQRuxPF5Lfbz387TDKgpNjtNr8Ty8h/Gm/5vS9TcGwoj13EK72htGcW3QqIX1TlLr1+Nqv9oI+0ltGEXNqNpKmnE87CXNfrMaD6uNam8rmO1DHl9+4rlh5vgMx3M96bM1novy4TlBi61WlDzWM1ucFvlotM46omXS7ujer0c7PokDog4vSM+qB9UzT/OKVc+0+PNB9cyjTYo991nX715JWNOe73dIv+43tp2E/Pz9Ifo25hvas/fusEdD7dl7h7Jvac/eO6Tf4GfvDyF7TlXtuXuXPhs/d+8Qe8LP1TukPdGZV/3IZfI+mm/4oT/5jsA3/dCfvO/jW4eXfZ9vaN9twHednVuZ3jf/wjQPfXisi3vKWP6ZlSnN8+n1iRx0y3PoPgd0b6cv5Zf94Qjq8/u6JC8AfniPfSqsL+WkX6qQ53IeEKzxPrKpkmyk/CtpIwz2n9D726QOtn9NaT9jwPJVKmOSJnupu6XwLs35FT58j/sFMawviM/GgvhsEp/YIZ8YypxcEJ8TC+JzivgkDvkkUIbfD4h5bG8S4sP3bPYmWVB7+PsnNYd8alCG34Vad8inDmVOL4jPKvFpOOTTgDLHoJ75uwl5SENwtBQcMme9Rvjb6d/h4VLm72QJ/03C6hjPZD3+GuFh+fB6/HUFa0XJW4drzEM+ryt8NFpNwtCEegvqv+pB+6/pB4+1/5qKXPP234sk19e9tCOexGLfCGaT5L0JvFkXLkIejhVOq/Q3tsnY958em9LlcowHdUywbQez/Y3luF9sfVVR6ku5jWBWJg77Y8ByDZT2XwLeF+CakyZzwW1k/u9yyBzleonysN/blId6u0N5b0De5fR6O5ivcyXKkzbyPe5HrP8mYcB6h50TNcyaXraoPXn1sqXwsdnmg7ZHw2ybww/KB9vzOvF53SEf1MU3iE8IeRhn+HWKM0g9XPOGwFOe1ShT+b8N71T/jZTmRjA7Do7SlvDYaEMe69kO5LFuXIY8lDknzT6JLIx9+u8HnBOkTfzO9n8PMZnfpX6V9mGsYXc0LbNNNKX871Nf+vEXq3XbePCrR9V6lvGmjSnEI7g3lby1Q2BtNvvD4aBfi2q9uNqNWjxOBSvf4ziSNqc8o5QXWV/0I+tY+74ojkuT1iDvDcorQ55gxO+L+vVfqnEW+SP/ipJXges8fanROn1AWg8Fs/ZLxrY2p7M+5Z3TsT7b2lDhY2xYa30vT8G3Bjzxexd4zgXL/1eyYX7WGvWmttZgG/amJ95Zbdg8/xBxbyp5h7Fhjc6wm7RqzUY16ldrrYbNJml+rpS/qJTX3rUssr7kR9aqDbsIcjVpDfLYvqENE4yaDfNjg+txFvkj/4pSHr/JmKcvtbUEP2N1GFoPO6R1+oC0xLZq/oHYVvSj+BnKlsKnZcGM9Re1jvkated1S3vyxuaw/qLWS/ys97LEP/D9A5z2i3/8vxzrC9RV4a/FKrDcQcaX5iNpMRhco/75is4T16hY9znIx/I7sEb9Pyt724i4RM/92uF4yP2NSVuj4vsgOGm6gP5x+fiULpdjntjfbbhmrFnm7LZSHvVb+mo7mJV1G3DdrT+a5kl/yZ7wGuQ59PcjI7Yzx3X5mIRzuU/5VILZ/uD5Ge3zmyCfZbJn+F4RTveLPdta1XnmtWcvgD2rrO5to+Z7LJs9w/e8cHpgz6Z596s9Q/+M98FscQst3l6iPMRn862z8nnzkHzevA/as2z7Aby2aCvt1/YDnqQ83A/gs2NXIO81ytuFPD479Rbk4bfMOe23x/D1HHYS+5/3QG0xLT/zSfYzLcJfi737OBOhxaG0GKumc2zjMG8TrufZ3ksKH40WxwEQM/efnzhZ9jMtwn8z8KpPkU2uFxW5anZB6mrz18sk17aXdiQR2yRMmk26SHlok3CscNJsSzu9znumBXWMz0JovnopmB1XWfZGsD76VNxuh/2RsD0PlPajPb8A15w0mQvuvGdaUK5vUV4b8q5S3g7kXaM81Kvr6fV2YNcrzJM28j3buuoKYcB6pTm/wofvMR8Ns6aX7WBve/LqZVvhY5tbD9oeDTP3uQs+bSizQ3x2HPJBXbxMfOatr79P62upp62vTeIzLRP7BOvrH6Q0N4LZcXCUtoTHxlXIYz27BnltyrsOeShzTpp9ElnkPdOCtprtk83fbMP9o/A3hd+i/M024ZlnazT7LXW18cTnR3cUPjsKH40WrxfaUI/7b8ePvDL7m8J/M/CqT5FNru1gVq7aHCt1K0oeP5PuySbF2rwbEGZcy7YpD+1VXn8TbUsefxN1TLBp8zqW43GVZV7H+uxvYrsd9kedbX2gtB9tfV5/U3Afxt/M4jdq65EblId6dTO93g7seoV50ka+Z/ObeC7CeqU5v8KH7zEfDbOml5epPXn18rLCx7e/yf7ZZYd8sD2LWg/sEp95/uZ/IH9T6mX1N6X8/1+f0vxD8jdxHBylLeGxgX4j69kNyGPduAl5KHNOmn0SWeT1N3cgT9q0bHMnx6TRXnBMGn19jkljn3FMGvuMY9LYZxyTxj7LG5PGeTxPTBrtC49H21lxP/vd2dcIwn+TsDrGM/ExtX1r7YyVNh/zWWVtP6MUzNr0VeVelnlIm+8uEp+8891FhY9fXUiq2jwnSfNtOA6rjfus4wnPRfz0gD6aYNP2VNmfynuGz3b+4H6Lw6Jcef5E3eQ4LOr0QeOwvF+cNw6L9Rfld/FZWe0cwEH18k2Fj20+OWh7NMzc5y74aOe1bXt+B+WDupg1DntibXof6+WNw/4v8ItPpTSLFIdlPUPfjHUDfTOUOSeXcVjb2veBj3VwH+uiglUbTxyH1c4XaPvTNt9nUXtYy+ZjtSnvfvWxlmU9m9fHQht2UB+L14mom2zfcOyw/9WGPLHZ28GsfNnHyrtGwvqLiqE98LGy8zkKH6tNfOb5WLfIx5J6WX0sKf8fwce6TT5WG3gfpS3hsYH+F+sZ+l+sG+h/5fWx2un1YXysJYhjZf4Ow7L6WObdiU+l198e3Ln9ve5nn/beHvzgq53P+7c7X975tPPZTr//5eCrr7A1rA3cWtYCLcpprp9U7iONixlbwaMWy6NmCg7tCZZ2Blo23tpshTQrxFtbCdpo2Xhr0QikwV8lbkP9K1RP8wJLc2gzbxseG/5dpTzS+MCCfzcDLRtvbYcTafCXjVE+b2WgZeN9VSmPNOWJ7u1gtq1XqR5aaiw3j7bGe3dO2xDztSBfG68r5XHmOE9txHZcz0DLxvuGUh5pvkC8EdeNDLRsvG8q5ZHmN4k34rpJ9XDHCMvNo428bXhs+N9WyiOO5y34385Ay8b7HaU80vwG8UZc72SgZeN9SymPNJ8i3ojrFtW7BXlYbh5t5G3DY8P/rlIecbxqwS91s3hUSNOhB9MvET9pB95D/ovyqLL2wxbJEutWlDxeJWr9967CR6N10SGtyw5ptR3SuuKQFs/fh6F11SGtaw5p3XBI67pDWjcd0hIbqp1oe4L45D3RhvUXdaLtCeIzL2rxbylqITo47wn4VyEfy/8biFr8QUpTi2gJRk3OHL3LK2eNj8w1qMMOIyeTtxqjjyBJ8nCe+xZcc9KiHII7bxQW5XqL8tDO8HyNduM9ysOxezu93g5m5cs2UfN78Z5Nj/kUKtY77HjRMGt6yXY5r15eVfj4Hv8cQb/qkA+2h09DXHPIB3WRTyrPs2d/QvZM6s2zZy9BPpb/HbBn/4OisDgOjtKW8NjQ/BLJew/yWDduQx7KnJNmn0QWeaOwaKvZPmljYiOY1b2j2OkW/pvB7JjzsWawxXdM4jXDNQWrNp54rtViMtcUPhqttwmDbc3nqf+qB+0/32s+rf9sa76s/fcKyfWal3YkTZ77MfGcjG3TTipzPDAg2WDCNuXd9UcdE2yaL8rzet7dVe1kkWd/s8NyDZT2YzzmAlxzculvolzZHmC/v0N5qLc8D+A8K3Ob5m+yLcvrb2L9Rfmbtl1/9p/z6qVtN9bXrv+i/Npl8zfPl6f3sV7WXX8p/6vgb15IaYotwfG8rP4m6xn6m6wbh/E3RRZ5/U2ch6RNnufOLtvjQMGFsfubCn6bLHB+/IscT/LguGV7rMUNtL2tc3DN4zCL/3hOaYdtTPudV7P7/8J/M/CpO1P/8UZGuWp6foNkjnk8Z2p7ezcVPhqtPCeVPa2Xkqz9J/wX5f9rsaJzilwXod/z+vmaBY+fuefeeo3nHptvY94Avx7M6pC2Z8243wH6cm+ezcp7FgDHP58NmodzHq3DnAXgs0GI62YGWgfdxzeJzwYhrrfn1ONyGpYs7dZOkuN98bOwL9pU9iaVRdldgWtsz8ocDDchH3WP21JSymv0UHeZHvaZ3OP9f9va6x0qa5KMe/TtjsJOC/9Npd0+7LS2d4jyQTt0jGTNOoP914Zr1KVdpa1sn7JikvLvKeWxH9k+If73MtCy8b6tlEeabJ8Ql9S16WUWvUFcvA5xQeu2A1riP2lndirBrNzepTxcO/Ga630Fn4znD+D+UYxn4b9JWH2N5w8ID8tHG89anIHnmyxlPgC+cs/8+zAjJin/kVL+QyjD4xn7+KMMtGy8P1bKI00ez4hL6sp8KnPmP07jGsaP+9X0Wouv5NmvxhihjAdD/59a6H9gof/hHPom7Y5m6WvjWXhp45lj+jieMXaEOvVjkNtvWPi2LXyvWPjKXIT0+Y04vwkYfseC4S0LhmsWDDeCWfriQ2nxWcxvK22Rv7Ht83ysNpV/XSmvvSVHO0vO54hwzuc59i2Fzw2lLSX6+/icdrDsXeoG8xP9eFLhUaay/6o8xf1X9MUDW6ygDfePYs4SfouKFbQJD8uH/ZErClbtLQ58PvSKwueKwkejddEhrcvp9f36NhKXT8PyU6o4n2i26LA6gfWvEAasV5rzK3z4nk1f+Msj2tOgJcrD9ti+HqS9IWBLqXfY9izDE6xth3zaUOYy8Zm3Z/ZHtGcm9fK+jeSXYM/sj2nPDMfBUdoSHht5n4bV/Nw2XHPS7JPI4jBntOa9LQnrev4KSS3rvM1fIfH05K71KySarTFPyspX1749uPP24AefdD77tN+58+kXn38w+AffG3x1B5uBpNeUZnL3rxE7Kcdhwo9Gs+UwLepFBHnFJ+XbSnmkwY96aq7+EarxgT+msyxqrLkh/DEdzOOXq7QVPm2Fj0bLdmzmLPHJq6NnFT5+P5SV/6U6ZykPl4ioH5y0aQE/TvXTA04LvBTWXoRTojzBw/dsx4v4JUeepvelfamO7aUVvl+qw+P3MrWR73E/HsWLqW0v3+K5LK9eah8t3VLqHbY9tg+a3i8v1Tm3Pr2P9fK+VOdDWCqcT6/FlvgJ67h9qQ7rma+X6ogs8i4VsP/yvFTH0wdbMi8VhP+iQnyarbGF+DRbo41b/GAk24cs4Q+kteOQ1iWHtETHRDYh5OHWT4tshvbB1FDhWQpm+2M1mJUvb7s1FRw2WjbeNv0w17zthrjeyEDLxlvrG6RhW1fxfCR8ygrOiPKk7Fv44rP1vbywr6vB3rwI8mLKq0JeQnkx5NUoL4G8OuXVIK8B11jWpFXCYBKGAk6k1/3BZ59+f/Dlu1/cmbwLTCMf0PUG3Qvp74j+fm0O1AqVi+nvJv3N5jyhv2sKPi0JDkyMZTXYP4kaiazeS1XHTGGlFASqlPBFea0Ge/HgUNtS8qTuXRdlZS+Odpr3Majzt8nl8LPTMT3lafvuCfLnXd6/BbL7ybG98tJ2CA76Ri7EY3sj17LtDLGLlvUbf1neLc1PHLFMOO23E7W2MaXL5SShbpaIp/Bg3eFx0VTwouvOUfvPYFz8kMaFn2/rTMeF9OW8cYHjBst/1zIuXL4tThsXuKzlt1p4+hZRbUvBKknTfd7lcKn72pMNKBNO2rjAkxNZx8UPaVxoYY+s4+Iy0P0jOmEj8vgRjIvfonGBbfcxLuSE1rxxwSekpfw/sYwL7eQ2Pg3N42K/t8XxuNDeFudXXvmf6OIn5m5BHp/ezPr2Bt7xx9M6/GY/TNq4EDnlGRe/ReNCe6Ni1nFxHeienzMufgLj4meLGRd9aZv0ZdZxIeV/N+e4yPsmw6zjQup6HhdL9eYSPg29qHHxM0/j4k/obVra24SE57WMPEsKH6280OMx+fug3zupfDw/wdbj8TNvTN4gzFL+Dyxj0vXTWLYxKXWP0oZpT4exDftDRV4yBlZH0/pXoT0mrY28tGdgcJyh06PYb2Xgu18fmZTXzvLpZZznr1Oe7ck/7Y0wWe2C1MU393Hc4T/BfPmnBYk7/JeccQdte44xYPlf5LjDYb9pdVRxhz/1FHe4ReNCZPdnMC5+XpC4w//OGXewjYv7Le7A4wJ1n8cF6j6Pi0XHHX7uKe5wgsaFYPtLGBcnUx1bxNv2sL/mjQt8Gy2W/yvLuNDm1x24x+NC85mx3TwuUPf529V+5JU0thSskjT95jUU6jfHqTX95jiHNtbQ/+GvRWDSxoXIKc+4OJnB/mUdF/jEm3wznueL08emZS7QuFjW+eKRFGfW+eIS3Lvf5wseF9qJe2087VDeoueLC9TPruaL76cAtadtshzhtsUdLgEfrbzQK1P5V0C/Oe7QhvrudKwaCuYdwLRKOJF/mcp/yzImpQ7KzebD7Sjl24rctkluWPco5dXMIK+6Ii8t7vAmtMektZGX9kRa3AH1vQx85/Wp9s3YrH3KT5PvQN4lysNxmeWJuKx2Qeqa8bplsQt8DG1RduFqAe3CzQd2IZddeP+BXTiwXcBx6csu/DmdgxJ9/TvgR3+X/Gifj1ihHFDXQkUWbE+6lrGp2bTX4B734yWlPLZb8GiPKkhdv/KKh1sKVkna4yIcP0Hd42O66AO3KA/jqxyvwTUDyoST5keLnPL40d+lfrYdn9XGRajgNXR/PVUI6d8zUO7hYC/PRxSex+GevGlPyj8KfLg80itT+X9omS8fg/rudCyavPHxccC0SjiRf5nK/4plTEodlBv2L4/Jx5Xyjyly2ya5YV3P8gpt8jqeQV4/yjhfnoH2mLQ28tIedb5Efef5UutTLJ+3T0VmFSqP/St5OC4fIT5nFD7YH2wXME/q3l1fp9c+5d5ohqGMA+lz0SNOa5CP5f95qjub0A75XTsEzmGjEw3jzrBT6/T7Sa/zENE3Sfr4hAf+g27SanRbvVrYD1tRK140/2qzWW9Vu+Pobr837CcL5z9otsYNHw46URRV++FgP/5Gj39M/tsq1HHov01sXxmwZLHr60r5MmE0aRvkF1BdG+8Vh7xLCm/Pco1sWG1tO6aUX7e0DdstdbcUPqXFtDvzG7/k3iZh9dUPq4pctX7Yssi8ouShXs/r73WFj0ar5JBWmdqDtOfZmgd6c3i9WVOwVijPJHk1TEnJW1XurSyY1nYw299sqzTZrFr4cF+ZtKXUY51jmbbTv8PDpcyPLgv/zWAxc8ZaRrmK7MoK1grlmcR6os27ZYVPUWihndsIZu2eS79py8LbZnPZxtrGgmbHUTd2R/d+2Y5rvsG8eWpN4YW0y1T+f5Jfeoza0U7/Dg+Z2EdGXhtK+xzyrrMPgGlLaTf3O65Dud83CDPm4bqDX0OGSYvDiSwM790McThNR0qUt660Q/K4302qBLN6X6Y81Pt1ykO9575mW91Of8PDpYjnwEXaENs8qvl5WeYHrR+xvtTN4xduBB59rSgMtXk+CNzbapuP4ceWVCPW2yDQfQzhvygfQ5tjNR9D5LPuRz6h+SqAZjdWFNkwDtEXbZ3P46GktLektLcSzB9PWxY+D8bMgzHzYMzsrW/SfmNmO71eHwGv0bSsScfSv9egLpYXHGUq/3jqiJn2Pwn7IXfLKvxMuZct5Upzfu/SUO6tjfbe2xjNll8dzZYX3pujWYySdwLyysTnZPo3ygtpCY4ylX8hbbv0yXGoI/UrCv/jxH8PbuUe6inTWlXuSXnTP0+nGMVXxra7HvN3eRJ9vMfYRHfmxdX4PULaL8rANtaQlqyfeR3hgs+mhc8JB3zEVp6EvHb6Gx4uTXz7E8D/5By+rm200N/yQj8aCv1TXuiHkdDfdt0v0dS3wHWytMOMo9ePT+/jnDVvX/4k5GP5/wz2/yLRzLvfpe3L4BzLr6pDv+zYHD5Ybj9sefeMDopNWyvOq7tBechT7AbHSyQ/CKZjEPvS4RjJ/Ppv4b9JWH3MKchP8LB8bDEjPluB88Bbo2k5zltV7tnmlKsOae06pHXNIa3rDmntOqR1wyGtmw5p7Tqk9bZDWu84pLXrkNYth7TedUhr1yGt9xzSuu2Q1m5KS+YYjK07tOldzReWJHnoY+aN6wtuY/f/WYa4vuZbnaQ8nE+E1ga1w7GceiyLQMGMvrI2d0vS5CS488ppTZGFth8j/qnfdUPYZ1kECmb0+dHn4qTJSXDnlVNJkQXrvrmW9YLf9U84YFkECuZt4M0xB0yanAR3XjmVFVlodkDiKJ7XcUOWRaBgrhBvueakyUlw55XTiiILzQ6cTq95PepWTlHIsggUzKeBN8ZUOWlymsTUgnxyWlVkodmBhyhvXaHrV4b33oPF7dDWW8J/M5iVpY/11jbhYfnwequiYK0oeTjHsu6sKvdWLLQ2HNJac0hr0yGtkkNaJxzSKjukddIhrRWHtLYc0lp1SIt9CbQdbLc8nfXMfPZU+G8Gs/rsw26tKHLV4kR+z+ZOnyfTzp2sW/B4Op81eT+lFkcrKXhOpzg1HQqCWZuJuI8DfWybJ10MbbLW2lYizFge28Tnt1aV9u63V1tS6AqvLUVmjG3es5OTvVYq/8dpIfPz2ws5dzh9dr4CmDR5HiPMUv6/AWZ+dlKL09v6VLOr2G7ey0e9rVjqoa5odTmur8278vdpwM58KlSW9wDKCh2O5WC9RfW9YMna91L+z3L2vW1P57RSPmvfn6Z688742vZtuK0rCi3uX97L0p5N4n1lrd4a8bT54yeUejYbqu05ajEzqYv7kbinz+d/hCfW1/bUtLUh00A6K1S2FOj8Tfp4tDdvLQM2bQ4MlHsattV9sK0p2JjuiqUd8/ho85oWVyhR3rx5zfXzno1qr9aJa62wN6g1OvXGop83rfW7zTGITqvfq/fjWi/P86ba2W+RlXb2m/VDxpBmL03aHd37LVP5E/RuBD4n3z6gLDhpzxXw2vsYtEHzc+XzbH7P+YVRmfC8mAI1/LbTa61PpG3bwaxdYz+Q5Yx5mo32HP+evE8GfcJVBSuf+ZDyj6WF9nsXA/oUJq2NvLQn0d7FgD5UGfhiu4Jg2m4sz/ZtSymPfSPtq1B5np/xb6SFMudnVUWG63PKCz3W42ehj+SdKNp51hOEHdvO5yC09Yz2bMcmYG6TzfF07qPJ/gUmbU+O5y0chzzf8X4d5h1m31Fkkfd5Ihd2iG2Np73b8H62CyJTm11wOSb5WS/tHBmOSR9+UVLrNHqdRhS1kmiQRLWDvIfD01wferZBkbY/uQ5yv7ExvY95OP/i/MCf/5byfw98lHfIR3H5rKFmU/jZNu28tWebkvmZcuG/GczaPx+x5E3CgzIPgtnYradzIInNnmlne0ws41Qw22famW5cb74/uver6RfPtXnfs6H5RHmffWW/DHWEYyVoKyfrpcC+VitReW0cc915stDiOLx+G8C4/zUa9xwPxjyUJY97HqOYp8V9PJ85mejuqX1kyvFsKf/LytrENl9r44ExYHltDhd54dzPZ5k8nT2ZrOW295HXKZKXlL9jkZfW/uMWeWlnAE5Z5IWyxLrMm2XL5+l86+J+smVdlPK/knGdvAHtMWlt5KU9Nc0fxjmiDHznjRcsn6X/bT4vnpE5RXlo49nnRb4nKQ9tM/vfaOPFtqEtzeq/aT6rr/fnMCZMfA6J5cZJW4MKbtOmvwDd4HLME/tgnfK0eZb5Sf0PR9M8jkGX6e95z83g3zIGNR+Bn136FxSb8LXu0OKhLLOS0k5N1hhT/2ttD3qf9cEBAA==",
|
|
5446
|
-
"debug_symbols": "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",
|
|
5447
|
-
"brillig_names": [
|
|
5448
|
-
"process_log"
|
|
5449
|
-
]
|
|
5450
|
-
},
|
|
5451
|
-
{
|
|
5452
|
-
"name": "sync_notes",
|
|
5453
|
-
"is_unconstrained": true,
|
|
5454
|
-
"custom_attributes": [],
|
|
5455
|
-
"abi": {
|
|
5456
|
-
"error_types": {
|
|
5457
|
-
"17843811134343075018": {
|
|
5458
|
-
"error_kind": "string",
|
|
5459
|
-
"string": "Stack too deep"
|
|
5460
|
-
}
|
|
5461
|
-
},
|
|
5462
|
-
"parameters": [],
|
|
5463
|
-
"return_type": null
|
|
5464
|
-
},
|
|
5465
|
-
"bytecode": "H4sIAAAAAAAA/7WTyw7CIBBFqcUo0sTEx39MU0y7dOHafyCtLHVRN+766dZkJkyI0QVwEzJMgMNcHoXwKjBKESGCHDEqjAs2Xs7tjDnEqVbBvin5HRijvvhLWH+jkFnk4QPxM50/rJBzmTyfe6F913PTrF8J/z5y+af7y+l//8OzRq9bzCvh/8P4uvfXx/M2ij/SbJGc0ptoOwAqvkT+EvmhJBvn8w+Yb4Svj6KMqNO1tnaNdfZkh8H0dhfwP+KH/QbzqHp4zgQAAA==",
|
|
5466
|
-
"debug_symbols": "bY/RCoMwDEX/Jc99aLrppr8iQ6pGKZRWah0M8d8Xxybd5sslN5xcchfoqJmH2rjeT1BWC1jf6mi8Y7esAppgrDVDna5BboKnFz+N2m12ijpEKDG7CCDX8ZRnfN8bS1DmahX/qESpPrBEVew4nq/HfIE7r1B+8beV7V0HoxtL7+f72bVJl/gY6afWGHxL3RxoK5h0Y60wE0pyLEc/AQ==",
|
|
5467
|
-
"brillig_names": [
|
|
5468
|
-
"sync_notes"
|
|
5469
|
-
]
|
|
5469
|
+
"verification_key": "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"
|
|
5470
5470
|
}
|
|
5471
5471
|
],
|
|
5472
5472
|
"outputs": {
|
|
@@ -5785,33 +5785,6 @@
|
|
|
5785
5785
|
"kind": "struct",
|
|
5786
5786
|
"path": "EcdsaRAccount::entrypoint_abi"
|
|
5787
5787
|
},
|
|
5788
|
-
{
|
|
5789
|
-
"fields": [
|
|
5790
|
-
{
|
|
5791
|
-
"name": "parameters",
|
|
5792
|
-
"type": {
|
|
5793
|
-
"fields": [
|
|
5794
|
-
{
|
|
5795
|
-
"name": "inner_hash",
|
|
5796
|
-
"type": {
|
|
5797
|
-
"kind": "field"
|
|
5798
|
-
}
|
|
5799
|
-
}
|
|
5800
|
-
],
|
|
5801
|
-
"kind": "struct",
|
|
5802
|
-
"path": "EcdsaRAccount::verify_private_authwit_parameters"
|
|
5803
|
-
}
|
|
5804
|
-
},
|
|
5805
|
-
{
|
|
5806
|
-
"name": "return_type",
|
|
5807
|
-
"type": {
|
|
5808
|
-
"kind": "field"
|
|
5809
|
-
}
|
|
5810
|
-
}
|
|
5811
|
-
],
|
|
5812
|
-
"kind": "struct",
|
|
5813
|
-
"path": "EcdsaRAccount::verify_private_authwit_abi"
|
|
5814
|
-
},
|
|
5815
5788
|
{
|
|
5816
5789
|
"fields": [
|
|
5817
5790
|
{
|
|
@@ -5850,6 +5823,33 @@
|
|
|
5850
5823
|
],
|
|
5851
5824
|
"kind": "struct",
|
|
5852
5825
|
"path": "EcdsaRAccount::constructor_abi"
|
|
5826
|
+
},
|
|
5827
|
+
{
|
|
5828
|
+
"fields": [
|
|
5829
|
+
{
|
|
5830
|
+
"name": "parameters",
|
|
5831
|
+
"type": {
|
|
5832
|
+
"fields": [
|
|
5833
|
+
{
|
|
5834
|
+
"name": "inner_hash",
|
|
5835
|
+
"type": {
|
|
5836
|
+
"kind": "field"
|
|
5837
|
+
}
|
|
5838
|
+
}
|
|
5839
|
+
],
|
|
5840
|
+
"kind": "struct",
|
|
5841
|
+
"path": "EcdsaRAccount::verify_private_authwit_parameters"
|
|
5842
|
+
}
|
|
5843
|
+
},
|
|
5844
|
+
{
|
|
5845
|
+
"name": "return_type",
|
|
5846
|
+
"type": {
|
|
5847
|
+
"kind": "field"
|
|
5848
|
+
}
|
|
5849
|
+
}
|
|
5850
|
+
],
|
|
5851
|
+
"kind": "struct",
|
|
5852
|
+
"path": "EcdsaRAccount::verify_private_authwit_abi"
|
|
5853
5853
|
}
|
|
5854
5854
|
]
|
|
5855
5855
|
}
|
|
@@ -5941,7 +5941,7 @@
|
|
|
5941
5941
|
},
|
|
5942
5942
|
"18": {
|
|
5943
5943
|
"path": "std/field/bn254.nr",
|
|
5944
|
-
"source": "use crate::field::field_less_than;\nuse crate::runtime::is_unconstrained;\n\n// The low and high decomposition of the field modulus\nglobal PLO: Field = 53438638232309528389504892708671455233;\nglobal PHI: Field = 64323764613183177041862057485226039389;\n\npub(crate) global TWO_POW_128: Field = 0x100000000000000000000000000000000;\nglobal TWO_POW_64: Field = 0x10000000000000000;\n\n// Decomposes a single field into two 16 byte fields.\nfn compute_decomposition(mut x: Field) -> (Field, Field) {\n // Here's we're taking advantage of truncating 64 bit limbs from the input field\n // and then subtracting them from the input such the field division is equivalent to integer division.\n let low_lower_64 = (x as u64) as Field;\n x = (x - low_lower_64) / TWO_POW_64;\n let low_upper_64 = (x as u64) as Field;\n\n let high = (x - low_upper_64) / TWO_POW_64;\n let low = low_upper_64 * TWO_POW_64 + low_lower_64;\n\n (low, high)\n}\n\npub(crate) unconstrained fn decompose_hint(x: Field) -> (Field, Field) {\n compute_decomposition(x)\n}\n\nunconstrained fn lte_hint(x: Field, y: Field) -> bool {\n if x == y {\n true\n } else {\n field_less_than(x, y)\n }\n}\n\n// Assert that (alo > blo && ahi >= bhi) || (alo <= blo && ahi > bhi)\nfn assert_gt_limbs(a: (Field, Field), b: (Field, Field)) {\n let (alo, ahi) = a;\n let (blo, bhi) = b;\n /// Safety: borrow is enforced to be boolean due to its type.\n /// if borrow is 0, it asserts that (alo > blo && ahi >= bhi)\n /// if borrow is 1, it asserts that (alo <= blo && ahi > bhi)\n unsafe {\n
|
|
5944
|
+
"source": "use crate::field::field_less_than;\nuse crate::runtime::is_unconstrained;\n\n// The low and high decomposition of the field modulus\nglobal PLO: Field = 53438638232309528389504892708671455233;\nglobal PHI: Field = 64323764613183177041862057485226039389;\n\npub(crate) global TWO_POW_128: Field = 0x100000000000000000000000000000000;\nglobal TWO_POW_64: Field = 0x10000000000000000;\n\n// Decomposes a single field into two 16 byte fields.\nfn compute_decomposition(mut x: Field) -> (Field, Field) {\n // Here's we're taking advantage of truncating 64 bit limbs from the input field\n // and then subtracting them from the input such the field division is equivalent to integer division.\n let low_lower_64 = (x as u64) as Field;\n x = (x - low_lower_64) / TWO_POW_64;\n let low_upper_64 = (x as u64) as Field;\n\n let high = (x - low_upper_64) / TWO_POW_64;\n let low = low_upper_64 * TWO_POW_64 + low_lower_64;\n\n (low, high)\n}\n\npub(crate) unconstrained fn decompose_hint(x: Field) -> (Field, Field) {\n compute_decomposition(x)\n}\n\nunconstrained fn lte_hint(x: Field, y: Field) -> bool {\n if x == y {\n true\n } else {\n field_less_than(x, y)\n }\n}\n\n// Assert that (alo > blo && ahi >= bhi) || (alo <= blo && ahi > bhi)\nfn assert_gt_limbs(a: (Field, Field), b: (Field, Field)) {\n let (alo, ahi) = a;\n let (blo, bhi) = b;\n /// Safety: borrow is enforced to be boolean due to its type.\n /// if borrow is 0, it asserts that (alo > blo && ahi >= bhi)\n /// if borrow is 1, it asserts that (alo <= blo && ahi > bhi)\n unsafe {\n let borrow = lte_hint(alo, blo);\n\n let rlo = alo - blo - 1 + (borrow as Field) * TWO_POW_128;\n let rhi = ahi - bhi - (borrow as Field);\n\n rlo.assert_max_bit_size::<128>();\n rhi.assert_max_bit_size::<128>();\n }\n}\n\n/// Decompose a single field into two 16 byte fields.\npub fn decompose(x: Field) -> (Field, Field) {\n if is_unconstrained() {\n compute_decomposition(x)\n } else {\n /// Safety: decomposition is properly checked below\n unsafe {\n // Take hints of the decomposition\n let (xlo, xhi) = decompose_hint(x);\n\n // Range check the limbs\n xlo.assert_max_bit_size::<128>();\n xhi.assert_max_bit_size::<128>();\n\n // Check that the decomposition is correct\n assert_eq(x, xlo + TWO_POW_128 * xhi);\n\n // Assert that the decomposition of P is greater than the decomposition of x\n assert_gt_limbs((PLO, PHI), (xlo, xhi));\n (xlo, xhi)\n }\n }\n}\n\npub fn assert_gt(a: Field, b: Field) {\n if is_unconstrained() {\n assert(\n /// Safety: already unconstrained\n unsafe { field_less_than(b, a) },\n );\n } else {\n // Decompose a and b\n let a_limbs = decompose(a);\n let b_limbs = decompose(b);\n\n // Assert that a_limbs is greater than b_limbs\n assert_gt_limbs(a_limbs, b_limbs)\n }\n}\n\npub fn assert_lt(a: Field, b: Field) {\n assert_gt(b, a);\n}\n\npub fn gt(a: Field, b: Field) -> bool {\n if is_unconstrained() {\n /// Safety: unsafe in unconstrained\n unsafe {\n field_less_than(b, a)\n }\n } else if a == b {\n false\n } else {\n /// Safety: Take a hint of the comparison and verify it\n unsafe {\n if field_less_than(a, b) {\n assert_gt(b, a);\n false\n } else {\n assert_gt(a, b);\n true\n }\n }\n }\n}\n\npub fn lt(a: Field, b: Field) -> bool {\n gt(b, a)\n}\n\nmod tests {\n // TODO: Allow imports from \"super\"\n use crate::field::bn254::{assert_gt, decompose, gt, lte_hint, PHI, PLO, TWO_POW_128};\n\n #[test]\n fn check_decompose() {\n assert_eq(decompose(TWO_POW_128), (0, 1));\n assert_eq(decompose(TWO_POW_128 + 0x1234567890), (0x1234567890, 1));\n assert_eq(decompose(0x1234567890), (0x1234567890, 0));\n }\n\n #[test]\n unconstrained fn check_decompose_unconstrained() {\n assert_eq(decompose(TWO_POW_128), (0, 1));\n assert_eq(decompose(TWO_POW_128 + 0x1234567890), (0x1234567890, 1));\n assert_eq(decompose(0x1234567890), (0x1234567890, 0));\n }\n\n #[test]\n unconstrained fn check_lte_hint() {\n assert(lte_hint(0, 1));\n assert(lte_hint(0, 0x100));\n assert(lte_hint(0x100, TWO_POW_128 - 1));\n assert(!lte_hint(0 - 1, 0));\n\n assert(lte_hint(0, 0));\n assert(lte_hint(0x100, 0x100));\n assert(lte_hint(0 - 1, 0 - 1));\n }\n\n #[test]\n fn check_assert_gt() {\n assert_gt(1, 0);\n assert_gt(0x100, 0);\n assert_gt((0 - 1), (0 - 2));\n assert_gt(TWO_POW_128, 0);\n assert_gt(0 - 1, 0);\n }\n\n #[test]\n unconstrained fn check_assert_gt_unconstrained() {\n assert_gt(1, 0);\n assert_gt(0x100, 0);\n assert_gt((0 - 1), (0 - 2));\n assert_gt(TWO_POW_128, 0);\n assert_gt(0 - 1, 0);\n }\n\n #[test]\n fn check_gt() {\n assert(gt(1, 0));\n assert(gt(0x100, 0));\n assert(gt((0 - 1), (0 - 2)));\n assert(gt(TWO_POW_128, 0));\n assert(!gt(0, 0));\n assert(!gt(0, 0x100));\n assert(gt(0 - 1, 0 - 2));\n assert(!gt(0 - 2, 0 - 1));\n }\n\n #[test]\n unconstrained fn check_gt_unconstrained() {\n assert(gt(1, 0));\n assert(gt(0x100, 0));\n assert(gt((0 - 1), (0 - 2)));\n assert(gt(TWO_POW_128, 0));\n assert(!gt(0, 0));\n assert(!gt(0, 0x100));\n assert(gt(0 - 1, 0 - 2));\n assert(!gt(0 - 2, 0 - 1));\n }\n\n #[test]\n fn check_plo_phi() {\n assert_eq(PLO + PHI * TWO_POW_128, 0);\n let p_bytes = crate::field::modulus_le_bytes();\n let mut p_low: Field = 0;\n let mut p_high: Field = 0;\n\n let mut offset = 1;\n for i in 0..16 {\n p_low += (p_bytes[i] as Field) * offset;\n p_high += (p_bytes[i + 16] as Field) * offset;\n offset *= 256;\n }\n assert_eq(p_low, PLO);\n assert_eq(p_high, PHI);\n }\n}\n"
|
|
5945
5945
|
},
|
|
5946
5946
|
"182": {
|
|
5947
5947
|
"path": "/build-volume/noir-projects/aztec-nr/aztec/src/utils/array/subarray.nr",
|
|
@@ -5961,45 +5961,45 @@
|
|
|
5961
5961
|
},
|
|
5962
5962
|
"19": {
|
|
5963
5963
|
"path": "std/field/mod.nr",
|
|
5964
|
-
"source": "pub mod bn254;\nuse crate::{runtime::is_unconstrained, static_assert};\nuse bn254::lt as bn254_lt;\n\nimpl Field {\n /// Asserts that `self` can be represented in `bit_size` bits.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^{bit_size}`.\n // docs:start:assert_max_bit_size\n pub fn assert_max_bit_size<let BIT_SIZE: u32>(self) {\n // docs:end:assert_max_bit_size\n static_assert(\n BIT_SIZE < modulus_num_bits() as u32,\n \"BIT_SIZE must be less than modulus_num_bits\",\n );\n self.__assert_max_bit_size(BIT_SIZE);\n }\n\n #[builtin(apply_range_constraint)]\n fn __assert_max_bit_size(self, bit_size: u32) {}\n\n /// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n /// This slice will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n /// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n /// wrap around due to overflow when verifying the decomposition.\n #[builtin(to_le_bits)]\n fn _to_le_bits<let N: u32>(self: Self) -> [u1; N] {}\n\n /// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n /// This array will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n /// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n /// wrap around due to overflow when verifying the decomposition.\n #[builtin(to_be_bits)]\n fn _to_be_bits<let N: u32>(self: Self) -> [u1; N] {}\n\n /// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n /// This slice will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_le_bits\n pub fn to_le_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_le_bits\n let bits = self._to_le_bits();\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[N - 1 - i] != p[N - 1 - i]) {\n assert(p[N - 1 - i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n /// This array will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_be_bits\n pub fn to_be_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_be_bits\n let bits = self._to_be_bits();\n\n if !is_unconstrained() {\n // Ensure that the decomposition does not overflow the modulus\n let p = modulus_be_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[i] != p[i]) {\n assert(p[i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its little endian byte decomposition as a `[u8;N]` array\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_le_bytes\n pub fn to_le_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_le_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_le_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[N - 1 - i] != p[N - 1 - i]) {\n assert(bytes[N - 1 - i] < p[N - 1 - i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n /// Decomposes `self` into its big endian byte decomposition as a `[u8;N]` array of length required to represent the field modulus\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_be_bytes\n pub fn to_be_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_be_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_be_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_be_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[i] != p[i]) {\n assert(bytes[i] < p[i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n // docs:start:to_le_radix\n pub fn to_le_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n static_assert(1 < radix, \"radix must be greater than 1\");\n static_assert(radix <= 256, \"radix must be less than or equal to 256\");\n static_assert(radix & (radix - 1) == 0, \"radix must be a power of 2\");\n }\n self.__to_le_radix(radix)\n }\n // docs:end:to_le_radix\n\n // docs:start:to_be_radix\n pub fn to_be_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(radix);\n }\n self.__to_be_radix(radix)\n }\n // docs:end:to_be_radix\n\n // `_radix` must be less than 256\n #[builtin(to_le_radix)]\n fn __to_le_radix<let N: u32>(self, radix: u32) -> [u8; N] {}\n\n // `_radix` must be less than 256\n #[builtin(to_be_radix)]\n fn __to_be_radix<let N: u32>(self, radix: u32) -> [u8; N] {}\n\n // Returns self to the power of the given exponent value.\n // Caution: we assume the exponent fits into 32 bits\n // using a bigger bit size impacts negatively the performance and should be done only if the exponent does not fit in 32 bits\n pub fn pow_32(self, exponent: Field) -> Field {\n let mut r: Field = 1;\n let b: [u1; 32] = exponent.to_le_bits();\n\n for i in 1..33 {\n r *= r;\n r = (b[32 - i] as Field) * (r * self) + (1 - b[32 - i] as Field) * r;\n }\n r\n }\n\n // Parity of (prime) Field element, i.e. sgn0(x mod p) = 0 if x `elem` {0, ..., p-1} is even, otherwise sgn0(x mod p) = 1.\n pub fn sgn0(self) -> u1 {\n self as u1\n }\n\n pub fn lt(self, another: Field) -> bool {\n if crate::compat::is_bn254() {\n bn254_lt(self, another)\n } else {\n lt_fallback(self, another)\n }\n }\n\n /// Convert a little endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_le_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[i] as Field) * v;\n v = v * 256;\n }\n result\n }\n\n /// Convert a big endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_be_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[N - 1 - i] as Field) * v;\n v = v * 256;\n }\n result\n }\n}\n\n#[builtin(modulus_num_bits)]\npub comptime fn modulus_num_bits() -> u64 {}\n\n#[builtin(modulus_be_bits)]\npub comptime fn modulus_be_bits() -> [u1] {}\n\n#[builtin(modulus_le_bits)]\npub comptime fn modulus_le_bits() -> [u1] {}\n\n#[builtin(modulus_be_bytes)]\npub comptime fn modulus_be_bytes() -> [u8] {}\n\n#[builtin(modulus_le_bytes)]\npub comptime fn modulus_le_bytes() -> [u8] {}\n\n/// An unconstrained only built in to efficiently compare fields.\n#[builtin(field_less_than)]\nunconstrained fn __field_less_than(x: Field, y: Field) -> bool {}\n\npub(crate) unconstrained fn field_less_than(x: Field, y: Field) -> bool {\n __field_less_than(x, y)\n}\n\n// Convert a 32 byte array to a field element by modding\npub fn bytes32_to_field(bytes32: [u8; 32]) -> Field {\n // Convert it to a field element\n let mut v = 1;\n let mut high = 0 as Field;\n let mut low = 0 as Field;\n\n for i in 0..16 {\n high = high + (bytes32[15 - i] as Field) * v;\n low = low + (bytes32[16 + 15 - i] as Field) * v;\n v = v * 256;\n }\n // Abuse that a % p + b % p = (a + b) % p and that low < p\n low + high * v\n}\n\nfn lt_fallback(x: Field, y: Field) -> bool {\n if is_unconstrained() {\n /// Safety: unconstrained context\n unsafe {\n //@safety : unconstrained context\n field_less_than(x, y)\n }\n } else {\n let x_bytes: [u8; 32] = x.to_le_bytes();\n let y_bytes: [u8; 32] = y.to_le_bytes();\n let mut x_is_lt = false;\n let mut done = false;\n for i in 0..32 {\n if (!done) {\n let x_byte = x_bytes[32 - 1 - i] as u8;\n let y_byte = y_bytes[32 - 1 - i] as u8;\n let bytes_match = x_byte == y_byte;\n if !bytes_match {\n x_is_lt = x_byte < y_byte;\n done = true;\n }\n }\n }\n x_is_lt\n }\n}\n\nmod tests {\n use crate::{panic::panic, runtime};\n use super::field_less_than;\n\n #[test]\n // docs:start:to_be_bits_example\n fn test_to_be_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_be_bits();\n assert_eq(bits, [0, 0, 0, 0, 0, 0, 1, 0]);\n }\n // docs:end:to_be_bits_example\n\n #[test]\n // docs:start:to_le_bits_example\n fn test_to_le_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_le_bits();\n assert_eq(bits, [0, 1, 0, 0, 0, 0, 0, 0]);\n }\n // docs:end:to_le_bits_example\n\n #[test]\n // docs:start:to_be_bytes_example\n fn test_to_be_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_be_bytes();\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 0, 2]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_bytes_example\n\n #[test]\n // docs:start:to_le_bytes_example\n fn test_to_le_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_le_bytes();\n assert_eq(bytes, [2, 0, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_bytes_example\n\n #[test]\n // docs:start:to_be_radix_example\n fn test_to_be_radix() {\n let field = 2;\n let bytes: [u8; 8] = field.to_be_radix(256);\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 0, 2]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_radix_example\n\n #[test]\n // docs:start:to_le_radix_example\n fn test_to_le_radix() {\n let field = 2;\n let bytes: [u8; 8] = field.to_le_radix(256);\n assert_eq(bytes, [2, 0, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_radix_example\n\n #[test(should_fail_with = \"radix must be greater than 1\")]\n fn test_to_le_radix_1() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(1);\n } else {\n panic(f\"radix must be greater than 1\");\n }\n }\n\n // TODO: Update this test to account for the Brillig restriction that the radix must be greater than 2\n // #[test]\n // fn test_to_le_radix_brillig_1() {\n // // this test should only fail in constrained mode\n // if runtime::is_unconstrained() {\n // let field = 1;\n // let out: [u8; 8] = field.to_le_radix(1);\n // crate::println(out);\n // let expected = [0; 8];\n // assert(out == expected, \"unexpected result\");\n // }\n // }\n\n #[test(should_fail_with = \"radix must be a power of 2\")]\n fn test_to_le_radix_3() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(3);\n } else {\n panic(f\"radix must be a power of 2\");\n }\n }\n\n #[test]\n fn test_to_le_radix_brillig_3() {\n // this test should only fail in constrained mode\n if runtime::is_unconstrained() {\n let field = 1;\n let out: [u8; 8] = field.to_le_radix(3);\n let mut expected = [0; 8];\n expected[0] = 1;\n assert(out == expected, \"unexpected result\");\n }\n }\n\n #[test(should_fail_with = \"radix must be less than or equal to 256\")]\n fn test_to_le_radix_512() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(512);\n } else {\n panic(f\"radix must be less than or equal to 256\")\n }\n }\n\n // TODO: Update this test to account for the Brillig restriction that the radix must be less than 512\n // #[test]\n // fn test_to_le_radix_brillig_512() {\n // // this test should only fail in constrained mode\n // if runtime::is_unconstrained() {\n // let field = 1;\n // let out: [u8; 8] = field.to_le_radix(512);\n // let mut expected = [0; 8];\n // expected[0] = 1;\n // assert(out == expected, \"unexpected result\");\n // }\n // }\n\n #[test]\n unconstrained fn test_field_less_than() {\n assert(field_less_than(0, 1));\n assert(field_less_than(0, 0x100));\n assert(field_less_than(0x100, 0 - 1));\n assert(!field_less_than(0 - 1, 0));\n }\n}\n"
|
|
5964
|
+
"source": "pub mod bn254;\nuse crate::{runtime::is_unconstrained, static_assert};\nuse bn254::lt as bn254_lt;\n\nimpl Field {\n /// Asserts that `self` can be represented in `bit_size` bits.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^{bit_size}`.\n // docs:start:assert_max_bit_size\n pub fn assert_max_bit_size<let BIT_SIZE: u32>(self) {\n // docs:end:assert_max_bit_size\n static_assert(\n BIT_SIZE < modulus_num_bits() as u32,\n \"BIT_SIZE must be less than modulus_num_bits\",\n );\n self.__assert_max_bit_size(BIT_SIZE);\n }\n\n #[builtin(apply_range_constraint)]\n fn __assert_max_bit_size(self, bit_size: u32) {}\n\n /// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n /// This slice will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n /// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n /// wrap around due to overflow when verifying the decomposition.\n #[builtin(to_le_bits)]\n fn _to_le_bits<let N: u32>(self: Self) -> [u1; N] {}\n\n /// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n /// This array will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n /// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n /// wrap around due to overflow when verifying the decomposition.\n #[builtin(to_be_bits)]\n fn _to_be_bits<let N: u32>(self: Self) -> [u1; N] {}\n\n /// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n /// This slice will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_le_bits\n pub fn to_le_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_le_bits\n let bits = self._to_le_bits();\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[N - 1 - i] != p[N - 1 - i]) {\n assert(p[N - 1 - i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n /// This array will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_be_bits\n pub fn to_be_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_be_bits\n let bits = self._to_be_bits();\n\n if !is_unconstrained() {\n // Ensure that the decomposition does not overflow the modulus\n let p = modulus_be_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[i] != p[i]) {\n assert(p[i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its little endian byte decomposition as a `[u8;N]` array\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_le_bytes\n pub fn to_le_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_le_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_le_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[N - 1 - i] != p[N - 1 - i]) {\n assert(bytes[N - 1 - i] < p[N - 1 - i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n /// Decomposes `self` into its big endian byte decomposition as a `[u8;N]` array of length required to represent the field modulus\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_be_bytes\n pub fn to_be_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_be_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_be_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_be_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[i] != p[i]) {\n assert(bytes[i] < p[i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n // docs:start:to_le_radix\n pub fn to_le_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n static_assert(1 < radix, \"radix must be greater than 1\");\n static_assert(radix <= 256, \"radix must be less than or equal to 256\");\n static_assert(radix & (radix - 1) == 0, \"radix must be a power of 2\");\n }\n self.__to_le_radix(radix)\n }\n // docs:end:to_le_radix\n\n // docs:start:to_be_radix\n pub fn to_be_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(radix);\n }\n self.__to_be_radix(radix)\n }\n // docs:end:to_be_radix\n\n // `_radix` must be less than 256\n #[builtin(to_le_radix)]\n fn __to_le_radix<let N: u32>(self, radix: u32) -> [u8; N] {}\n\n // `_radix` must be less than 256\n #[builtin(to_be_radix)]\n fn __to_be_radix<let N: u32>(self, radix: u32) -> [u8; N] {}\n\n // Returns self to the power of the given exponent value.\n // Caution: we assume the exponent fits into 32 bits\n // using a bigger bit size impacts negatively the performance and should be done only if the exponent does not fit in 32 bits\n pub fn pow_32(self, exponent: Field) -> Field {\n let mut r: Field = 1;\n let b: [u1; 32] = exponent.to_le_bits();\n\n for i in 1..33 {\n r *= r;\n r = (b[32 - i] as Field) * (r * self) + (1 - b[32 - i] as Field) * r;\n }\n r\n }\n\n // Parity of (prime) Field element, i.e. sgn0(x mod p) = 0 if x `elem` {0, ..., p-1} is even, otherwise sgn0(x mod p) = 1.\n pub fn sgn0(self) -> u1 {\n self as u1\n }\n\n pub fn lt(self, another: Field) -> bool {\n if crate::compat::is_bn254() {\n bn254_lt(self, another)\n } else {\n lt_fallback(self, another)\n }\n }\n\n /// Convert a little endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_le_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[i] as Field) * v;\n v = v * 256;\n }\n result\n }\n\n /// Convert a big endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_be_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[N - 1 - i] as Field) * v;\n v = v * 256;\n }\n result\n }\n}\n\n#[builtin(modulus_num_bits)]\npub comptime fn modulus_num_bits() -> u64 {}\n\n#[builtin(modulus_be_bits)]\npub comptime fn modulus_be_bits() -> [u1] {}\n\n#[builtin(modulus_le_bits)]\npub comptime fn modulus_le_bits() -> [u1] {}\n\n#[builtin(modulus_be_bytes)]\npub comptime fn modulus_be_bytes() -> [u8] {}\n\n#[builtin(modulus_le_bytes)]\npub comptime fn modulus_le_bytes() -> [u8] {}\n\n/// An unconstrained only built in to efficiently compare fields.\n#[builtin(field_less_than)]\nunconstrained fn __field_less_than(x: Field, y: Field) -> bool {}\n\npub(crate) unconstrained fn field_less_than(x: Field, y: Field) -> bool {\n __field_less_than(x, y)\n}\n\n// Convert a 32 byte array to a field element by modding\npub fn bytes32_to_field(bytes32: [u8; 32]) -> Field {\n // Convert it to a field element\n let mut v = 1;\n let mut high = 0 as Field;\n let mut low = 0 as Field;\n\n for i in 0..16 {\n high = high + (bytes32[15 - i] as Field) * v;\n low = low + (bytes32[16 + 15 - i] as Field) * v;\n v = v * 256;\n }\n // Abuse that a % p + b % p = (a + b) % p and that low < p\n low + high * v\n}\n\nfn lt_fallback(x: Field, y: Field) -> bool {\n if is_unconstrained() {\n /// Safety: unconstrained context\n unsafe {\n field_less_than(x, y)\n }\n } else {\n let x_bytes: [u8; 32] = x.to_le_bytes();\n let y_bytes: [u8; 32] = y.to_le_bytes();\n let mut x_is_lt = false;\n let mut done = false;\n for i in 0..32 {\n if (!done) {\n let x_byte = x_bytes[32 - 1 - i] as u8;\n let y_byte = y_bytes[32 - 1 - i] as u8;\n let bytes_match = x_byte == y_byte;\n if !bytes_match {\n x_is_lt = x_byte < y_byte;\n done = true;\n }\n }\n }\n x_is_lt\n }\n}\n\nmod tests {\n use crate::{panic::panic, runtime};\n use super::field_less_than;\n\n #[test]\n // docs:start:to_be_bits_example\n fn test_to_be_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_be_bits();\n assert_eq(bits, [0, 0, 0, 0, 0, 0, 1, 0]);\n }\n // docs:end:to_be_bits_example\n\n #[test]\n // docs:start:to_le_bits_example\n fn test_to_le_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_le_bits();\n assert_eq(bits, [0, 1, 0, 0, 0, 0, 0, 0]);\n }\n // docs:end:to_le_bits_example\n\n #[test]\n // docs:start:to_be_bytes_example\n fn test_to_be_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_be_bytes();\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 0, 2]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_bytes_example\n\n #[test]\n // docs:start:to_le_bytes_example\n fn test_to_le_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_le_bytes();\n assert_eq(bytes, [2, 0, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_bytes_example\n\n #[test]\n // docs:start:to_be_radix_example\n fn test_to_be_radix() {\n // 259, in base 256, big endian, is [1, 3].\n // i.e. 3 * 256^0 + 1 * 256^1\n let field = 259;\n\n // The radix (in this example, 256) must be a power of 2.\n // The length of the returned byte array can be specified to be\n // >= the amount of space needed.\n let bytes: [u8; 8] = field.to_be_radix(256);\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 1, 3]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_radix_example\n\n #[test]\n // docs:start:to_le_radix_example\n fn test_to_le_radix() {\n // 259, in base 256, little endian, is [3, 1].\n // i.e. 3 * 256^0 + 1 * 256^1\n let field = 259;\n\n // The radix (in this example, 256) must be a power of 2.\n // The length of the returned byte array can be specified to be\n // >= the amount of space needed.\n let bytes: [u8; 8] = field.to_le_radix(256);\n assert_eq(bytes, [3, 1, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_radix_example\n\n #[test(should_fail_with = \"radix must be greater than 1\")]\n fn test_to_le_radix_1() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(1);\n } else {\n panic(f\"radix must be greater than 1\");\n }\n }\n\n // TODO: Update this test to account for the Brillig restriction that the radix must be greater than 2\n //#[test]\n //fn test_to_le_radix_brillig_1() {\n // // this test should only fail in constrained mode\n // if runtime::is_unconstrained() {\n // let field = 1;\n // let out: [u8; 8] = field.to_le_radix(1);\n // crate::println(out);\n // let expected = [0; 8];\n // assert(out == expected, \"unexpected result\");\n // }\n //}\n\n #[test(should_fail_with = \"radix must be a power of 2\")]\n fn test_to_le_radix_3() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(3);\n } else {\n panic(f\"radix must be a power of 2\");\n }\n }\n\n #[test]\n fn test_to_le_radix_brillig_3() {\n // this test should only fail in constrained mode\n if runtime::is_unconstrained() {\n let field = 1;\n let out: [u8; 8] = field.to_le_radix(3);\n let mut expected = [0; 8];\n expected[0] = 1;\n assert(out == expected, \"unexpected result\");\n }\n }\n\n #[test(should_fail_with = \"radix must be less than or equal to 256\")]\n fn test_to_le_radix_512() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(512);\n } else {\n panic(f\"radix must be less than or equal to 256\")\n }\n }\n\n // TODO: Update this test to account for the Brillig restriction that the radix must be less than 512\n //#[test]\n //fn test_to_le_radix_brillig_512() {\n // // this test should only fail in constrained mode\n // if runtime::is_unconstrained() {\n // let field = 1;\n // let out: [u8; 8] = field.to_le_radix(512);\n // let mut expected = [0; 8];\n // expected[0] = 1;\n // assert(out == expected, \"unexpected result\");\n // }\n //}\n\n #[test]\n unconstrained fn test_field_less_than() {\n assert(field_less_than(0, 1));\n assert(field_less_than(0, 0x100));\n assert(field_less_than(0x100, 0 - 1));\n assert(!field_less_than(0 - 1, 0));\n }\n}\n"
|
|
5965
5965
|
},
|
|
5966
5966
|
"21": {
|
|
5967
5967
|
"path": "std/hash/mod.nr",
|
|
5968
5968
|
"source": "pub mod poseidon;\npub mod poseidon2;\npub mod keccak;\npub mod sha256;\npub mod sha512;\n\nuse crate::default::Default;\nuse crate::embedded_curve_ops::{\n EmbeddedCurvePoint, EmbeddedCurveScalar, multi_scalar_mul, multi_scalar_mul_array_return,\n};\nuse crate::meta::derive_via;\nuse crate::uint128::U128;\n\n// Kept for backwards compatibility\npub use sha256::{digest, sha256, sha256_compression, sha256_var};\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n#[foreign(blake3)]\n// docs:start:blake3\npub fn blake3<let N: u32>(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{}\n\n// docs:start:pedersen_commitment\npub fn pedersen_commitment<let N: u32>(input: [Field; N]) -> EmbeddedCurvePoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\n#[inline_always]\npub fn pedersen_commitment_with_separator<let N: u32>(\n input: [Field; N],\n separator: u32,\n) -> EmbeddedCurvePoint {\n let mut points = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N];\n for i in 0..N {\n // we use the unsafe version because the multi_scalar_mul will constrain the scalars.\n points[i] = from_field_unsafe(input[i]);\n }\n let generators = derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n multi_scalar_mul(generators, points)\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash<let N: u32>(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n pedersen_hash_with_separator(input, 0)\n}\n\n#[no_predicates]\npub fn pedersen_hash_with_separator<let N: u32>(input: [Field; N], separator: u32) -> Field {\n let mut scalars: [EmbeddedCurveScalar; N + 1] = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N + 1];\n let mut generators: [EmbeddedCurvePoint; N + 1] =\n [EmbeddedCurvePoint::point_at_infinity(); N + 1];\n let domain_generators: [EmbeddedCurvePoint; N] =\n derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n\n for i in 0..N {\n scalars[i] = from_field_unsafe(input[i]);\n generators[i] = domain_generators[i];\n }\n scalars[N] = EmbeddedCurveScalar { lo: N as Field, hi: 0 as Field };\n\n let length_generator: [EmbeddedCurvePoint; 1] =\n derive_generators(\"pedersen_hash_length\".as_bytes(), 0);\n generators[N] = length_generator[0];\n multi_scalar_mul_array_return(generators, scalars)[0]\n}\n\n#[field(bn254)]\n#[inline_always]\npub fn derive_generators<let N: u32, let M: u32>(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {\n crate::assert_constant(domain_separator_bytes);\n // TODO(https://github.com/noir-lang/noir/issues/5672): Add back assert_constant on starting_index\n __derive_generators(domain_separator_bytes, starting_index)\n}\n\n#[builtin(derive_pedersen_generators)]\n#[field(bn254)]\nfn __derive_generators<let N: u32, let M: u32>(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {}\n\n#[field(bn254)]\n// Same as from_field but:\n// does not assert the limbs are 128 bits\n// does not assert the decomposition does not overflow the EmbeddedCurveScalar\nfn from_field_unsafe(scalar: Field) -> EmbeddedCurveScalar {\n /// Safety: xlo and xhi decomposition is checked below\n let (xlo, xhi) = unsafe { crate::field::bn254::decompose_hint(scalar) };\n // Check that the decomposition is correct\n assert_eq(scalar, xlo + crate::field::bn254::TWO_POW_128 * xhi);\n EmbeddedCurveScalar { lo: xlo, hi: xhi }\n}\n\npub fn hash_to_field(inputs: [Field]) -> Field {\n let mut sum = 0;\n\n for input in inputs {\n let input_bytes: [u8; 32] = input.to_le_bytes();\n sum += crate::field::bytes32_to_field(blake2s(input_bytes));\n }\n\n sum\n}\n\n// docs:start:keccak256\npub fn keccak256<let N: u32>(input: [u8; N], message_size: u32) -> [u8; 32]\n// docs:end:keccak256\n{\n crate::hash::keccak::keccak256(input, message_size)\n}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation<let N: u32>(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n// Generic hashing support.\n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\n#[derive_via(derive_hash)]\npub trait Hash {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher;\n}\n\n// docs:start:derive_hash\ncomptime fn derive_hash(s: StructDefinition) -> Quoted {\n let name = quote { Hash };\n let signature = quote { fn hash<H>(_self: Self, _state: &mut H) where H: std::hash::Hasher };\n let for_each_field = |name| quote { _self.$name.hash(_state); };\n crate::meta::make_trait_impl(\n s,\n name,\n signature,\n for_each_field,\n quote {},\n |fields| fields,\n )\n}\n// docs:end:derive_hash\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\npub trait Hasher {\n fn finish(self) -> Field;\n\n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\npub trait BuildHasher<H>\nwhere\n H: Hasher,\n{\n fn build_hasher(self) -> H;\n}\n\npub struct BuildHasherDefault<H>;\n\nimpl<H> BuildHasher<H> for BuildHasherDefault<H>\nwhere\n H: Hasher + Default,\n{\n fn build_hasher(_self: Self) -> H {\n H::default()\n }\n}\n\nimpl<H> Default for BuildHasherDefault<H>\nwhere\n H: Hasher + Default,\n{\n fn default() -> Self {\n BuildHasherDefault {}\n }\n}\n\nimpl Hash for Field {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self);\n }\n}\n\nimpl Hash for u1 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u8 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u16 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i16 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash<H>(_self: Self, _state: &mut H)\n where\n H: Hasher,\n {}\n}\n\nimpl Hash for U128 {\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self.lo as Field);\n H::write(state, self.hi as Field);\n }\n}\n\nimpl<T, let N: u32> Hash for [T; N]\nwhere\n T: Hash,\n{\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<T> Hash for [T]\nwhere\n T: Hash,\n{\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl<A, B> Hash for (A, B)\nwhere\n A: Hash,\n B: Hash,\n{\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl<A, B, C> Hash for (A, B, C)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n{\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl<A, B, C, D> Hash for (A, B, C, D)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n{\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl<A, B, C, D, E> Hash for (A, B, C, D, E)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n E: Hash,\n{\n fn hash<H>(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n\n// Some test vectors for Pedersen hash and Pedersen Commitment.\n// They have been generated using the same functions so the tests are for now useless\n// but they will be useful when we switch to Noir implementation.\n#[test]\nfn assert_pedersen() {\n assert_eq(\n pedersen_hash_with_separator([1], 1),\n 0x1b3f4b1a83092a13d8d1a59f7acb62aba15e7002f4440f2275edb99ebbc2305f,\n );\n assert_eq(\n pedersen_commitment_with_separator([1], 1),\n EmbeddedCurvePoint {\n x: 0x054aa86a73cb8a34525e5bbed6e43ba1198e860f5f3950268f71df4591bde402,\n y: 0x209dcfbf2cfb57f9f6046f44d71ac6faf87254afc7407c04eb621a6287cac126,\n is_infinite: false,\n },\n );\n\n assert_eq(\n pedersen_hash_with_separator([1, 2], 2),\n 0x26691c129448e9ace0c66d11f0a16d9014a9e8498ee78f4d69f0083168188255,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2], 2),\n EmbeddedCurvePoint {\n x: 0x2e2b3b191e49541fe468ec6877721d445dcaffe41728df0a0eafeb15e87b0753,\n y: 0x2ff4482400ad3a6228be17a2af33e2bcdf41be04795f9782bd96efe7e24f8778,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3], 3),\n 0x0bc694b7a1f8d10d2d8987d07433f26bd616a2d351bc79a3c540d85b6206dbe4,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3], 3),\n EmbeddedCurvePoint {\n x: 0x1fee4e8cf8d2f527caa2684236b07c4b1bad7342c01b0f75e9a877a71827dc85,\n y: 0x2f9fedb9a090697ab69bf04c8bc15f7385b3e4b68c849c1536e5ae15ff138fd1,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4], 4),\n 0xdae10fb32a8408521803905981a2b300d6a35e40e798743e9322b223a5eddc,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4], 4),\n EmbeddedCurvePoint {\n x: 0x07ae3e202811e1fca39c2d81eabe6f79183978e6f12be0d3b8eda095b79bdbc9,\n y: 0x0afc6f892593db6fbba60f2da558517e279e0ae04f95758587760ba193145014,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5], 5),\n 0xfc375b062c4f4f0150f7100dfb8d9b72a6d28582dd9512390b0497cdad9c22,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5], 5),\n EmbeddedCurvePoint {\n x: 0x1754b12bd475a6984a1094b5109eeca9838f4f81ac89c5f0a41dbce53189bb29,\n y: 0x2da030e3cfcdc7ddad80eaf2599df6692cae0717d4e9f7bfbee8d073d5d278f7,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6], 6),\n 0x1696ed13dc2730062a98ac9d8f9de0661bb98829c7582f699d0273b18c86a572,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6], 6),\n EmbeddedCurvePoint {\n x: 0x190f6c0e97ad83e1e28da22a98aae156da083c5a4100e929b77e750d3106a697,\n y: 0x1f4b60f34ef91221a0b49756fa0705da93311a61af73d37a0c458877706616fb,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n 0x128c0ff144fc66b6cb60eeac8a38e23da52992fc427b92397a7dffd71c45ede3,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n EmbeddedCurvePoint {\n x: 0x015441e9d29491b06563fac16fc76abf7a9534c715421d0de85d20dbe2965939,\n y: 0x1d2575b0276f4e9087e6e07c2cb75aa1baafad127af4be5918ef8a2ef2fea8fc,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n 0x2f960e117482044dfc99d12fece2ef6862fba9242be4846c7c9a3e854325a55c,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n EmbeddedCurvePoint {\n x: 0x1657737676968887fceb6dd516382ea13b3a2c557f509811cd86d5d1199bc443,\n y: 0x1f39f0cb569040105fa1e2f156521e8b8e08261e635a2b210bdc94e8d6d65f77,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n 0x0c96db0790602dcb166cc4699e2d306c479a76926b81c2cb2aaa92d249ec7be7,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n EmbeddedCurvePoint {\n x: 0x0a3ceae42d14914a432aa60ec7fded4af7dad7dd4acdbf2908452675ec67e06d,\n y: 0xfc19761eaaf621ad4aec9a8b2e84a4eceffdba78f60f8b9391b0bd9345a2f2,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n 0x2cd37505871bc460a62ea1e63c7fe51149df5d0801302cf1cbc48beb8dff7e94,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n EmbeddedCurvePoint {\n x: 0x2fb3f8b3d41ddde007c8c3c62550f9a9380ee546fcc639ffbb3fd30c8d8de30c,\n y: 0x300783be23c446b11a4c0fabf6c91af148937cea15fcf5fb054abf7f752ee245,\n is_infinite: false,\n },\n );\n}\n"
|
|
5969
5969
|
},
|
|
5970
|
-
"
|
|
5970
|
+
"243": {
|
|
5971
5971
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/abis/validation_requests/key_validation_request.nr",
|
|
5972
5972
|
"source": "use crate::{point::Point, traits::{Deserialize, Empty, Serialize}};\npub use crate::constants::KEY_VALIDATION_REQUEST_LENGTH;\n\npub struct KeyValidationRequest {\n pub pk_m: Point,\n pub sk_app: Field, // not a grumpkin scalar because it's output of poseidon2\n}\n\nimpl Eq for KeyValidationRequest {\n fn eq(self, request: KeyValidationRequest) -> bool {\n (request.pk_m.eq(self.pk_m)) & (request.sk_app.eq(self.sk_app))\n }\n}\n\nimpl Empty for KeyValidationRequest {\n fn empty() -> Self {\n KeyValidationRequest { pk_m: Point::empty(), sk_app: 0 }\n }\n}\n\nimpl Serialize<KEY_VALIDATION_REQUEST_LENGTH> for KeyValidationRequest {\n fn serialize(self) -> [Field; KEY_VALIDATION_REQUEST_LENGTH] {\n [self.pk_m.x, self.pk_m.y, self.pk_m.is_infinite as Field, self.sk_app]\n }\n}\n\nimpl Deserialize<KEY_VALIDATION_REQUEST_LENGTH> for KeyValidationRequest {\n fn deserialize(fields: [Field; KEY_VALIDATION_REQUEST_LENGTH]) -> Self {\n Self {\n pk_m: Point { x: fields[0], y: fields[1], is_infinite: fields[2] as bool },\n sk_app: fields[3],\n }\n }\n}\n"
|
|
5973
5973
|
},
|
|
5974
|
-
"
|
|
5974
|
+
"250": {
|
|
5975
5975
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr",
|
|
5976
5976
|
"source": "use crate::{\n abis::function_selector::FunctionSelector,\n address::{\n partial_address::PartialAddress, salted_initialization_hash::SaltedInitializationHash,\n },\n constants::{\n AZTEC_ADDRESS_LENGTH, FUNCTION_TREE_HEIGHT, GENERATOR_INDEX__CONTRACT_ADDRESS_V1,\n MAX_FIELD_VALUE,\n },\n contract_class_id::ContractClassId,\n hash::{poseidon2_hash_with_separator, private_functions_root_from_siblings},\n merkle_tree::membership::MembershipWitness,\n public_keys::{IvpkM, NpkM, OvpkM, PublicKeys, ToPoint, TpkM},\n traits::{Deserialize, Empty, FromField, Packable, Serialize, ToField},\n};\n\n// We do below because `use crate::point::Point;` does not work\nuse dep::std::embedded_curve_ops::EmbeddedCurvePoint as Point;\n\nuse crate::public_keys::AddressPoint;\nuse ec::{pow, sqrt};\nuse std::{\n embedded_curve_ops::{EmbeddedCurveScalar, fixed_base_scalar_mul as derive_public_key},\n ops::Add,\n};\n\n// Aztec address\npub struct AztecAddress {\n pub inner: Field,\n}\n\nimpl Eq for AztecAddress {\n fn eq(self, other: Self) -> bool {\n self.to_field() == other.to_field()\n }\n}\n\nimpl Empty for AztecAddress {\n fn empty() -> Self {\n Self { inner: 0 }\n }\n}\n\nimpl ToField for AztecAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl FromField for AztecAddress {\n fn from_field(value: Field) -> AztecAddress {\n AztecAddress { inner: value }\n }\n}\n\nimpl Serialize<AZTEC_ADDRESS_LENGTH> for AztecAddress {\n fn serialize(self: Self) -> [Field; AZTEC_ADDRESS_LENGTH] {\n [self.to_field()]\n }\n}\n\nimpl Deserialize<AZTEC_ADDRESS_LENGTH> for AztecAddress {\n fn deserialize(fields: [Field; AZTEC_ADDRESS_LENGTH]) -> Self {\n FromField::from_field(fields[0])\n }\n}\n\n/// We implement the Packable trait for AztecAddress because it can be stored in contract's storage (and there\n/// the implementation of Packable is required).\nimpl Packable<AZTEC_ADDRESS_LENGTH> for AztecAddress {\n fn pack(self) -> [Field; AZTEC_ADDRESS_LENGTH] {\n self.serialize()\n }\n\n fn unpack(fields: [Field; AZTEC_ADDRESS_LENGTH]) -> Self {\n Self::deserialize(fields)\n }\n}\n\nimpl AztecAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn to_address_point(self) -> AddressPoint {\n // We compute the address point by taking our address, setting it to x, and then solving for y in the\n // equation which defines our bn curve:\n // y^2 = x^3 - 17; x = address\n let x = self.inner;\n let y_squared = pow(x, 3) - 17;\n\n // TODO (#8970): Handle cases where we cannot recover a point from an address\n let mut y = sqrt(y_squared);\n\n // If we get a negative y coordinate (any y where y > MAX_FIELD_VALUE / 2), we pin it to the\n // positive one (any value where y <= MAX_FIELD_VALUE / 2) by subtracting it from the Field modulus\n // note: The field modulus is MAX_FIELD_VALUE + 1\n if (!(y.lt(MAX_FIELD_VALUE / 2) | y.eq(MAX_FIELD_VALUE / 2))) {\n y = (MAX_FIELD_VALUE + 1) - y;\n }\n\n AddressPoint { inner: Point { x: self.inner, y, is_infinite: false } }\n }\n\n pub fn compute(public_keys: PublicKeys, partial_address: PartialAddress) -> AztecAddress {\n let public_keys_hash = public_keys.hash();\n\n let pre_address = poseidon2_hash_with_separator(\n [public_keys_hash.to_field(), partial_address.to_field()],\n GENERATOR_INDEX__CONTRACT_ADDRESS_V1,\n );\n\n let address_point = derive_public_key(EmbeddedCurveScalar::from_field(pre_address)).add(\n public_keys.ivpk_m.to_point(),\n );\n\n // Note that our address is only the x-coordinate of the full address_point. This is okay because when people want to encrypt something and send it to us\n // they can recover our full point using the x-coordinate (our address itself). To do this, they recompute the y-coordinate according to the equation y^2 = x^3 - 17.\n // When they do this, they may get a positive y-coordinate (a value that is less than or equal to MAX_FIELD_VALUE / 2) or\n // a negative y-coordinate (a value that is more than MAX_FIELD_VALUE), and we cannot dictate which one they get and hence the recovered point may sometimes be different than the one\n // our secrect can decrypt. Regardless though, they should and will always encrypt using point with the positive y-coordinate by convention.\n // This ensures that everyone encrypts to the same point given an arbitrary x-coordinate (address). This is allowed because even though our original point may not have a positive y-coordinate,\n // with our original secret, we will be able to derive the secret to the point with the flipped (and now positive) y-coordinate that everyone encrypts to.\n AztecAddress::from_field(address_point.x)\n }\n\n pub fn compute_from_private_function(\n function_selector: FunctionSelector,\n function_vk_hash: Field,\n function_leaf_membership_witness: MembershipWitness<FUNCTION_TREE_HEIGHT>,\n contract_class_artifact_hash: Field,\n contract_class_public_bytecode_commitment: Field,\n salted_initialization_hash: SaltedInitializationHash,\n public_keys: PublicKeys,\n ) -> Self {\n let private_functions_root = private_functions_root_from_siblings(\n function_selector,\n function_vk_hash,\n function_leaf_membership_witness.leaf_index,\n function_leaf_membership_witness.sibling_path,\n );\n\n let contract_class_id = ContractClassId::compute(\n contract_class_artifact_hash,\n private_functions_root,\n contract_class_public_bytecode_commitment,\n );\n\n // Compute contract address using the preimage which includes the class_id.\n let partial_address = PartialAddress::compute_from_salted_initialization_hash(\n contract_class_id,\n salted_initialization_hash,\n );\n\n AztecAddress::compute(public_keys, partial_address)\n }\n\n pub fn is_zero(self) -> bool {\n self.inner == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n\n#[test]\nfn compute_address_from_partial_and_pub_keys() {\n let public_keys = PublicKeys {\n npk_m: NpkM {\n inner: Point {\n x: 0x22f7fcddfa3ce3e8f0cc8e82d7b94cdd740afa3e77f8e4a63ea78a239432dcab,\n y: 0x0471657de2b6216ade6c506d28fbc22ba8b8ed95c871ad9f3e3984e90d9723a7,\n is_infinite: false,\n },\n },\n ivpk_m: IvpkM {\n inner: Point {\n x: 0x111223493147f6785514b1c195bb37a2589f22a6596d30bb2bb145fdc9ca8f1e,\n y: 0x273bbffd678edce8fe30e0deafc4f66d58357c06fd4a820285294b9746c3be95,\n is_infinite: false,\n },\n },\n ovpk_m: OvpkM {\n inner: Point {\n x: 0x09115c96e962322ffed6522f57194627136b8d03ac7469109707f5e44190c484,\n y: 0x0c49773308a13d740a7f0d4f0e6163b02c5a408b6f965856b6a491002d073d5b,\n is_infinite: false,\n },\n },\n tpk_m: TpkM {\n inner: Point {\n x: 0x00d3d81beb009873eb7116327cf47c612d5758ef083d4fda78e9b63980b2a762,\n y: 0x2f567d22d2b02fe1f4ad42db9d58a36afd1983e7e2909d1cab61cafedad6193a,\n is_infinite: false,\n },\n },\n };\n\n let partial_address = PartialAddress::from_field(\n 0x0a7c585381b10f4666044266a02405bf6e01fa564c8517d4ad5823493abd31de,\n );\n\n let address = AztecAddress::compute(public_keys, partial_address);\n\n // The following value was generated by `derivation.test.ts`.\n // --> Run the test with AZTEC_GENERATE_TEST_DATA=1 flag to update test data.\n let expected_computed_address_from_partial_and_pubkeys =\n 0x24e4646f58b9fbe7d38e317db8d5636c423fbbdfbe119fc190fe9c64747e0c62;\n assert(address.to_field() == expected_computed_address_from_partial_and_pubkeys);\n}\n\n#[test]\nfn compute_preaddress_from_partial_and_pub_keys() {\n let pre_address = poseidon2_hash_with_separator([1, 2], GENERATOR_INDEX__CONTRACT_ADDRESS_V1);\n let expected_computed_preaddress_from_partial_and_pubkey =\n 0x23ce9be3fa3c846b0f9245cc796902e731d04f086e8a42473bb29e405fc98075;\n assert(pre_address == expected_computed_preaddress_from_partial_and_pubkey);\n}\n\n#[test]\nfn from_field_to_field() {\n let address = AztecAddress { inner: 37 };\n assert_eq(FromField::from_field(address.to_field()), address);\n}\n\n#[test]\nfn serde() {\n let address = AztecAddress { inner: 37 };\n assert_eq(Deserialize::deserialize(address.serialize()), address);\n}\n"
|
|
5977
5977
|
},
|
|
5978
|
-
"
|
|
5978
|
+
"253": {
|
|
5979
5979
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/address/partial_address.nr",
|
|
5980
5980
|
"source": "use crate::{\n address::{aztec_address::AztecAddress, salted_initialization_hash::SaltedInitializationHash},\n constants::GENERATOR_INDEX__PARTIAL_ADDRESS,\n contract_class_id::ContractClassId,\n hash::poseidon2_hash_with_separator,\n traits::{Deserialize, Serialize, ToField},\n};\n\nglobal PARTIAL_ADDRESS_LENGTH: u32 = 1;\n\n// Partial address\npub struct PartialAddress {\n pub inner: Field,\n}\n\nimpl ToField for PartialAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<PARTIAL_ADDRESS_LENGTH> for PartialAddress {\n fn serialize(self: Self) -> [Field; PARTIAL_ADDRESS_LENGTH] {\n [self.to_field()]\n }\n}\n\nimpl Deserialize<PARTIAL_ADDRESS_LENGTH> for PartialAddress {\n fn deserialize(fields: [Field; PARTIAL_ADDRESS_LENGTH]) -> Self {\n PartialAddress { inner: fields[0] }\n }\n}\n\nimpl PartialAddress {\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n pub fn compute(\n contract_class_id: ContractClassId,\n salt: Field,\n initialization_hash: Field,\n deployer: AztecAddress,\n ) -> Self {\n PartialAddress::compute_from_salted_initialization_hash(\n contract_class_id,\n SaltedInitializationHash::compute(salt, initialization_hash, deployer),\n )\n }\n\n pub fn compute_from_salted_initialization_hash(\n contract_class_id: ContractClassId,\n salted_initialization_hash: SaltedInitializationHash,\n ) -> Self {\n PartialAddress::from_field(poseidon2_hash_with_separator(\n [contract_class_id.to_field(), salted_initialization_hash.to_field()],\n GENERATOR_INDEX__PARTIAL_ADDRESS,\n ))\n }\n\n pub fn to_field(self) -> Field {\n self.inner\n }\n\n pub fn is_zero(self) -> bool {\n self.to_field() == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n"
|
|
5981
5981
|
},
|
|
5982
|
-
"
|
|
5982
|
+
"255": {
|
|
5983
5983
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/address/salted_initialization_hash.nr",
|
|
5984
5984
|
"source": "use crate::{\n address::aztec_address::AztecAddress, constants::GENERATOR_INDEX__PARTIAL_ADDRESS,\n hash::poseidon2_hash_with_separator, traits::ToField,\n};\n\n// Salted initialization hash. Used in the computation of a partial address.\npub struct SaltedInitializationHash {\n pub inner: Field,\n}\n\nimpl ToField for SaltedInitializationHash {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl SaltedInitializationHash {\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n pub fn compute(salt: Field, initialization_hash: Field, deployer: AztecAddress) -> Self {\n SaltedInitializationHash::from_field(poseidon2_hash_with_separator(\n [salt, initialization_hash, deployer.to_field()],\n GENERATOR_INDEX__PARTIAL_ADDRESS,\n ))\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n"
|
|
5985
5985
|
},
|
|
5986
|
-
"259": {
|
|
5987
|
-
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/contract_instance.nr",
|
|
5988
|
-
"source": "use crate::{\n address::{aztec_address::AztecAddress, partial_address::PartialAddress},\n constants::CONTRACT_INSTANCE_LENGTH,\n contract_class_id::ContractClassId,\n public_keys::PublicKeys,\n traits::{Deserialize, FromField, Hash, Serialize, ToField},\n};\n\npub struct ContractInstance {\n pub salt: Field,\n pub deployer: AztecAddress,\n pub contract_class_id: ContractClassId,\n pub initialization_hash: Field,\n pub public_keys: PublicKeys,\n}\n\nimpl Eq for ContractInstance {\n fn eq(self, other: Self) -> bool {\n self.public_keys.eq(other.public_keys)\n & self.initialization_hash.eq(other.initialization_hash)\n & self.contract_class_id.eq(other.contract_class_id)\n & self.salt.eq(other.salt)\n }\n}\n\nimpl Serialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn serialize(self) -> [Field; CONTRACT_INSTANCE_LENGTH] {\n let public_keys_serialized = self.public_keys.serialize();\n [\n self.salt,\n self.deployer.to_field(),\n self.contract_class_id.to_field(),\n self.initialization_hash,\n public_keys_serialized[0],\n public_keys_serialized[1],\n public_keys_serialized[2],\n public_keys_serialized[3],\n public_keys_serialized[4],\n public_keys_serialized[5],\n public_keys_serialized[6],\n public_keys_serialized[7],\n public_keys_serialized[8],\n public_keys_serialized[9],\n public_keys_serialized[10],\n public_keys_serialized[11],\n ]\n }\n}\n\nimpl Deserialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn deserialize(serialized: [Field; CONTRACT_INSTANCE_LENGTH]) -> Self {\n Self {\n salt: serialized[0],\n deployer: AztecAddress::from_field(serialized[1]),\n contract_class_id: ContractClassId::from_field(serialized[2]),\n initialization_hash: serialized[3],\n public_keys: PublicKeys::deserialize([\n serialized[4],\n serialized[5],\n serialized[6],\n serialized[7],\n serialized[8],\n serialized[9],\n serialized[10],\n serialized[11],\n serialized[12],\n serialized[13],\n serialized[14],\n serialized[15],\n ]),\n }\n }\n}\n\nimpl Hash for ContractInstance {\n fn hash(self) -> Field {\n self.to_address().to_field()\n }\n}\n\nimpl ContractInstance {\n pub fn to_address(self) -> AztecAddress {\n AztecAddress::compute(\n self.public_keys,\n PartialAddress::compute(\n self.contract_class_id,\n self.salt,\n self.initialization_hash,\n self.deployer,\n ),\n )\n }\n}\n"
|
|
5989
|
-
},
|
|
5990
5986
|
"26": {
|
|
5991
5987
|
"path": "std/hash/poseidon2.nr",
|
|
5992
5988
|
"source": "use crate::default::Default;\nuse crate::hash::Hasher;\n\ncomptime global RATE: u32 = 3;\n\npub struct Poseidon2 {\n cache: [Field; 3],\n state: [Field; 4],\n cache_size: u32,\n squeeze_mode: bool, // 0 => absorb, 1 => squeeze\n}\n\nimpl Poseidon2 {\n #[no_predicates]\n pub fn hash<let N: u32>(input: [Field; N], message_size: u32) -> Field {\n Poseidon2::hash_internal(input, message_size, message_size != N)\n }\n\n pub fn new(iv: Field) -> Poseidon2 {\n let mut result =\n Poseidon2 { cache: [0; 3], state: [0; 4], cache_size: 0, squeeze_mode: false };\n result.state[RATE] = iv;\n result\n }\n\n fn perform_duplex(&mut self) {\n // add the cache into sponge state\n for i in 0..RATE {\n // We effectively zero-pad the cache by only adding to the state\n // cache that is less than the specified `cache_size`\n if i < self.cache_size {\n self.state[i] += self.cache[i];\n }\n }\n self.state = crate::hash::poseidon2_permutation(self.state, 4);\n }\n\n fn absorb(&mut self, input: Field) {\n assert(!self.squeeze_mode);\n if self.cache_size == RATE {\n // If we're absorbing, and the cache is full, apply the sponge permutation to compress the cache\n self.perform_duplex();\n self.cache[0] = input;\n self.cache_size = 1;\n } else {\n // If we're absorbing, and the cache is not full, add the input into the cache\n self.cache[self.cache_size] = input;\n self.cache_size += 1;\n }\n }\n\n fn squeeze(&mut self) -> Field {\n assert(!self.squeeze_mode);\n // If we're in absorb mode, apply sponge permutation to compress the cache.\n self.perform_duplex();\n self.squeeze_mode = true;\n\n // Pop one item off the top of the permutation and return it.\n self.state[0]\n }\n\n fn hash_internal<let N: u32>(\n input: [Field; N],\n in_len: u32,\n is_variable_length: bool,\n ) -> Field {\n let two_pow_64 = 18446744073709551616;\n let iv: Field = (in_len as Field) * two_pow_64;\n let mut sponge = Poseidon2::new(iv);\n for i in 0..input.len() {\n if i < in_len {\n sponge.absorb(input[i]);\n }\n }\n\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if is_variable_length {\n sponge.absorb(1);\n }\n sponge.squeeze()\n }\n}\n\npub struct Poseidon2Hasher {\n _state: [Field],\n}\n\nimpl Hasher for Poseidon2Hasher {\n fn finish(self) -> Field {\n let iv: Field = (self._state.len() as Field) * 18446744073709551616; // iv = (self._state.len() << 64)\n let mut sponge = Poseidon2::new(iv);\n for i in 0..self._state.len() {\n sponge.absorb(self._state[i]);\n }\n sponge.squeeze()\n }\n\n fn write(&mut self, input: Field) {\n self._state = self._state.push_back(input);\n }\n}\n\nimpl Default for Poseidon2Hasher {\n fn default() -> Self {\n Poseidon2Hasher { _state: &[] }\n }\n}\n"
|
|
5993
5989
|
},
|
|
5994
|
-
"
|
|
5990
|
+
"260": {
|
|
5991
|
+
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/contract_instance.nr",
|
|
5992
|
+
"source": "use crate::{\n address::{aztec_address::AztecAddress, partial_address::PartialAddress},\n constants::CONTRACT_INSTANCE_LENGTH,\n contract_class_id::ContractClassId,\n public_keys::PublicKeys,\n traits::{Deserialize, FromField, Hash, Serialize, ToField},\n};\n\npub struct ContractInstance {\n pub salt: Field,\n pub deployer: AztecAddress,\n pub contract_class_id: ContractClassId,\n pub initialization_hash: Field,\n pub public_keys: PublicKeys,\n}\n\nimpl Eq for ContractInstance {\n fn eq(self, other: Self) -> bool {\n self.public_keys.eq(other.public_keys)\n & self.initialization_hash.eq(other.initialization_hash)\n & self.contract_class_id.eq(other.contract_class_id)\n & self.salt.eq(other.salt)\n }\n}\n\nimpl Serialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn serialize(self) -> [Field; CONTRACT_INSTANCE_LENGTH] {\n let public_keys_serialized = self.public_keys.serialize();\n [\n self.salt,\n self.deployer.to_field(),\n self.contract_class_id.to_field(),\n self.initialization_hash,\n public_keys_serialized[0],\n public_keys_serialized[1],\n public_keys_serialized[2],\n public_keys_serialized[3],\n public_keys_serialized[4],\n public_keys_serialized[5],\n public_keys_serialized[6],\n public_keys_serialized[7],\n public_keys_serialized[8],\n public_keys_serialized[9],\n public_keys_serialized[10],\n public_keys_serialized[11],\n ]\n }\n}\n\nimpl Deserialize<CONTRACT_INSTANCE_LENGTH> for ContractInstance {\n fn deserialize(serialized: [Field; CONTRACT_INSTANCE_LENGTH]) -> Self {\n Self {\n salt: serialized[0],\n deployer: AztecAddress::from_field(serialized[1]),\n contract_class_id: ContractClassId::from_field(serialized[2]),\n initialization_hash: serialized[3],\n public_keys: PublicKeys::deserialize([\n serialized[4],\n serialized[5],\n serialized[6],\n serialized[7],\n serialized[8],\n serialized[9],\n serialized[10],\n serialized[11],\n serialized[12],\n serialized[13],\n serialized[14],\n serialized[15],\n ]),\n }\n }\n}\n\nimpl Hash for ContractInstance {\n fn hash(self) -> Field {\n self.to_address().to_field()\n }\n}\n\nimpl ContractInstance {\n pub fn to_address(self) -> AztecAddress {\n AztecAddress::compute(\n self.public_keys,\n PartialAddress::compute(\n self.contract_class_id,\n self.salt,\n self.initialization_hash,\n self.deployer,\n ),\n )\n }\n}\n"
|
|
5993
|
+
},
|
|
5994
|
+
"266": {
|
|
5995
5995
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/debug_log.nr",
|
|
5996
5996
|
"source": "/// Utility function to console.log data in the acir simulator.\n/// Example:\n/// debug_log(\"blah blah this is a debug string\");\npub fn debug_log<let N: u32>(msg: str<N>) {\n debug_log_format(msg, []);\n}\n\n/// Utility function to console.log data in the acir simulator. This variant receives a format string in which the\n/// `${k}` tokens will be replaced with the k-eth value in the `args` array.\n/// Examples:\n/// debug_log_format(\"get_2(slot:{0}) =>\\n\\t0:{1}\\n\\t1:{2}\", [storage_slot, note0_hash, note1_hash]);\n/// debug_log_format(\"whole array: {}\", [e1, e2, e3, e4]);\npub fn debug_log_format<let M: u32, let N: u32>(msg: str<M>, args: [Field; N]) {\n /// Safety: This oracle call returns nothing: we only call it for its side effects. It is therefore always safe\n /// to call.\n unsafe { debug_log_oracle_wrapper(msg, args) };\n}\n\npub unconstrained fn debug_log_oracle_wrapper<let M: u32, let N: u32>(\n msg: str<M>,\n args: [Field; N],\n) {\n debug_log_oracle(msg, args.as_slice());\n}\n\n// WARNING: sometimes when using debug logs the ACVM errors with: `thrown: \"solver opcode resolution error: cannot solve opcode: expression has too many unknowns x155\"`\n#[oracle(debugLog)]\nunconstrained fn debug_log_oracle<let M: u32>(_msg: str<M>, args: [Field]) {}\n"
|
|
5997
5997
|
},
|
|
5998
|
-
"
|
|
5998
|
+
"267": {
|
|
5999
5999
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr",
|
|
6000
6000
|
"source": "use crate::{\n abis::{\n contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage,\n function_selector::FunctionSelector,\n log_hash::{LogHash, ScopedLogHash},\n note_hash::ScopedNoteHash,\n nullifier::ScopedNullifier,\n private_log::{PrivateLog, PrivateLogData},\n side_effect::{OrderedValue, scoped::Scoped},\n },\n address::{AztecAddress, EthAddress},\n constants::{\n FUNCTION_TREE_HEIGHT, GENERATOR_INDEX__NOTE_HASH_NONCE, GENERATOR_INDEX__OUTER_NULLIFIER,\n GENERATOR_INDEX__SILOED_NOTE_HASH, GENERATOR_INDEX__UNIQUE_NOTE_HASH,\n },\n merkle_tree::root::root_from_sibling_path,\n messaging::l2_to_l1_message::{L2ToL1Message, ScopedL2ToL1Message},\n poseidon2::Poseidon2Sponge,\n traits::{FromField, Hash, is_empty, ToField},\n utils::field::field_from_bytes_32_trunc,\n};\nuse super::{constants::TWO_POW_64, utils::{arrays::array_concat, field::field_from_bytes}};\n\npub fn sha256_to_field<let N: u32>(bytes_to_hash: [u8; N]) -> Field {\n let sha256_hashed = sha256::digest(bytes_to_hash);\n let hash_in_a_field = field_from_bytes_32_trunc(sha256_hashed);\n\n hash_in_a_field\n}\n\npub fn private_functions_root_from_siblings(\n selector: FunctionSelector,\n vk_hash: Field,\n function_leaf_index: Field,\n function_leaf_sibling_path: [Field; FUNCTION_TREE_HEIGHT],\n) -> Field {\n let function_leaf_preimage = ContractClassFunctionLeafPreimage { selector, vk_hash };\n let function_leaf = function_leaf_preimage.hash();\n root_from_sibling_path(\n function_leaf,\n function_leaf_index,\n function_leaf_sibling_path,\n )\n}\n\npub fn compute_note_hash_nonce(first_nullifier_in_tx: Field, note_index_in_tx: u32) -> Field {\n // Hashing the first nullifier with note index in tx is guaranteed to be unique (because all nullifiers are also\n // unique).\n poseidon2_hash_with_separator(\n [first_nullifier_in_tx, note_index_in_tx as Field],\n GENERATOR_INDEX__NOTE_HASH_NONCE,\n )\n}\n\npub fn compute_unique_note_hash(nonce: Field, siloed_note_hash: Field) -> Field {\n let inputs = [nonce, siloed_note_hash];\n poseidon2_hash_with_separator(inputs, GENERATOR_INDEX__UNIQUE_NOTE_HASH)\n}\n\npub fn compute_siloed_note_hash(app: AztecAddress, note_hash: Field) -> Field {\n poseidon2_hash_with_separator(\n [app.to_field(), note_hash],\n GENERATOR_INDEX__SILOED_NOTE_HASH,\n )\n}\n\n/// Computes unique note hashes from siloed note hashes\npub fn compute_unique_siloed_note_hash(\n siloed_note_hash: Field,\n first_nullifier: Field,\n note_index_in_tx: u32,\n) -> Field {\n if siloed_note_hash == 0 {\n 0\n } else {\n let nonce = compute_note_hash_nonce(first_nullifier, note_index_in_tx);\n compute_unique_note_hash(nonce, siloed_note_hash)\n }\n}\n\n/// Siloing in the context of Aztec refers to the process of hashing a note hash with a contract address (this way\n/// the note hash is scoped to a specific contract). This is used to prevent intermingling of notes between contracts.\npub fn silo_note_hash(note_hash: ScopedNoteHash) -> Field {\n if note_hash.contract_address.is_zero() {\n 0\n } else {\n compute_siloed_note_hash(note_hash.contract_address, note_hash.value())\n }\n}\n\npub fn compute_siloed_nullifier(app: AztecAddress, nullifier: Field) -> Field {\n poseidon2_hash_with_separator(\n [app.to_field(), nullifier],\n GENERATOR_INDEX__OUTER_NULLIFIER,\n )\n}\n\npub fn silo_nullifier(nullifier: ScopedNullifier) -> Field {\n if nullifier.contract_address.is_zero() {\n nullifier.value() // Return value instead of 0 because the first nullifier's contract address is zero.\n } else {\n compute_siloed_nullifier(nullifier.contract_address, nullifier.value())\n }\n}\n\npub fn compute_siloed_private_log_field(contract_address: AztecAddress, field: Field) -> Field {\n poseidon2_hash([contract_address.to_field(), field])\n}\n\npub fn silo_private_log(private_log: Scoped<PrivateLogData>) -> PrivateLog {\n if private_log.contract_address.is_zero() {\n private_log.inner.log\n } else {\n let mut fields = private_log.inner.log.fields;\n fields[0] = compute_siloed_private_log_field(private_log.contract_address, fields[0]);\n PrivateLog { fields }\n }\n}\n\nfn compute_siloed_contract_class_log_hash(address: AztecAddress, log_hash: Field) -> Field {\n accumulate_sha256([address.to_field(), log_hash])\n}\n\npub fn silo_contract_class_log_hash(log_hash: ScopedLogHash) -> Field {\n if log_hash.contract_address.is_zero() {\n 0\n } else {\n compute_siloed_contract_class_log_hash(log_hash.contract_address, log_hash.value())\n }\n}\n\npub fn merkle_hash(left: Field, right: Field) -> Field {\n poseidon2_hash([left, right])\n}\n\npub fn compute_l2_to_l1_hash(\n contract_address: AztecAddress,\n recipient: EthAddress,\n content: Field,\n rollup_version_id: Field,\n chain_id: Field,\n) -> Field {\n let mut bytes: [u8; 160] = std::mem::zeroed();\n\n let inputs =\n [contract_address.to_field(), rollup_version_id, recipient.to_field(), chain_id, content];\n for i in 0..5 {\n // TODO are bytes be in fr.to_buffer() ?\n let item_bytes: [u8; 32] = inputs[i].to_be_bytes();\n for j in 0..32 {\n bytes[32 * i + j] = item_bytes[j];\n }\n }\n\n sha256_to_field(bytes)\n}\n\npub fn silo_l2_to_l1_message(\n msg: ScopedL2ToL1Message,\n rollup_version_id: Field,\n chain_id: Field,\n) -> Field {\n if msg.contract_address.is_zero() {\n 0\n } else {\n compute_l2_to_l1_hash(\n msg.contract_address,\n msg.message.recipient,\n msg.message.content,\n rollup_version_id,\n chain_id,\n )\n }\n}\n\n// Computes sha256 hash of 2 input hashes.\n//\n// NB: This method now takes in two 31 byte fields - it assumes that any input\n// is the result of a sha_to_field hash and => is truncated\n//\n// TODO(Jan and David): This is used for the encrypted_log hashes.\n// Can we check to see if we can just use hash_to_field or pedersen_compress here?\n//\npub fn accumulate_sha256(input: [Field; 2]) -> Field {\n // This is a note about the cpp code, since it takes an array of Fields\n // instead of a U128.\n // 4 Field elements when converted to bytes will usually\n // occupy 4 * 32 = 128 bytes.\n // However, this function is making the assumption that each Field\n // only occupies 128 bits.\n //\n // TODO(David): This does not seem to be getting guaranteed anywhere in the code?\n // Concatentate two fields into 32x2 = 64 bytes\n // accumulate_sha256 assumes that the inputs are pre-truncated 31 byte numbers\n let mut hash_input_flattened = [0; 64];\n for offset in 0..input.len() {\n let input_as_bytes: [u8; 32] = input[offset].to_be_bytes();\n for byte_index in 0..32 {\n hash_input_flattened[offset * 32 + byte_index] = input_as_bytes[byte_index];\n }\n }\n\n sha256_to_field(hash_input_flattened)\n}\n\n// Computes the final logs hash for a tx.\npub fn compute_tx_logs_hash<let N: u32>(logs: [LogHash; N]) -> Field {\n // Convert each field element into a byte array and append the bytes to `hash_input_flattened`\n let mut hash_input_flattened = [0; N * 32];\n for offset in 0..N {\n // TODO: This is not checking that the decomposition is smaller than P\n let input_as_bytes: [u8; 32] = logs[offset].value.to_be_radix(256);\n for byte_index in 0..32 {\n hash_input_flattened[offset * 32 + byte_index] = input_as_bytes[byte_index];\n }\n }\n // Ideally we would push to a slice then hash, but there is no sha_slice\n // Hardcode to 256 bytes for now\n let mut hash = sha256_to_field(hash_input_flattened);\n // Not having a 0 value hash for empty logs causes issues with empty txs\n // used for padding. Returning early is currently unsupported.\n // We always provide sorted logs here, so 0 being empty means all are empty.\n if is_empty(logs[0]) {\n hash = 0;\n }\n hash\n}\n\npub fn verification_key_hash<let N: u32>(key: [Field; N]) -> Field {\n crate::hash::poseidon2_hash(key)\n}\n\n#[inline_always]\npub fn pedersen_hash<let N: u32>(inputs: [Field; N], hash_index: u32) -> Field {\n std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\npub fn poseidon2_hash<let N: u32>(inputs: [Field; N]) -> Field {\n std::hash::poseidon2::Poseidon2::hash(inputs, N)\n}\n\n#[no_predicates]\npub fn poseidon2_hash_with_separator<let N: u32, T>(inputs: [Field; N], separator: T) -> Field\nwhere\n T: ToField,\n{\n let inputs_with_separator = array_concat([separator.to_field()], inputs);\n poseidon2_hash(inputs_with_separator)\n}\n\n// Performs a fixed length hash with a subarray of the given input.\n// Useful for SpongeBlob in which we aborb M things and want to check it vs a hash of M elts of an N-len array.\n// Using stdlib poseidon, this will always absorb an extra 1 as a 'variable' hash, and not match spongeblob.squeeze()\n// or any ts implementation. Also checks that any remaining elts not hashed are empty.\n#[no_predicates]\npub fn poseidon2_hash_subarray<let N: u32>(input: [Field; N], in_len: u32) -> Field {\n let mut sponge = poseidon2_absorb_chunks(input, in_len, false);\n sponge.squeeze()\n}\n\n// NB the below is the same as std::hash::poseidon2::Poseidon2::hash(), but replacing a range check with a bit check,\n// and absorbing in chunks of 3 below.\n#[no_predicates]\npub fn poseidon2_cheaper_variable_hash<let N: u32>(input: [Field; N], in_len: u32) -> Field {\n let mut sponge = poseidon2_absorb_chunks(input, in_len, true);\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if in_len != N {\n sponge.absorb(1);\n }\n sponge.squeeze()\n}\n\n// The below fn reduces gates of a conditional poseidon2 hash by approx 3x (thank you ~* Giant Brain Dev @IlyasRidhuan *~ for the idea)\n// Why? Because when we call stdlib poseidon, we call absorb for each item. When absorbing is conditional, it seems the compiler does not know\n// what cache_size will be when calling absorb, so it assigns the permutation gates for /each i/ rather than /every 3rd i/, which is actually required.\n// The below code forces the compiler to:\n// - absorb normally up to 2 times to set cache_size to 1\n// - absorb in chunks of 3 to ensure perm. only happens every 3rd absorb\n// - absorb normally up to 2 times to add any remaining values to the hash\n// In fixed len hashes, the compiler is able to tell that it will only need to perform the permutation every 3 absorbs.\n// NB: it also replaces unnecessary range checks (i < thing) with a bit check (&= i != thing), which alone reduces the gates of a var. hash by half.\n\n#[no_predicates]\nfn poseidon2_absorb_chunks<let N: u32>(\n input: [Field; N],\n in_len: u32,\n variable: bool,\n) -> Poseidon2Sponge {\n let iv: Field = (in_len as Field) * TWO_POW_64;\n let mut sponge = Poseidon2Sponge::new(iv);\n // Even though shift is always 1 here, if we input in_len = 0 we get an underflow\n // since we cannot isolate computation branches. The below is just to avoid that.\n let shift = if in_len == 0 { 0 } else { 1 };\n if in_len != 0 {\n // cache_size = 0, init absorb\n sponge.cache[0] = input[0];\n sponge.cache_size = 1;\n // shift = num elts already added to make cache_size 1 = 1 for a fresh sponge\n // M = max_chunks = (N - 1 - (N - 1) % 3) / 3: (must be written as a fn of N to compile)\n // max_remainder = (N - 1) % 3;\n // max_chunks = (N - 1 - max_remainder) / 3;\n sponge = poseidon2_absorb_chunks_loop::<N, (N - 1 - (N - 1) % 3) / 3>(\n sponge,\n input,\n in_len,\n variable,\n shift,\n );\n }\n sponge\n}\n\n// NB: If it's not required to check that the non-absorbed elts of 'input' are 0s, set skip_0_check=true\n#[no_predicates]\npub fn poseidon2_absorb_chunks_existing_sponge<let N: u32>(\n in_sponge: Poseidon2Sponge,\n input: [Field; N],\n in_len: u32,\n skip_0_check: bool,\n) -> Poseidon2Sponge {\n let mut sponge = in_sponge;\n // 'shift' is to account for already added inputs\n let mut shift = 0;\n // 'stop' is to avoid an underflow when inputting in_len = 0\n let mut stop = false;\n for i in 0..3 {\n if shift == in_len {\n stop = true;\n }\n if (sponge.cache_size != 1) & (!stop) {\n sponge.absorb(input[i]);\n shift += 1;\n }\n }\n sponge = if stop {\n sponge\n } else {\n // max_chunks = (N - (N % 3)) / 3;\n poseidon2_absorb_chunks_loop::<N, (N - (N % 3)) / 3>(\n sponge,\n input,\n in_len,\n skip_0_check,\n shift,\n )\n };\n sponge\n}\n\n// The below is the loop to absorb elts into a poseidon sponge in chunks of 3\n// shift - the num of elts already absorbed to ensure the sponge's cache_size = 1\n// M - the max number of chunks required to absorb N things (must be comptime to compile)\n// NB: The 0 checks ('Found non-zero field...') are messy, but having a separate loop over N to check\n// for 0s costs 3N gates. Current approach is approx 2N gates.\n#[no_predicates]\nfn poseidon2_absorb_chunks_loop<let N: u32, let M: u32>(\n in_sponge: Poseidon2Sponge,\n input: [Field; N],\n in_len: u32,\n variable: bool,\n shift: u32,\n) -> Poseidon2Sponge {\n assert(in_len <= N, \"Given in_len to absorb is larger than the input array len\");\n // When we have an existing sponge, we may have a shift of 0, and the final 'k+2' below = N\n // The below avoids an overflow\n let skip_last = 3 * M == N;\n // Writing in_sponge: &mut does not compile\n let mut sponge = in_sponge;\n let mut should_add = true;\n // The num of things left over after absorbing in 3s\n let remainder = (in_len - shift) % 3;\n // The num of chunks of 3 to absorb (maximum M)\n let chunks = (in_len - shift - remainder) / 3;\n for i in 0..M {\n // Now we loop through cache size = 1 -> 3\n should_add &= i != chunks;\n // This is the index at the start of the chunk (for readability)\n let k = 3 * i + shift;\n if should_add {\n // cache_size = 1, 2 => just assign\n sponge.cache[1] = input[k];\n sponge.cache[2] = input[k + 1];\n // cache_size = 3 => duplex + perm\n for j in 0..3 {\n sponge.state[j] += sponge.cache[j];\n }\n sponge.state = std::hash::poseidon2_permutation(sponge.state, 4);\n sponge.cache[0] = input[k + 2];\n // cache_size is now 1 again, repeat loop\n } else if (!variable) & (i != chunks) {\n // if we are hashing a fixed len array which is a subarray, we check the remaining elts are 0\n // NB: we don't check at i == chunks, because that chunk contains elts to be absorbed or checked below\n let last_0 = if (i == M - 1) & (skip_last) {\n 0\n } else {\n input[k + 2]\n };\n let all_0 = (input[k] == 0) & (input[k + 1] == 0) & (last_0 == 0);\n assert(all_0, \"Found non-zero field after breakpoint\");\n }\n }\n // we have 'remainder' num of items left to absorb\n should_add = true;\n // below is to avoid overflows (i.e. if inlen is close to N)\n let mut should_check = !variable;\n for i in 0..3 {\n should_add &= i != remainder;\n should_check &= in_len - remainder + i != N;\n if should_add {\n // we want to absorb the final 'remainder' items\n sponge.absorb(input[in_len - remainder + i]);\n } else if should_check {\n assert(input[in_len - remainder + i] == 0, \"Found non-zero field after breakpoint\");\n }\n }\n sponge\n}\n\npub fn poseidon2_hash_with_separator_slice<T>(inputs: [Field], separator: T) -> Field\nwhere\n T: ToField,\n{\n let in_len = inputs.len() + 1;\n let iv: Field = (in_len as Field) * TWO_POW_64;\n let mut sponge = Poseidon2Sponge::new(iv);\n sponge.absorb(separator.to_field());\n\n for i in 0..inputs.len() {\n sponge.absorb(inputs[i]);\n }\n\n sponge.squeeze()\n}\n\n#[no_predicates]\npub fn poseidon2_hash_bytes<let N: u32>(inputs: [u8; N]) -> Field {\n let mut fields = [0; (N + 30) / 31];\n let mut field_index = 0;\n let mut current_field = [0; 31];\n for i in 0..inputs.len() {\n let index = i % 31;\n current_field[index] = inputs[i];\n if index == 30 {\n fields[field_index] = field_from_bytes(current_field, false);\n current_field = [0; 31];\n field_index += 1;\n }\n }\n if field_index != fields.len() {\n fields[field_index] = field_from_bytes(current_field, false);\n }\n poseidon2_hash(fields)\n}\n\n#[test]\nfn poseidon_chunks_matches_fixed() {\n let in_len = 501;\n let mut input: [Field; 4096] = [0; 4096];\n let mut fixed_input = [3; 501];\n assert(in_len == fixed_input.len()); // sanity check\n for i in 0..in_len {\n input[i] = 3;\n }\n let sub_chunk_hash = poseidon2_hash_subarray(input, in_len);\n let fixed_len_hash = std::hash::poseidon2::Poseidon2::hash(fixed_input, fixed_input.len());\n assert(sub_chunk_hash == fixed_len_hash);\n}\n\n#[test]\nfn poseidon_chunks_matches_variable() {\n let in_len = 501;\n let mut input: [Field; 4096] = [0; 4096];\n for i in 0..in_len {\n input[i] = 3;\n }\n let variable_chunk_hash = poseidon2_cheaper_variable_hash(input, in_len);\n let variable_len_hash = std::hash::poseidon2::Poseidon2::hash(input, in_len);\n assert(variable_chunk_hash == variable_len_hash);\n}\n\n#[test]\nfn existing_sponge_poseidon_chunks_matches_fixed() {\n let in_len = 501;\n let mut input: [Field; 4096] = [0; 4096];\n let mut fixed_input = [3; 501];\n assert(in_len == fixed_input.len()); // sanity check\n for i in 0..in_len {\n input[i] = 3;\n }\n // absorb 250 of the 501 things\n let empty_sponge = Poseidon2Sponge::new((in_len as Field) * TWO_POW_64);\n let first_sponge = poseidon2_absorb_chunks_existing_sponge(empty_sponge, input, 250, true);\n // now absorb the final 251 (since they are all 3s, im being lazy and not making a new array)\n let mut final_sponge = poseidon2_absorb_chunks_existing_sponge(first_sponge, input, 251, true);\n let fixed_len_hash = Poseidon2Sponge::hash(fixed_input, fixed_input.len());\n assert(final_sponge.squeeze() == fixed_len_hash);\n}\n\n#[test]\nfn poseidon_chunks_empty_inputs() {\n let in_len = 0;\n let mut input: [Field; 4096] = [0; 4096];\n let mut constructed_empty_sponge = poseidon2_absorb_chunks(input, in_len, true);\n let mut first_sponge =\n poseidon2_absorb_chunks_existing_sponge(constructed_empty_sponge, input, in_len, true);\n assert(first_sponge.squeeze() == constructed_empty_sponge.squeeze());\n}\n\n#[test]\nfn smoke_sha256_to_field() {\n let full_buffer = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,\n 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,\n 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,\n 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,\n 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,\n 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,\n 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,\n 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,\n ];\n let result = sha256_to_field(full_buffer);\n\n assert(result == 0x448ebbc9e1a31220a2f3830c18eef61b9bd070e5084b7fa2a359fe729184c7);\n\n // to show correctness of the current ver (truncate one byte) vs old ver (mod full bytes):\n let result_bytes = sha256::digest(full_buffer);\n let truncated_field = crate::utils::field::field_from_bytes_32_trunc(result_bytes);\n assert(truncated_field == result);\n let mod_res = result + (result_bytes[31] as Field);\n assert(mod_res == 0x448ebbc9e1a31220a2f3830c18eef61b9bd070e5084b7fa2a359fe729184e0);\n}\n\n#[test]\nfn compute_l2_l1_hash() {\n // All zeroes\n let hash_result =\n compute_l2_to_l1_hash(AztecAddress::from_field(0), EthAddress::zero(), 0, 0, 0);\n assert(hash_result == 0xb393978842a0fa3d3e1470196f098f473f9678e72463cb65ec4ab5581856c2);\n\n // Non-zero case\n let hash_result = compute_l2_to_l1_hash(\n AztecAddress::from_field(1),\n EthAddress::from_field(3),\n 5,\n 2,\n 4,\n );\n assert(hash_result == 0x3f88c1044a05e5340ed20466276500f6d45ca5603913b9091e957161734e16);\n}\n\n#[test]\nfn silo_l2_to_l1_message_matches_typescript() {\n let version = 4;\n let chainId = 5;\n\n let hash = silo_l2_to_l1_message(\n ScopedL2ToL1Message {\n message: L2ToL1Message { recipient: EthAddress::from_field(1), content: 2, counter: 0 },\n contract_address: AztecAddress::from_field(3),\n },\n version,\n chainId,\n );\n\n // The following value was generated by `l2_to_l1_message.test.ts`\n let hash_from_typescript = 0x00c6155d69febb9d5039b374dd4f77bf57b7c881709aa524a18acaa0bd57476a;\n\n assert_eq(hash, hash_from_typescript);\n}\n"
|
|
6001
6001
|
},
|
|
6002
|
-
"
|
|
6002
|
+
"268": {
|
|
6003
6003
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/indexed_tagging_secret.nr",
|
|
6004
6004
|
"source": "use crate::traits::{Deserialize, Serialize, ToField};\nuse super::{address::aztec_address::AztecAddress, hash::poseidon2_hash};\nuse std::meta::derive;\n\npub global INDEXED_TAGGING_SECRET_LENGTH: u32 = 2;\n\n#[derive(Serialize, Deserialize)]\npub struct IndexedTaggingSecret {\n app_tagging_secret: Field,\n index: u32,\n}\n\nimpl IndexedTaggingSecret {\n pub fn compute_tag(self, recipient: AztecAddress) -> Field {\n poseidon2_hash(\n [self.app_tagging_secret, recipient.to_field(), self.index as Field],\n )\n }\n}\n"
|
|
6005
6005
|
},
|
|
@@ -6007,35 +6007,35 @@
|
|
|
6007
6007
|
"path": "std/hash/sha256.nr",
|
|
6008
6008
|
"source": "use crate::runtime::is_unconstrained;\n\n// Implementation of SHA-256 mapping a byte array of variable length to\n// 32 bytes.\n\n// A message block is up to 64 bytes taken from the input.\nglobal BLOCK_SIZE: u32 = 64;\n\n// The first index in the block where the 8 byte message size will be written.\nglobal MSG_SIZE_PTR: u32 = 56;\n\n// Size of the message block when packed as 4-byte integer array.\nglobal INT_BLOCK_SIZE: u32 = 16;\n\n// A `u32` integer consists of 4 bytes.\nglobal INT_SIZE: u32 = 4;\n\n// Index of the integer in the `INT_BLOCK` where the length is written.\nglobal INT_SIZE_PTR: u32 = MSG_SIZE_PTR / INT_SIZE;\n\n// Magic numbers for bit shifting.\n// Works with actual bit shifting as well as the compiler turns them into * and /\n// but circuit execution appears to be 10% faster this way.\nglobal TWO_POW_8: u32 = 256;\nglobal TWO_POW_16: u32 = TWO_POW_8 * 256;\nglobal TWO_POW_24: u32 = TWO_POW_16 * 256;\nglobal TWO_POW_32: u64 = TWO_POW_24 as u64 * 256;\n\n// Index of a byte in a 64 byte block; ie. 0..=63\ntype BLOCK_BYTE_PTR = u32;\n\n// The foreign function to compress blocks works on 16 pieces of 4-byte integers, instead of 64 bytes.\ntype INT_BLOCK = [u32; INT_BLOCK_SIZE];\n\n// A message block is a slice of the original message of a fixed size,\n// potentially padded with zeros, with neighbouring 4 bytes packed into integers.\ntype MSG_BLOCK = INT_BLOCK;\n\n// The hash is 32 bytes.\ntype HASH = [u8; 32];\n\n// The state accumulates the blocks.\n// Its overall size is the same as the `HASH`.\ntype STATE = [u32; 8];\n\n// Deprecated in favour of `sha256_var`\n// docs:start:sha256\npub fn sha256<let N: u32>(input: [u8; N]) -> HASH\n// docs:end:sha256\n{\n digest(input)\n}\n\n#[foreign(sha256_compression)]\npub fn sha256_compression(_input: INT_BLOCK, _state: STATE) -> STATE {}\n\n// SHA-256 hash function\n#[no_predicates]\npub fn digest<let N: u32>(msg: [u8; N]) -> HASH {\n sha256_var(msg, N as u64)\n}\n\n// Variable size SHA-256 hash\npub fn sha256_var<let N: u32>(msg: [u8; N], message_size: u64) -> HASH {\n let message_size = message_size as u32;\n let num_blocks = N / BLOCK_SIZE;\n let mut msg_block: MSG_BLOCK = [0; INT_BLOCK_SIZE];\n // Intermediate hash, starting with the canonical initial value\n let mut h: STATE = [\n 1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, 528734635,\n 1541459225,\n ];\n // Pointer into msg_block on a 64 byte scale\n let mut msg_byte_ptr = 0;\n for i in 0..num_blocks {\n let msg_start = BLOCK_SIZE * i;\n /// Safety: the msg_block is checked below in verify_msg_block\n let (new_msg_block, new_msg_byte_ptr) =\n unsafe { build_msg_block(msg, message_size, msg_start) };\n\n if msg_start < message_size {\n msg_block = new_msg_block;\n }\n\n if !is_unconstrained() {\n // Verify the block we are compressing was appropriately constructed\n let new_msg_byte_ptr = verify_msg_block(msg, message_size, msg_block, msg_start);\n if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n }\n } else if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n }\n\n // If the block is filled, compress it.\n // An un-filled block is handled after this loop.\n if (msg_start < message_size) & (msg_byte_ptr == BLOCK_SIZE) {\n h = sha256_compression(msg_block, h);\n }\n }\n\n let modulo = N % BLOCK_SIZE;\n // Handle setup of the final msg block.\n // This case is only hit if the msg is less than the block size,\n // or our message cannot be evenly split into blocks.\n if modulo != 0 {\n let msg_start = BLOCK_SIZE * num_blocks;\n /// Safety: the msg_block is checked below in verify_msg_block\n let (new_msg_block, new_msg_byte_ptr) =\n unsafe { build_msg_block(msg, message_size, msg_start) };\n\n if msg_start < message_size {\n msg_block = new_msg_block;\n }\n\n if !is_unconstrained() {\n let new_msg_byte_ptr = verify_msg_block(msg, message_size, msg_block, msg_start);\n if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n verify_msg_block_padding(msg_block, msg_byte_ptr);\n }\n } else if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n }\n }\n\n // If we had modulo == 0 then it means the last block was full,\n // and we can reset the pointer to zero to overwrite it.\n if msg_byte_ptr == BLOCK_SIZE {\n msg_byte_ptr = 0;\n }\n\n // Pad the rest such that we have a [u32; 2] block at the end representing the length\n // of the message, and a block of 1 0 ... 0 following the message (i.e. [1 << 7, 0, ..., 0]).\n // Here we rely on the fact that everything beyond the available input is set to 0.\n msg_block = update_block_item(\n msg_block,\n msg_byte_ptr,\n |msg_item| set_item_byte_then_zeros(msg_item, msg_byte_ptr, 1 << 7),\n );\n msg_byte_ptr = msg_byte_ptr + 1;\n let last_block = msg_block;\n\n // If we don't have room to write the size, compress the block and reset it.\n if msg_byte_ptr > MSG_SIZE_PTR {\n h = sha256_compression(msg_block, h);\n // `attach_len_to_msg_block` will zero out everything after the `msg_byte_ptr`.\n msg_byte_ptr = 0;\n }\n\n /// Safety: the msg_len is checked below in verify_msg_len\n msg_block = unsafe { attach_len_to_msg_block(msg_block, msg_byte_ptr, message_size) };\n\n if !is_unconstrained() {\n verify_msg_len(msg_block, last_block, msg_byte_ptr, message_size);\n }\n\n hash_final_block(msg_block, h)\n}\n\n// Take `BLOCK_SIZE` number of bytes from `msg` starting at `msg_start`.\n// Returns the block and the length that has been copied rather than padded with zeros.\nunconstrained fn build_msg_block<let N: u32>(\n msg: [u8; N],\n message_size: u32,\n msg_start: u32,\n) -> (MSG_BLOCK, BLOCK_BYTE_PTR) {\n let mut msg_block: MSG_BLOCK = [0; INT_BLOCK_SIZE];\n\n // We insert `BLOCK_SIZE` bytes (or up to the end of the message)\n let block_input = if msg_start + BLOCK_SIZE > message_size {\n if message_size < msg_start {\n // This function is sometimes called with `msg_start` past the end of the message.\n // In this case we return an empty block and zero pointer to signal that the result should be ignored.\n 0\n } else {\n message_size - msg_start\n }\n } else {\n BLOCK_SIZE\n };\n\n // Figure out the number of items in the int array that we have to pack.\n // e.g. if the input is [0,1,2,3,4,5] then we need to pack it as 2 items: [0123, 4500]\n let mut int_input = block_input / INT_SIZE;\n if block_input % INT_SIZE != 0 {\n int_input = int_input + 1;\n };\n\n for i in 0..int_input {\n let mut msg_item: u32 = 0;\n // Always construct the integer as 4 bytes, even if it means going beyond the input.\n for j in 0..INT_SIZE {\n let k = i * INT_SIZE + j;\n let msg_byte = if k < block_input {\n msg[msg_start + k]\n } else {\n 0\n };\n msg_item = lshift8(msg_item, 1) + msg_byte as u32;\n }\n msg_block[i] = msg_item;\n }\n\n // Returning the index as if it was a 64 byte array.\n // We have to project it down to 16 items and bit shifting to get a byte back if we need it.\n (msg_block, block_input)\n}\n\n// Verify the block we are compressing was appropriately constructed by `build_msg_block`\n// and matches the input data. Returns the index of the first unset item.\n// If `message_size` is less than `msg_start` then this is called with the old non-empty block;\n// in that case we can skip verification, ie. no need to check that everything is zero.\nfn verify_msg_block<let N: u32>(\n msg: [u8; N],\n message_size: u32,\n msg_block: MSG_BLOCK,\n msg_start: u32,\n) -> BLOCK_BYTE_PTR {\n let mut msg_byte_ptr = 0;\n let mut msg_end = msg_start + BLOCK_SIZE;\n if msg_end > N {\n msg_end = N;\n }\n // We might have to go beyond the input to pad the fields.\n if msg_end % INT_SIZE != 0 {\n msg_end = msg_end + INT_SIZE - msg_end % INT_SIZE;\n }\n\n // Reconstructed packed item.\n let mut msg_item: u32 = 0;\n\n // Inclusive at the end so that we can compare the last item.\n let mut i: u32 = 0;\n for k in msg_start..=msg_end {\n if k % INT_SIZE == 0 {\n // If we consumed some input we can compare against the block.\n if (msg_start < message_size) & (k > msg_start) {\n assert_eq(msg_block[i], msg_item as u32);\n i = i + 1;\n msg_item = 0;\n }\n }\n // Shift the accumulator\n msg_item = lshift8(msg_item, 1);\n // If we have input to consume, add it at the rightmost position.\n if k < message_size & k < msg_end {\n msg_item = msg_item + msg[k] as u32;\n msg_byte_ptr = msg_byte_ptr + 1;\n }\n }\n\n msg_byte_ptr\n}\n\n// Verify the block we are compressing was appropriately padded with zeros by `build_msg_block`.\n// This is only relevant for the last, potentially partially filled block.\nfn verify_msg_block_padding(msg_block: MSG_BLOCK, msg_byte_ptr: BLOCK_BYTE_PTR) {\n // Check all the way to the end of the block.\n verify_msg_block_zeros(msg_block, msg_byte_ptr, INT_BLOCK_SIZE);\n}\n\n// Verify that a region of ints in the message block are (partially) zeroed,\n// up to an (exclusive) maximum which can either be the end of the block\n// or just where the size is to be written.\nfn verify_msg_block_zeros(\n msg_block: MSG_BLOCK,\n mut msg_byte_ptr: BLOCK_BYTE_PTR,\n max_int_byte_ptr: u32,\n) {\n // This variable is used to get around the compiler under-constrained check giving a warning.\n // We want to check against a constant zero, but if it does not come from the circuit inputs\n // or return values the compiler check will issue a warning.\n let zero = msg_block[0] - msg_block[0];\n\n // First integer which is supposed to be (partially) zero.\n let mut int_byte_ptr = msg_byte_ptr / INT_SIZE;\n\n // Check partial zeros.\n let modulo = msg_byte_ptr % INT_SIZE;\n if modulo != 0 {\n let zeros = INT_SIZE - modulo;\n let mask = if zeros == 3 {\n TWO_POW_24\n } else if zeros == 2 {\n TWO_POW_16\n } else {\n TWO_POW_8\n };\n assert_eq(msg_block[int_byte_ptr] % mask, zero);\n int_byte_ptr = int_byte_ptr + 1;\n }\n\n // Check the rest of the items.\n for i in 0..max_int_byte_ptr {\n if i >= int_byte_ptr {\n assert_eq(msg_block[i], zero);\n }\n }\n}\n\n// Verify that up to the byte pointer the two blocks are equal.\n// At the byte pointer the new block can be partially zeroed.\nfn verify_msg_block_equals_last(\n msg_block: MSG_BLOCK,\n last_block: MSG_BLOCK,\n mut msg_byte_ptr: BLOCK_BYTE_PTR,\n) {\n // msg_byte_ptr is the position at which they are no longer have to be the same.\n // First integer which is supposed to be (partially) zero contains that pointer.\n let mut int_byte_ptr = msg_byte_ptr / INT_SIZE;\n\n // Check partial zeros.\n let modulo = msg_byte_ptr % INT_SIZE;\n if modulo != 0 {\n // Reconstruct the partially zero item from the last block.\n let last_field = last_block[int_byte_ptr];\n let mut msg_item: u32 = 0;\n // Reset to where they are still equal.\n msg_byte_ptr = msg_byte_ptr - modulo;\n for i in 0..INT_SIZE {\n msg_item = lshift8(msg_item, 1);\n if i < modulo {\n msg_item = msg_item + get_item_byte(last_field, msg_byte_ptr) as u32;\n msg_byte_ptr = msg_byte_ptr + 1;\n }\n }\n assert_eq(msg_block[int_byte_ptr], msg_item);\n }\n\n for i in 0..INT_SIZE_PTR {\n if i < int_byte_ptr {\n assert_eq(msg_block[i], last_block[i]);\n }\n }\n}\n\n// Apply a function on the block item which the pointer indicates.\nfn update_block_item<Env>(\n mut msg_block: MSG_BLOCK,\n msg_byte_ptr: BLOCK_BYTE_PTR,\n f: fn[Env](u32) -> u32,\n) -> MSG_BLOCK {\n let i = msg_byte_ptr / INT_SIZE;\n msg_block[i] = f(msg_block[i]);\n msg_block\n}\n\n// Set the rightmost `zeros` number of bytes to 0.\nfn set_item_zeros(item: u32, zeros: u8) -> u32 {\n lshift8(rshift8(item, zeros), zeros)\n}\n\n// Replace one byte in the item with a value, and set everything after it to zero.\nfn set_item_byte_then_zeros(msg_item: u32, msg_byte_ptr: BLOCK_BYTE_PTR, msg_byte: u8) -> u32 {\n let zeros = INT_SIZE - msg_byte_ptr % INT_SIZE;\n let zeroed_item = set_item_zeros(msg_item, zeros as u8);\n let new_item = byte_into_item(msg_byte, msg_byte_ptr);\n zeroed_item + new_item\n}\n\n// Get a byte of a message item according to its overall position in the `BLOCK_SIZE` space.\nfn get_item_byte(mut msg_item: u32, msg_byte_ptr: BLOCK_BYTE_PTR) -> u8 {\n // How many times do we have to shift to the right to get to the position we want?\n let max_shifts = INT_SIZE - 1;\n let shifts = max_shifts - msg_byte_ptr % INT_SIZE;\n msg_item = rshift8(msg_item, shifts as u8);\n // At this point the byte we want is in the rightmost position.\n msg_item as u8\n}\n\n// Project a byte into a position in a field based on the overall block pointer.\n// For example putting 1 into pointer 5 would be 100, because overall we would\n// have [____, 0100] with indexes [0123,4567].\nfn byte_into_item(msg_byte: u8, msg_byte_ptr: BLOCK_BYTE_PTR) -> u32 {\n let mut msg_item = msg_byte as u32;\n // How many times do we have to shift to the left to get to the position we want?\n let max_shifts = INT_SIZE - 1;\n let shifts = max_shifts - msg_byte_ptr % INT_SIZE;\n lshift8(msg_item, shifts as u8)\n}\n\n// Construct a field out of 4 bytes.\nfn make_item(b0: u8, b1: u8, b2: u8, b3: u8) -> u32 {\n let mut item = b0 as u32;\n item = lshift8(item, 1) + b1 as u32;\n item = lshift8(item, 1) + b2 as u32;\n item = lshift8(item, 1) + b3 as u32;\n item\n}\n\n// Shift by 8 bits to the left between 0 and 4 times.\n// Checks `is_unconstrained()` to just use a bitshift if we're running in an unconstrained context,\n// otherwise multiplies by 256.\nfn lshift8(item: u32, shifts: u8) -> u32 {\n if is_unconstrained() {\n if item == 0 {\n 0\n } else {\n // Brillig wouldn't shift 0<<4 without overflow.\n item << (8 * shifts)\n }\n } else {\n // We can do a for loop up to INT_SIZE or an if-else.\n if shifts == 0 {\n item\n } else if shifts == 1 {\n item * TWO_POW_8\n } else if shifts == 2 {\n item * TWO_POW_16\n } else if shifts == 3 {\n item * TWO_POW_24\n } else {\n // Doesn't make sense, but it's most likely called on 0 anyway.\n 0\n }\n }\n}\n\n// Shift by 8 bits to the right between 0 and 4 times.\n// Checks `is_unconstrained()` to just use a bitshift if we're running in an unconstrained context,\n// otherwise divides by 256.\nfn rshift8(item: u32, shifts: u8) -> u32 {\n if is_unconstrained() {\n item >> (8 * shifts)\n } else {\n // Division wouldn't work on `Field`.\n if shifts == 0 {\n item\n } else if shifts == 1 {\n item / TWO_POW_8\n } else if shifts == 2 {\n item / TWO_POW_16\n } else if shifts == 3 {\n item / TWO_POW_24\n } else {\n 0\n }\n }\n}\n\n// Zero out all bytes between the end of the message and where the length is appended,\n// then write the length into the last 8 bytes of the block.\nunconstrained fn attach_len_to_msg_block(\n mut msg_block: MSG_BLOCK,\n mut msg_byte_ptr: BLOCK_BYTE_PTR,\n message_size: u32,\n) -> MSG_BLOCK {\n // We assume that `msg_byte_ptr` is less than 57 because if not then it is reset to zero before calling this function.\n // In any case, fill blocks up with zeros until the last 64 bits (i.e. until msg_byte_ptr = 56).\n // There can be one item which has to be partially zeroed.\n let modulo = msg_byte_ptr % INT_SIZE;\n if modulo != 0 {\n // Index of the block in which we find the item we need to partially zero.\n let i = msg_byte_ptr / INT_SIZE;\n let zeros = INT_SIZE - modulo;\n msg_block[i] = set_item_zeros(msg_block[i], zeros as u8);\n msg_byte_ptr = msg_byte_ptr + zeros;\n }\n\n // The rest can be zeroed without bit shifting anything.\n for i in (msg_byte_ptr / INT_SIZE)..INT_SIZE_PTR {\n msg_block[i] = 0;\n }\n\n // Set the last two 4 byte ints as the first/second half of the 8 bytes of the length.\n let len = 8 * message_size;\n let len_bytes: [u8; 8] = (len as Field).to_be_bytes();\n for i in 0..=1 {\n let shift = i * 4;\n msg_block[INT_SIZE_PTR + i] = make_item(\n len_bytes[shift],\n len_bytes[shift + 1],\n len_bytes[shift + 2],\n len_bytes[shift + 3],\n );\n }\n msg_block\n}\n\n// Verify that the message length was correctly written by `attach_len_to_msg_block`,\n// and that everything between the byte pointer and the size pointer was zeroed,\n// and that everything before the byte pointer was untouched.\nfn verify_msg_len(\n msg_block: MSG_BLOCK,\n last_block: MSG_BLOCK,\n msg_byte_ptr: BLOCK_BYTE_PTR,\n message_size: u32,\n) {\n // Check zeros up to the size pointer.\n verify_msg_block_zeros(msg_block, msg_byte_ptr, INT_SIZE_PTR);\n\n // Check that up to the pointer we match the last block.\n verify_msg_block_equals_last(msg_block, last_block, msg_byte_ptr);\n\n // We verify the message length was inserted correctly by reversing the byte decomposition.\n let mut reconstructed_len: u64 = 0;\n for i in INT_SIZE_PTR..INT_BLOCK_SIZE {\n reconstructed_len = reconstructed_len * TWO_POW_32;\n reconstructed_len = reconstructed_len + msg_block[i] as u64;\n }\n let len = 8 * message_size as u64;\n assert_eq(reconstructed_len, len);\n}\n\n// Perform the final compression, then transform the `STATE` into `HASH`.\nfn hash_final_block(msg_block: MSG_BLOCK, mut state: STATE) -> HASH {\n let mut out_h: HASH = [0; 32]; // Digest as sequence of bytes\n // Hash final padded block\n state = sha256_compression(msg_block, state);\n\n // Return final hash as byte array\n for j in 0..8 {\n let h_bytes: [u8; 4] = (state[j] as Field).to_be_bytes();\n for k in 0..4 {\n out_h[4 * j + k] = h_bytes[k];\n }\n }\n\n out_h\n}\n\nmod tests {\n use super::{\n attach_len_to_msg_block, build_msg_block, byte_into_item, get_item_byte, make_item,\n set_item_byte_then_zeros, set_item_zeros,\n };\n use super::INT_BLOCK;\n use super::sha256_var;\n\n #[test]\n fn smoke_test() {\n let input = [0xbd];\n let result = [\n 0x68, 0x32, 0x57, 0x20, 0xaa, 0xbd, 0x7c, 0x82, 0xf3, 0x0f, 0x55, 0x4b, 0x31, 0x3d,\n 0x05, 0x70, 0xc9, 0x5a, 0xcc, 0xbb, 0x7d, 0xc4, 0xb5, 0xaa, 0xe1, 0x12, 0x04, 0xc0,\n 0x8f, 0xfe, 0x73, 0x2b,\n ];\n assert_eq(sha256_var(input, input.len() as u64), result);\n }\n\n #[test]\n fn msg_just_over_block() {\n let input = [\n 102, 114, 111, 109, 58, 114, 117, 110, 110, 105, 101, 114, 46, 108, 101, 97, 103, 117,\n 101, 115, 46, 48, 106, 64, 105, 99, 108, 111, 117, 100, 46, 99, 111, 109, 13, 10, 99,\n 111, 110, 116, 101, 110, 116, 45, 116, 121, 112, 101, 58, 116, 101, 120, 116, 47, 112,\n 108, 97, 105, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116,\n ];\n let result = [\n 91, 122, 146, 93, 52, 109, 133, 148, 171, 61, 156, 70, 189, 238, 153, 7, 222, 184, 94,\n 24, 65, 114, 192, 244, 207, 199, 87, 232, 192, 224, 171, 207,\n ];\n assert_eq(sha256_var(input, input.len() as u64), result);\n }\n\n #[test]\n fn msg_multiple_over_block() {\n let input = [\n 102, 114, 111, 109, 58, 114, 117, 110, 110, 105, 101, 114, 46, 108, 101, 97, 103, 117,\n 101, 115, 46, 48, 106, 64, 105, 99, 108, 111, 117, 100, 46, 99, 111, 109, 13, 10, 99,\n 111, 110, 116, 101, 110, 116, 45, 116, 121, 112, 101, 58, 116, 101, 120, 116, 47, 112,\n 108, 97, 105, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 115, 45, 97, 115,\n 99, 105, 105, 13, 10, 109, 105, 109, 101, 45, 118, 101, 114, 115, 105, 111, 110, 58, 49,\n 46, 48, 32, 40, 77, 97, 99, 32, 79, 83, 32, 88, 32, 77, 97, 105, 108, 32, 49, 54, 46,\n 48, 32, 92, 40, 51, 55, 51, 49, 46, 53, 48, 48, 46, 50, 51, 49, 92, 41, 41, 13, 10, 115,\n 117, 98, 106, 101, 99, 116, 58, 72, 101, 108, 108, 111, 13, 10, 109, 101, 115, 115, 97,\n 103, 101, 45, 105, 100, 58, 60, 56, 70, 56, 49, 57, 68, 51, 50, 45, 66, 54, 65, 67, 45,\n 52, 56, 57, 68, 45, 57, 55, 55, 70, 45, 52, 51, 56, 66, 66, 67, 52, 67, 65, 66, 50, 55,\n 64, 109, 101, 46, 99, 111, 109, 62, 13, 10, 100, 97, 116, 101, 58, 83, 97, 116, 44, 32,\n 50, 54, 32, 65, 117, 103, 32, 50, 48, 50, 51, 32, 49, 50, 58, 50, 53, 58, 50, 50, 32,\n 43, 48, 52, 48, 48, 13, 10, 116, 111, 58, 122, 107, 101, 119, 116, 101, 115, 116, 64,\n 103, 109, 97, 105, 108, 46, 99, 111, 109, 13, 10, 100, 107, 105, 109, 45, 115, 105, 103,\n 110, 97, 116, 117, 114, 101, 58, 118, 61, 49, 59, 32, 97, 61, 114, 115, 97, 45, 115,\n 104, 97, 50, 53, 54, 59, 32, 99, 61, 114, 101, 108, 97, 120, 101, 100, 47, 114, 101,\n 108, 97, 120, 101, 100, 59, 32, 100, 61, 105, 99, 108, 111, 117, 100, 46, 99, 111, 109,\n 59, 32, 115, 61, 49, 97, 49, 104, 97, 105, 59, 32, 116, 61, 49, 54, 57, 51, 48, 51, 56,\n 51, 51, 55, 59, 32, 98, 104, 61, 55, 120, 81, 77, 68, 117, 111, 86, 86, 85, 52, 109, 48,\n 87, 48, 87, 82, 86, 83, 114, 86, 88, 77, 101, 71, 83, 73, 65, 83, 115, 110, 117, 99, 75,\n 57, 100, 74, 115, 114, 99, 43, 118, 85, 61, 59, 32, 104, 61, 102, 114, 111, 109, 58, 67,\n 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 77, 105, 109, 101, 45, 86, 101,\n 114, 115, 105, 111, 110, 58, 83, 117, 98, 106, 101, 99,\n ];\n let result = [\n 116, 90, 151, 31, 78, 22, 138, 180, 211, 189, 69, 76, 227, 200, 155, 29, 59, 123, 154,\n 60, 47, 153, 203, 129, 157, 251, 48, 2, 79, 11, 65, 47,\n ];\n assert_eq(sha256_var(input, input.len() as u64), result);\n }\n\n #[test]\n fn msg_just_under_block() {\n let input = [\n 102, 114, 111, 109, 58, 114, 117, 110, 110, 105, 101, 114, 46, 108, 101, 97, 103, 117,\n 101, 115, 46, 48, 106, 64, 105, 99, 108, 111, 117, 100, 46, 99, 111, 109, 13, 10, 99,\n 111, 110, 116, 101, 110, 116, 45, 116, 121, 112, 101, 58, 116, 101, 120, 116, 47, 112,\n 108, 97, 105, 110, 59,\n ];\n let result = [\n 143, 140, 76, 173, 222, 123, 102, 68, 70, 149, 207, 43, 39, 61, 34, 79, 216, 252, 213,\n 165, 74, 16, 110, 74, 29, 64, 138, 167, 30, 1, 9, 119,\n ];\n assert_eq(sha256_var(input, input.len() as u64), result);\n }\n\n #[test]\n fn msg_big_not_block_multiple() {\n let input = [\n 102, 114, 111, 109, 58, 114, 117, 110, 110, 105, 101, 114, 46, 108, 101, 97, 103, 117,\n 101, 115, 46, 48, 106, 64, 105, 99, 108, 111, 117, 100, 46, 99, 111, 109, 13, 10, 99,\n 111, 110, 116, 101, 110, 116, 45, 116, 121, 112, 101, 58, 116, 101, 120, 116, 47, 112,\n 108, 97, 105, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 115, 45, 97, 115,\n 99, 105, 105, 13, 10, 109, 105, 109, 101, 45, 118, 101, 114, 115, 105, 111, 110, 58, 49,\n 46, 48, 32, 40, 77, 97, 99, 32, 79, 83, 32, 88, 32, 77, 97, 105, 108, 32, 49, 54, 46,\n 48, 32, 92, 40, 51, 55, 51, 49, 46, 53, 48, 48, 46, 50, 51, 49, 92, 41, 41, 13, 10, 115,\n 117, 98, 106, 101, 99, 116, 58, 72, 101, 108, 108, 111, 13, 10, 109, 101, 115, 115, 97,\n 103, 101, 45, 105, 100, 58, 60, 56, 70, 56, 49, 57, 68, 51, 50, 45, 66, 54, 65, 67, 45,\n 52, 56, 57, 68, 45, 57, 55, 55, 70, 45, 52, 51, 56, 66, 66, 67, 52, 67, 65, 66, 50, 55,\n 64, 109, 101, 46, 99, 111, 109, 62, 13, 10, 100, 97, 116, 101, 58, 83, 97, 116, 44, 32,\n 50, 54, 32, 65, 117, 103, 32, 50, 48, 50, 51, 32, 49, 50, 58, 50, 53, 58, 50, 50, 32,\n 43, 48, 52, 48, 48, 13, 10, 116, 111, 58, 122, 107, 101, 119, 116, 101, 115, 116, 64,\n 103, 109, 97, 105, 108, 46, 99, 111, 109, 13, 10, 100, 107, 105, 109, 45, 115, 105, 103,\n 110, 97, 116, 117, 114, 101, 58, 118, 61, 49, 59, 32, 97, 61, 114, 115, 97, 45, 115,\n 104, 97, 50, 53, 54, 59, 32, 99, 61, 114, 101, 108, 97, 120, 101, 100, 47, 114, 101,\n 108, 97, 120, 101, 100, 59, 32, 100, 61, 105, 99, 108, 111, 117, 100, 46, 99, 111, 109,\n 59, 32, 115, 61, 49, 97, 49, 104, 97, 105, 59, 32, 116, 61, 49, 54, 57, 51, 48, 51, 56,\n 51, 51, 55, 59, 32, 98, 104, 61, 55, 120, 81, 77, 68, 117, 111, 86, 86, 85, 52, 109, 48,\n 87, 48, 87, 82, 86, 83, 114, 86, 88, 77, 101, 71, 83, 73, 65, 83, 115, 110, 117, 99, 75,\n 57, 100, 74, 115, 114, 99, 43, 118, 85, 61, 59, 32, 104, 61, 102, 114, 111, 109, 58, 67,\n 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 77, 105, 109, 101, 45, 86, 101,\n 114, 115, 105, 111, 110, 58, 83, 117, 98, 106, 101, 99, 116, 58, 77, 101, 115, 115, 97,\n 103, 101, 45, 73, 100, 58, 68, 97, 116, 101, 58, 116, 111, 59, 32, 98, 61,\n ];\n let result = [\n 112, 144, 73, 182, 208, 98, 9, 238, 54, 229, 61, 145, 222, 17, 72, 62, 148, 222, 186,\n 55, 192, 82, 220, 35, 66, 47, 193, 200, 22, 38, 26, 186,\n ];\n assert_eq(sha256_var(input, input.len() as u64), result);\n }\n\n #[test]\n fn msg_big_with_padding() {\n let input = [\n 48, 130, 1, 37, 2, 1, 0, 48, 11, 6, 9, 96, 134, 72, 1, 101, 3, 4, 2, 1, 48, 130, 1, 17,\n 48, 37, 2, 1, 1, 4, 32, 176, 223, 31, 133, 108, 84, 158, 102, 70, 11, 165, 175, 196, 12,\n 201, 130, 25, 131, 46, 125, 156, 194, 28, 23, 55, 133, 157, 164, 135, 136, 220, 78, 48,\n 37, 2, 1, 2, 4, 32, 190, 82, 180, 235, 222, 33, 79, 50, 152, 136, 142, 35, 116, 224, 6,\n 242, 156, 141, 128, 248, 10, 61, 98, 86, 248, 45, 207, 210, 90, 232, 175, 38, 48, 37, 2,\n 1, 3, 4, 32, 0, 194, 104, 108, 237, 246, 97, 230, 116, 198, 69, 110, 26, 87, 17, 89,\n 110, 199, 108, 250, 36, 21, 39, 87, 110, 102, 250, 213, 174, 131, 171, 174, 48, 37, 2,\n 1, 11, 4, 32, 136, 155, 87, 144, 111, 15, 152, 127, 85, 25, 154, 81, 20, 58, 51, 75,\n 193, 116, 234, 0, 60, 30, 29, 30, 183, 141, 72, 247, 255, 203, 100, 124, 48, 37, 2, 1,\n 12, 4, 32, 41, 234, 106, 78, 31, 11, 114, 137, 237, 17, 92, 71, 134, 47, 62, 78, 189,\n 233, 201, 214, 53, 4, 47, 189, 201, 133, 6, 121, 34, 131, 64, 142, 48, 37, 2, 1, 13, 4,\n 32, 91, 222, 210, 193, 62, 222, 104, 82, 36, 41, 138, 253, 70, 15, 148, 208, 156, 45,\n 105, 171, 241, 195, 185, 43, 217, 162, 146, 201, 222, 89, 238, 38, 48, 37, 2, 1, 14, 4,\n 32, 76, 123, 216, 13, 51, 227, 72, 245, 59, 193, 238, 166, 103, 49, 23, 164, 171, 188,\n 194, 197, 156, 187, 249, 28, 198, 95, 69, 15, 182, 56, 54, 38, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n ];\n let result = [\n 32, 85, 108, 174, 127, 112, 178, 182, 8, 43, 134, 123, 192, 211, 131, 66, 184, 240, 212,\n 181, 240, 180, 106, 195, 24, 117, 54, 129, 19, 10, 250, 53,\n ];\n let message_size = 297;\n assert_eq(sha256_var(input, message_size), result);\n }\n\n #[test]\n fn msg_big_no_padding() {\n let input = [\n 48, 130, 1, 37, 2, 1, 0, 48, 11, 6, 9, 96, 134, 72, 1, 101, 3, 4, 2, 1, 48, 130, 1, 17,\n 48, 37, 2, 1, 1, 4, 32, 176, 223, 31, 133, 108, 84, 158, 102, 70, 11, 165, 175, 196, 12,\n 201, 130, 25, 131, 46, 125, 156, 194, 28, 23, 55, 133, 157, 164, 135, 136, 220, 78, 48,\n 37, 2, 1, 2, 4, 32, 190, 82, 180, 235, 222, 33, 79, 50, 152, 136, 142, 35, 116, 224, 6,\n 242, 156, 141, 128, 248, 10, 61, 98, 86, 248, 45, 207, 210, 90, 232, 175, 38, 48, 37, 2,\n 1, 3, 4, 32, 0, 194, 104, 108, 237, 246, 97, 230, 116, 198, 69, 110, 26, 87, 17, 89,\n 110, 199, 108, 250, 36, 21, 39, 87, 110, 102, 250, 213, 174, 131, 171, 174, 48, 37, 2,\n 1, 11, 4, 32, 136, 155, 87, 144, 111, 15, 152, 127, 85, 25, 154, 81, 20, 58, 51, 75,\n 193, 116, 234, 0, 60, 30, 29, 30, 183, 141, 72, 247, 255, 203, 100, 124, 48, 37, 2, 1,\n 12, 4, 32, 41, 234, 106, 78, 31, 11, 114, 137, 237, 17, 92, 71, 134, 47, 62, 78, 189,\n 233, 201, 214, 53, 4, 47, 189, 201, 133, 6, 121, 34, 131, 64, 142, 48, 37, 2, 1, 13, 4,\n 32, 91, 222, 210, 193, 62, 222, 104, 82, 36, 41, 138, 253, 70, 15, 148, 208, 156, 45,\n 105, 171, 241, 195, 185, 43, 217, 162, 146, 201, 222, 89, 238, 38, 48, 37, 2, 1, 14, 4,\n 32, 76, 123, 216, 13, 51, 227, 72, 245, 59, 193, 238, 166, 103, 49, 23, 164, 171, 188,\n 194, 197, 156, 187, 249, 28, 198, 95, 69, 15, 182, 56, 54, 38,\n ];\n let result = [\n 32, 85, 108, 174, 127, 112, 178, 182, 8, 43, 134, 123, 192, 211, 131, 66, 184, 240, 212,\n 181, 240, 180, 106, 195, 24, 117, 54, 129, 19, 10, 250, 53,\n ];\n assert_eq(sha256_var(input, input.len() as u64), result);\n }\n\n #[test]\n fn same_msg_len_variable_padding() {\n let input = [\n 29, 81, 165, 84, 243, 114, 101, 37, 242, 146, 127, 99, 69, 145, 39, 72, 213, 39, 253,\n 179, 218, 37, 217, 201, 172, 93, 198, 50, 249, 70, 15, 30, 162, 112, 187, 40, 140, 9,\n 236, 53, 32, 44, 38, 163, 113, 254, 192, 197, 44, 89, 71, 130, 169, 242, 17, 211, 214,\n 72, 19, 178, 186, 168, 147, 127, 99, 101, 252, 227, 8, 147, 150, 85, 97, 158, 17, 107,\n 218, 244, 82, 113, 247, 91, 208, 214, 60, 244, 87, 137, 173, 201, 130, 18, 66, 56, 198,\n 149, 207, 189, 175, 120, 123, 224, 177, 167, 251, 159, 143, 110, 68, 183, 189, 70, 126,\n 32, 35, 164, 44, 30, 44, 12, 65, 18, 62, 239, 242, 2, 248, 104, 2, 178, 64, 28, 126, 36,\n 137, 24, 14, 116, 91, 98, 90, 159, 218, 102, 45, 11, 110, 223, 245, 184, 52, 99, 59,\n 245, 136, 175, 3, 72, 164, 146, 145, 116, 22, 66, 24, 49, 193, 121, 3, 60, 37, 41, 97,\n 3, 190, 66, 195, 225, 63, 46, 3, 118, 4, 208, 15, 1, 40, 254, 235, 151, 123, 70, 180,\n 170, 44, 172, 90, 4, 254, 53, 239, 116, 246, 67, 56, 129, 61, 22, 169, 213, 65, 27, 216,\n 116, 162, 239, 214, 207, 126, 177, 20, 100, 25, 48, 143, 84, 215, 70, 197, 53, 65, 70,\n 86, 172, 61, 62, 9, 212, 167, 169, 133, 41, 126, 213, 196, 33, 192, 238, 0, 63, 246,\n 215, 58, 128, 110, 101, 92, 3, 170, 214, 130, 149, 52, 81, 125, 118, 233, 3, 118, 193,\n 104, 207, 120, 115, 77, 253, 191, 122, 0, 107, 164, 207, 113, 81, 169, 36, 201, 228, 74,\n 134, 131, 218, 178, 35, 30, 216, 101, 2, 103, 174, 87, 95, 50, 50, 215, 157, 5, 210,\n 188, 54, 211, 78, 45, 199, 96, 121, 241, 241, 176, 226, 194, 134, 130, 89, 217, 210,\n 186, 32, 140, 39, 91, 103, 212, 26, 87, 32, 72, 144, 228, 230, 117, 99, 188, 50, 15, 69,\n 79, 179, 50, 12, 106, 86, 218, 101, 73, 142, 243, 29, 250, 122, 228, 233, 29, 255, 22,\n 121, 114, 125, 103, 41, 250, 241, 179, 126, 158, 198, 116, 209, 65, 94, 98, 228, 175,\n 169, 96, 3, 9, 233, 133, 214, 55, 161, 164, 103, 80, 85, 24, 186, 64, 167, 92, 131, 53,\n 101, 202, 47, 25, 104, 118, 155, 14, 12, 12, 25, 116, 45, 221, 249, 28, 246, 212, 200,\n 157, 167, 169, 56, 197, 181, 4, 245, 146, 1, 140, 234, 191, 212, 228, 125, 87, 81, 86,\n 119, 30, 63, 129, 143, 32, 96,\n ];\n\n // Prepare inputs of different lengths\n let mut input_511 = [0; 511];\n let mut input_512 = [0; 512]; // Next block\n let mut input_575 = [0; 575];\n let mut input_576 = [0; 576]; // Next block\n for i in 0..input.len() {\n input_511[i] = input[i];\n input_512[i] = input[i];\n input_575[i] = input[i];\n input_576[i] = input[i];\n }\n\n // Compute hashes of all inputs (with same message length)\n let fixed_length_hash = super::sha256(input);\n let var_full_length_hash = sha256_var(input, input.len() as u64);\n let var_length_hash_511 = sha256_var(input_511, input.len() as u64);\n let var_length_hash_512 = sha256_var(input_512, input.len() as u64);\n let var_length_hash_575 = sha256_var(input_575, input.len() as u64);\n let var_length_hash_576 = sha256_var(input_576, input.len() as u64);\n\n // All of the above should have produced the same hash\n assert_eq(var_full_length_hash, fixed_length_hash);\n assert_eq(var_length_hash_511, fixed_length_hash);\n assert_eq(var_length_hash_512, fixed_length_hash);\n assert_eq(var_length_hash_575, fixed_length_hash);\n assert_eq(var_length_hash_576, fixed_length_hash);\n }\n\n #[test]\n fn test_get_item_byte() {\n let fld = make_item(10, 20, 30, 40);\n assert_eq(fld, 0x0a141e28);\n assert_eq(get_item_byte(fld, 0), 10);\n assert_eq(get_item_byte(fld, 4), 10);\n assert_eq(get_item_byte(fld, 6), 30);\n }\n\n #[test]\n fn test_byte_into_item() {\n let fld = make_item(0, 20, 0, 0);\n assert_eq(byte_into_item(20, 1), fld);\n assert_eq(byte_into_item(20, 5), fld);\n }\n\n #[test]\n fn test_set_item_zeros() {\n let fld0 = make_item(10, 20, 30, 40);\n let fld1 = make_item(10, 0, 0, 0);\n assert_eq(set_item_zeros(fld0, 3), fld1);\n assert_eq(set_item_zeros(fld0, 4), 0);\n assert_eq(set_item_zeros(0, 4), 0);\n }\n\n #[test]\n fn test_set_item_byte_then_zeros() {\n let fld0 = make_item(10, 20, 30, 40);\n let fld1 = make_item(10, 50, 0, 0);\n assert_eq(set_item_byte_then_zeros(fld0, 1, 50), fld1);\n }\n\n #[test]\n fn test_build_msg_block_start_0() {\n let input = [\n 102, 114, 111, 109, 58, 114, 117, 110, 110, 105, 101, 114, 46, 108, 101, 97, 103, 117,\n 101, 115, 46, 48,\n ];\n assert_eq(input.len(), 22);\n\n /// Safety: testing context\n let (msg_block, msg_byte_ptr) = unsafe { build_msg_block(input, input.len(), 0) };\n assert_eq(msg_byte_ptr, input.len());\n assert_eq(msg_block[0], make_item(input[0], input[1], input[2], input[3]));\n assert_eq(msg_block[1], make_item(input[4], input[5], input[6], input[7]));\n assert_eq(msg_block[5], make_item(input[20], input[21], 0, 0));\n assert_eq(msg_block[6], 0);\n }\n\n #[test]\n fn test_build_msg_block_start_1() {\n let input = [\n 102, 114, 111, 109, 58, 114, 117, 110, 110, 105, 101, 114, 46, 108, 101, 97, 103, 117,\n 101, 115, 46, 48, 106, 64, 105, 99, 108, 111, 117, 100, 46, 99, 111, 109, 13, 10, 99,\n 111, 110, 116, 101, 110, 116, 45, 116, 121, 112, 101, 58, 116, 101, 120, 116, 47, 112,\n 108, 97, 105, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116,\n ];\n assert_eq(input.len(), 68);\n /// Safety: test context\n let (msg_block, msg_byte_ptr) = unsafe { build_msg_block(input, input.len(), 64) };\n assert_eq(msg_byte_ptr, 4);\n assert_eq(msg_block[0], make_item(input[64], input[65], input[66], input[67]));\n assert_eq(msg_block[1], 0);\n }\n\n #[test]\n fn test_attach_len_to_msg_block() {\n let input: INT_BLOCK = [\n 2152555847, 1397309779, 1936618851, 1262052426, 1936876331, 1985297723, 543702374,\n 1919905082, 1131376244, 1701737517, 1417244773, 978151789, 1697470053, 1920166255,\n 1849316213, 1651139939,\n ];\n /// Safety: testing context\n let msg_block = unsafe { attach_len_to_msg_block(input, 1, 448) };\n assert_eq(msg_block[0], ((1 << 7) as u32) * 256 * 256 * 256);\n assert_eq(msg_block[1], 0);\n assert_eq(msg_block[15], 3584);\n }\n}\n"
|
|
6009
6009
|
},
|
|
6010
|
-
"
|
|
6010
|
+
"283": {
|
|
6011
6011
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/point.nr",
|
|
6012
6012
|
"source": "pub use dep::std::embedded_curve_ops::EmbeddedCurvePoint as Point;\nuse crate::{hash::poseidon2_hash, traits::{Deserialize, Empty, Hash, Packable, Serialize}};\n\npub global POINT_LENGTH: u32 = 3;\n\nimpl Serialize<POINT_LENGTH> for Point {\n fn serialize(self: Self) -> [Field; POINT_LENGTH] {\n [self.x, self.y, self.is_infinite as Field]\n }\n}\n\nimpl Hash for Point {\n fn hash(self) -> Field {\n poseidon2_hash(self.serialize())\n }\n}\n\nimpl Empty for Point {\n /// Note: Does not return a valid point on curve - instead represents an empty/\"unpopulated\" point struct (e.g.\n /// empty/unpopulated value in an array of points).\n fn empty() -> Self {\n Point { x: 0, y: 0, is_infinite: false }\n }\n}\n\nimpl Deserialize<POINT_LENGTH> for Point {\n fn deserialize(serialized: [Field; POINT_LENGTH]) -> Point {\n Point { x: serialized[0], y: serialized[1], is_infinite: serialized[2] as bool }\n }\n}\n// TODO(#11356): use compact representation here.\nimpl Packable<POINT_LENGTH> for Point {\n fn pack(self) -> [Field; POINT_LENGTH] {\n self.serialize()\n }\n\n fn unpack(packed: [Field; POINT_LENGTH]) -> Self {\n Self::deserialize(packed)\n }\n}\n"
|
|
6013
6013
|
},
|
|
6014
|
-
"
|
|
6014
|
+
"284": {
|
|
6015
6015
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/poseidon2.nr",
|
|
6016
6016
|
"source": "use crate::constants::TWO_POW_64;\n\n// NB: This is a clone of noir/noir-repo/noir_stdlib/src/hash/poseidon2.nr\n// It exists as we sometimes need to perform custom absorption, but the stdlib version\n// has a private absorb() method (it's also designed to just be a hasher)\n// Can be removed when standalone noir poseidon lib exists: See noir#6679\n\ncomptime global RATE: u32 = 3;\n\npub struct Poseidon2Sponge {\n pub cache: [Field; 3],\n pub state: [Field; 4],\n pub cache_size: u32,\n pub squeeze_mode: bool, // 0 => absorb, 1 => squeeze\n}\n\nimpl Poseidon2Sponge {\n #[no_predicates]\n pub fn hash<let N: u32>(input: [Field; N], message_size: u32) -> Field {\n Poseidon2Sponge::hash_internal(input, message_size, message_size != N)\n }\n\n pub(crate) fn new(iv: Field) -> Poseidon2Sponge {\n let mut result =\n Poseidon2Sponge { cache: [0; 3], state: [0; 4], cache_size: 0, squeeze_mode: false };\n result.state[RATE] = iv;\n result\n }\n\n fn perform_duplex(&mut self) {\n // add the cache into sponge state\n for i in 0..RATE {\n // We effectively zero-pad the cache by only adding to the state\n // cache that is less than the specified `cache_size`\n if i < self.cache_size {\n self.state[i] += self.cache[i];\n }\n }\n self.state = std::hash::poseidon2_permutation(self.state, 4);\n }\n\n pub fn absorb(&mut self, input: Field) {\n assert(!self.squeeze_mode);\n if self.cache_size == RATE {\n // If we're absorbing, and the cache is full, apply the sponge permutation to compress the cache\n self.perform_duplex();\n self.cache[0] = input;\n self.cache_size = 1;\n } else {\n // If we're absorbing, and the cache is not full, add the input into the cache\n self.cache[self.cache_size] = input;\n self.cache_size += 1;\n }\n }\n\n pub fn squeeze(&mut self) -> Field {\n assert(!self.squeeze_mode);\n // If we're in absorb mode, apply sponge permutation to compress the cache.\n self.perform_duplex();\n self.squeeze_mode = true;\n\n // Pop one item off the top of the permutation and return it.\n self.state[0]\n }\n\n fn hash_internal<let N: u32>(\n input: [Field; N],\n in_len: u32,\n is_variable_length: bool,\n ) -> Field {\n let iv: Field = (in_len as Field) * TWO_POW_64;\n let mut sponge = Poseidon2Sponge::new(iv);\n for i in 0..input.len() {\n if i < in_len {\n sponge.absorb(input[i]);\n }\n }\n\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if is_variable_length {\n sponge.absorb(1);\n }\n sponge.squeeze()\n }\n}\n"
|
|
6017
6017
|
},
|
|
6018
|
-
"
|
|
6018
|
+
"293": {
|
|
6019
6019
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/public_keys.nr",
|
|
6020
6020
|
"source": "use crate::{\n address::public_keys_hash::PublicKeysHash,\n constants::{\n DEFAULT_IVPK_M_X, DEFAULT_IVPK_M_Y, DEFAULT_NPK_M_X, DEFAULT_NPK_M_Y, DEFAULT_OVPK_M_X,\n DEFAULT_OVPK_M_Y, DEFAULT_TPK_M_X, DEFAULT_TPK_M_Y, GENERATOR_INDEX__PUBLIC_KEYS_HASH,\n },\n hash::poseidon2_hash_with_separator,\n point::POINT_LENGTH,\n traits::{Deserialize, Hash, Serialize},\n};\n\nuse dep::std::embedded_curve_ops::EmbeddedCurvePoint as Point;\nuse std::default::Default;\n\npub global PUBLIC_KEYS_LENGTH: u32 = 12;\n\npub struct PublicKeys {\n pub npk_m: NpkM,\n pub ivpk_m: IvpkM,\n pub ovpk_m: OvpkM,\n pub tpk_m: TpkM,\n}\n\npub trait ToPoint {\n fn to_point(self) -> Point;\n}\n\npub struct NpkM {\n pub inner: Point,\n}\n\nimpl ToPoint for NpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\nimpl Serialize<POINT_LENGTH> for NpkM {\n fn serialize(self) -> [Field; POINT_LENGTH] {\n self.inner.serialize()\n }\n}\n\n// Note: If we store npk_m_hash directly we can remove this trait implementation. See #8091\nimpl Hash for NpkM {\n fn hash(self) -> Field {\n self.inner.hash()\n }\n}\n\npub struct IvpkM {\n pub inner: Point,\n}\n\nimpl ToPoint for IvpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\nimpl Serialize<POINT_LENGTH> for IvpkM {\n fn serialize(self) -> [Field; POINT_LENGTH] {\n self.inner.serialize()\n }\n}\n\npub struct OvpkM {\n pub inner: Point,\n}\n\nimpl Hash for OvpkM {\n fn hash(self) -> Field {\n self.inner.hash()\n }\n}\n\nimpl ToPoint for OvpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\nimpl Serialize<POINT_LENGTH> for OvpkM {\n fn serialize(self) -> [Field; POINT_LENGTH] {\n self.inner.serialize()\n }\n}\n\npub struct TpkM {\n pub inner: Point,\n}\n\nimpl ToPoint for TpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\nimpl Serialize<POINT_LENGTH> for TpkM {\n fn serialize(self) -> [Field; POINT_LENGTH] {\n self.inner.serialize()\n }\n}\n\nimpl Default for PublicKeys {\n fn default() -> Self {\n PublicKeys {\n npk_m: NpkM {\n inner: Point { x: DEFAULT_NPK_M_X, y: DEFAULT_NPK_M_Y, is_infinite: false },\n },\n ivpk_m: IvpkM {\n inner: Point { x: DEFAULT_IVPK_M_X, y: DEFAULT_IVPK_M_Y, is_infinite: false },\n },\n ovpk_m: OvpkM {\n inner: Point { x: DEFAULT_OVPK_M_X, y: DEFAULT_OVPK_M_Y, is_infinite: false },\n },\n tpk_m: TpkM {\n inner: Point { x: DEFAULT_TPK_M_X, y: DEFAULT_TPK_M_Y, is_infinite: false },\n },\n }\n }\n}\n\nimpl Eq for PublicKeys {\n fn eq(self, other: PublicKeys) -> bool {\n (self.npk_m.inner == other.npk_m.inner)\n & (self.ivpk_m.inner == other.ivpk_m.inner)\n & (self.ovpk_m.inner == other.ovpk_m.inner)\n & (self.tpk_m.inner == other.tpk_m.inner)\n }\n}\n\nimpl PublicKeys {\n pub fn hash(self) -> PublicKeysHash {\n PublicKeysHash::from_field(poseidon2_hash_with_separator(\n self.serialize(),\n GENERATOR_INDEX__PUBLIC_KEYS_HASH as Field,\n ))\n }\n}\n\nimpl Serialize<PUBLIC_KEYS_LENGTH> for PublicKeys {\n fn serialize(self) -> [Field; PUBLIC_KEYS_LENGTH] {\n [\n self.npk_m.inner.x,\n self.npk_m.inner.y,\n self.npk_m.inner.is_infinite as Field,\n self.ivpk_m.inner.x,\n self.ivpk_m.inner.y,\n self.ivpk_m.inner.is_infinite as Field,\n self.ovpk_m.inner.x,\n self.ovpk_m.inner.y,\n self.ovpk_m.inner.is_infinite as Field,\n self.tpk_m.inner.x,\n self.tpk_m.inner.y,\n self.tpk_m.inner.is_infinite as Field,\n ]\n }\n}\n\nimpl Deserialize<PUBLIC_KEYS_LENGTH> for PublicKeys {\n fn deserialize(serialized: [Field; PUBLIC_KEYS_LENGTH]) -> PublicKeys {\n PublicKeys {\n npk_m: NpkM {\n inner: Point {\n x: serialized[0],\n y: serialized[1],\n is_infinite: serialized[2] as bool,\n },\n },\n ivpk_m: IvpkM {\n inner: Point {\n x: serialized[3],\n y: serialized[4],\n is_infinite: serialized[5] as bool,\n },\n },\n ovpk_m: OvpkM {\n inner: Point {\n x: serialized[6],\n y: serialized[7],\n is_infinite: serialized[8] as bool,\n },\n },\n tpk_m: TpkM {\n inner: Point {\n x: serialized[9],\n y: serialized[10],\n is_infinite: serialized[11] as bool,\n },\n },\n }\n }\n}\n\npub struct AddressPoint {\n pub inner: Point,\n}\n\nimpl ToPoint for AddressPoint {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\n#[test]\nunconstrained fn compute_public_keys_hash() {\n let keys = PublicKeys {\n npk_m: NpkM { inner: Point { x: 1, y: 2, is_infinite: false } },\n ivpk_m: IvpkM { inner: Point { x: 3, y: 4, is_infinite: false } },\n ovpk_m: OvpkM { inner: Point { x: 5, y: 6, is_infinite: false } },\n tpk_m: TpkM { inner: Point { x: 7, y: 8, is_infinite: false } },\n };\n\n let actual = keys.hash();\n let expected_public_keys_hash =\n 0x0fecd9a32db731fec1fded1b9ff957a1625c069245a3613a2538bd527068b0ad;\n\n assert(actual.to_field() == expected_public_keys_hash);\n}\n\n#[test]\nunconstrained fn compute_default_hash() {\n let keys = PublicKeys::default();\n\n let actual = keys.hash();\n let test_data_default_hash = 0x1d3bf1fb93ae0e9cda83b203dd91c3bfb492a9aecf30ec90e1057eced0f0e62d;\n\n assert(actual.to_field() == test_data_default_hash);\n}\n\n#[test]\nunconstrained fn test_public_keys_serialization() {\n let keys = PublicKeys {\n npk_m: NpkM { inner: Point { x: 1, y: 2, is_infinite: false } },\n ivpk_m: IvpkM { inner: Point { x: 3, y: 4, is_infinite: false } },\n ovpk_m: OvpkM { inner: Point { x: 5, y: 6, is_infinite: false } },\n tpk_m: TpkM { inner: Point { x: 7, y: 8, is_infinite: false } },\n };\n\n let serialized = keys.serialize();\n let deserialized = PublicKeys::deserialize(serialized);\n\n assert_eq(keys.npk_m.inner.x, deserialized.npk_m.inner.x);\n assert_eq(keys.npk_m.inner.y, deserialized.npk_m.inner.y);\n assert_eq(keys.ivpk_m.inner.x, deserialized.ivpk_m.inner.x);\n assert_eq(keys.ivpk_m.inner.y, deserialized.ivpk_m.inner.y);\n assert_eq(keys.ovpk_m.inner.x, deserialized.ovpk_m.inner.x);\n assert_eq(keys.ovpk_m.inner.y, deserialized.ovpk_m.inner.y);\n assert_eq(keys.tpk_m.inner.x, deserialized.tpk_m.inner.x);\n assert_eq(keys.tpk_m.inner.y, deserialized.tpk_m.inner.y);\n}\n"
|
|
6021
6021
|
},
|
|
6022
|
-
"
|
|
6022
|
+
"330": {
|
|
6023
6023
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/utils/arrays.nr",
|
|
6024
6024
|
"source": "pub mod assert_array_appended;\npub mod assert_array_prepended;\npub mod assert_combined_array;\npub mod assert_combined_transformed_array;\npub mod assert_exposed_sorted_transformed_value_array;\npub mod assert_sorted_array;\npub mod assert_sorted_transformed_value_array;\npub mod assert_split_sorted_transformed_value_arrays;\npub mod assert_split_transformed_value_arrays;\npub mod get_sorted_result;\npub mod get_sorted_tuple;\npub mod sort_by;\npub mod sort_by_counter;\n\n// Re-exports.\npub use assert_array_appended::{\n assert_array_appended, assert_array_appended_and_scoped, assert_array_appended_reversed,\n assert_array_appended_scoped,\n};\npub use assert_array_prepended::assert_array_prepended;\npub use assert_combined_array::{assert_combined_array, combine_arrays};\npub use assert_combined_transformed_array::{\n assert_combined_transformed_array, combine_and_transform_arrays,\n};\npub use assert_exposed_sorted_transformed_value_array::{\n assert_exposed_sorted_transformed_value_array,\n get_order_hints::{get_order_hints_asc, get_order_hints_desc, OrderHint},\n};\npub use assert_sorted_array::assert_sorted_array;\npub use assert_sorted_transformed_value_array::{\n assert_sorted_transformed_value_array, assert_sorted_transformed_value_array_capped_size,\n};\npub use assert_split_sorted_transformed_value_arrays::{\n assert_split_sorted_transformed_value_arrays_asc,\n assert_split_sorted_transformed_value_arrays_desc,\n get_split_order_hints::{get_split_order_hints_asc, get_split_order_hints_desc, SplitOrderHints},\n};\npub use assert_split_transformed_value_arrays::assert_split_transformed_value_arrays;\npub use get_sorted_result::{get_sorted_result, SortedResult};\npub use sort_by_counter::{sort_by_counter_asc, sort_by_counter_desc};\n\nuse crate::traits::{Empty, is_empty};\n\npub fn subarray<let SRC_LEN: u32, let DST_LEN: u32>(\n src: [Field; SRC_LEN],\n offset: u32,\n) -> [Field; DST_LEN] {\n assert(offset + DST_LEN <= SRC_LEN, \"offset too large\");\n\n let mut dst: [Field; DST_LEN] = std::mem::zeroed();\n for i in 0..DST_LEN {\n dst[i] = src[i + offset];\n }\n\n dst\n}\n\n// Helper function to convert a validated array to BoundedVec.\n// Important: Only use it for validated arrays: validate_array(array) should be true.\npub unconstrained fn array_to_bounded_vec<T, let N: u32>(array: [T; N]) -> BoundedVec<T, N>\nwhere\n T: Empty + Eq,\n{\n let len = array_length(array);\n BoundedVec::from_parts_unchecked(array, len)\n}\n\n// Helper function to find the index of the first element in an array that satisfies a given predicate. If the element\n// is not found, the function returns N as the index.\npub unconstrained fn find_index_hint<T, let N: u32, Env>(\n array: [T; N],\n find: fn[Env](T) -> bool,\n) -> u32 {\n let mut index = N;\n for i in 0..N {\n // We check `index == N` to ensure that we only update the index if we haven't found a match yet.\n if (index == N) & find(array[i]) {\n index = i;\n }\n }\n index\n}\n\n// Routine which validates that all zero values of an array form a contiguous region at the end, i.e.,\n// of the form: [*,*,*...,0,0,0,0] where any * is non-zero. Note that a full array of non-zero values is\n// valid.\npub fn validate_array<T, let N: u32>(array: [T; N]) -> u32\nwhere\n T: Empty + Eq,\n{\n let mut seen_empty = false;\n let mut length = 0;\n for i in 0..N {\n if is_empty(array[i]) {\n seen_empty = true;\n } else {\n assert(seen_empty == false, \"invalid array\");\n length += 1;\n }\n }\n length\n}\n\n// Helper function to count the number of non-empty elements in a validated array.\n// Important: Only use it for validated arrays where validate_array(array) returns true,\n// which ensures that:\n// 1. All elements before the first empty element are non-empty\n// 2. All elements after and including the first empty element are empty\n// 3. The array forms a contiguous sequence of non-empty elements followed by empty elements\npub fn array_length<T, let N: u32>(array: [T; N]) -> u32\nwhere\n T: Empty + Eq,\n{\n // We get the length by checking the index of the first empty element.\n\n /// Safety: This is safe because we have validated the array (see function doc above) and the emptiness\n /// of the element and non-emptiness of the previous element is checked below.\n let length = unsafe { find_index_hint(array, |elem: T| is_empty(elem)) };\n if length != 0 {\n assert(!is_empty(array[length - 1]));\n }\n if length != N {\n assert(is_empty(array[length]));\n }\n length\n}\n\npub fn array_concat<T, let N: u32, let M: u32>(array1: [T; N], array2: [T; M]) -> [T; N + M] {\n let mut result = [array1[0]; N + M];\n for i in 1..N {\n result[i] = array1[i];\n }\n for i in 0..M {\n result[i + N] = array2[i];\n }\n result\n}\n\npub fn array_merge<T, let N: u32>(array1: [T; N], array2: [T; N]) -> [T; N]\nwhere\n T: Empty + Eq,\n{\n let mut result: [T; N] = [T::empty(); N];\n let mut i = 0;\n for elem in array1 {\n if !is_empty(elem) {\n result[i] = elem;\n i += 1;\n }\n }\n for elem in array2 {\n if !is_empty(elem) {\n result[i] = elem;\n i += 1;\n }\n }\n result\n}\n\n// Helper fn to create a subarray from a given array\npub fn array_splice<T, let N: u32, let M: u32>(array: [T; N], offset: u32) -> [T; M]\nwhere\n T: Empty,\n{\n assert(M + offset <= N, \"Subarray length larger than array length\");\n let mut result: [T; M] = [T::empty(); M];\n for i in 0..M {\n result[i] = array[offset + i];\n }\n result\n}\n\npub fn check_permutation<T, let N: u32>(\n original_array: [T; N],\n permuted_array: [T; N],\n original_indexes: [u32; N],\n)\nwhere\n T: Eq + Empty,\n{\n let mut seen_value = [false; N];\n for i in 0..N {\n let index = original_indexes[i];\n let original_value = original_array[index];\n assert(permuted_array[i].eq(original_value), \"Invalid index\");\n assert(!seen_value[index], \"Duplicated index\");\n seen_value[index] = true;\n }\n}\n\n#[test]\nfn smoke_validate_array() {\n let valid_array: [Field; 0] = [];\n assert(validate_array(valid_array) == 0);\n\n let valid_array = [0];\n assert(validate_array(valid_array) == 0);\n\n let valid_array = [3];\n assert(validate_array(valid_array) == 1);\n\n let valid_array = [1, 2, 3];\n assert(validate_array(valid_array) == 3);\n\n let valid_array = [1, 2, 3, 0];\n assert(validate_array(valid_array) == 3);\n\n let valid_array = [1, 2, 3, 0, 0];\n assert(validate_array(valid_array) == 3);\n}\n\n#[test(should_fail_with = \"invalid array\")]\nfn smoke_validate_array_invalid_case0() {\n let invalid_array = [0, 1];\n let _ = validate_array(invalid_array);\n}\n\n#[test(should_fail_with = \"invalid array\")]\nfn smoke_validate_array_invalid_case1() {\n let invalid_array = [1, 0, 0, 1, 0];\n let _ = validate_array(invalid_array);\n}\n\n#[test(should_fail_with = \"invalid array\")]\nfn smoke_validate_array_invalid_case2() {\n let invalid_array = [0, 0, 0, 0, 1];\n let _ = validate_array(invalid_array);\n}\n\n#[test]\nfn test_empty_array_length() {\n assert_eq(array_length([0]), 0);\n assert_eq(array_length([0, 0, 0]), 0);\n}\n\n#[test]\nfn test_array_length() {\n assert_eq(array_length([123]), 1);\n assert_eq(array_length([123, 0, 0]), 1);\n assert_eq(array_length([123, 456]), 2);\n assert_eq(array_length([123, 456, 0]), 2);\n}\n\n#[test]\nfn test_array_length_invalid_arrays() {\n // Result can be misleading (but correct) for invalid arrays.\n assert_eq(array_length([0, 0, 123]), 0);\n assert_eq(array_length([0, 123, 0]), 0);\n assert_eq(array_length([0, 123, 456]), 0);\n assert_eq(array_length([123, 0, 456]), 1);\n}\n\n#[test]\nunconstrained fn find_index_greater_than_min() {\n let values = [10, 20, 30, 40];\n let min = 22;\n let index = find_index_hint(values, |v: Field| min.lt(v));\n assert_eq(index, 2);\n}\n\n#[test]\nunconstrained fn find_index_not_found() {\n let values = [10, 20, 30, 40];\n let min = 100;\n let index = find_index_hint(values, |v: Field| min.lt(v));\n assert_eq(index, 4);\n}\n\n#[test]\nfn test_array_concat() {\n let array0 = [1, 2, 3];\n let array1 = [4, 5];\n let concatenated = array_concat(array0, array1);\n assert_eq(concatenated, [1, 2, 3, 4, 5]);\n}\n\n#[test]\nfn check_permutation_basic_test() {\n let original_array = [1, 2, 3];\n let permuted_array = [3, 1, 2];\n let indexes = [2, 0, 1];\n check_permutation(original_array, permuted_array, indexes);\n}\n\n#[test(should_fail_with = \"Duplicated index\")]\nfn check_permutation_duplicated_index() {\n let original_array = [0, 1, 0];\n let permuted_array = [1, 0, 0];\n let indexes = [1, 0, 0];\n check_permutation(original_array, permuted_array, indexes);\n}\n\n#[test(should_fail_with = \"Invalid index\")]\nfn check_permutation_invalid_index() {\n let original_array = [0, 1, 2];\n let permuted_array = [1, 0, 0];\n let indexes = [1, 0, 2];\n check_permutation(original_array, permuted_array, indexes);\n}\n"
|
|
6025
6025
|
},
|
|
6026
|
-
"
|
|
6026
|
+
"333": {
|
|
6027
6027
|
"path": "/build-volume/noir-projects/noir-protocol-circuits/crates/types/src/utils/reader.nr",
|
|
6028
6028
|
"source": "pub struct Reader<let N: u32> {\n data: [Field; N],\n offset: u32,\n}\n\nimpl<let N: u32> Reader<N> {\n pub fn new(data: [Field; N]) -> Self {\n Self { data, offset: 0 }\n }\n\n pub fn read(&mut self) -> Field {\n let result = self.data[self.offset];\n self.offset += 1;\n result\n }\n\n pub fn read_u32(&mut self) -> u32 {\n self.read() as u32\n }\n\n pub fn read_bool(&mut self) -> bool {\n self.read() as bool\n }\n\n pub fn read_array<let K: u32>(&mut self) -> [Field; K] {\n let mut result = [0; K];\n for i in 0..K {\n result[i] = self.data[self.offset + i];\n }\n self.offset += K;\n result\n }\n\n pub fn read_struct<T, let K: u32>(&mut self, deserialise: fn([Field; K]) -> T) -> T {\n let result = deserialise(self.read_array());\n result\n }\n\n pub fn read_struct_array<T, let K: u32, let C: u32>(\n &mut self,\n deserialise: fn([Field; K]) -> T,\n mut result: [T; C],\n ) -> [T; C] {\n for i in 0..C {\n result[i] = self.read_struct(deserialise);\n }\n result\n }\n\n pub fn finish(self) {\n assert(self.offset == self.data.len(), \"Reader did not read all data\");\n }\n}\n"
|
|
6029
6029
|
},
|
|
6030
|
-
"
|
|
6030
|
+
"338": {
|
|
6031
6031
|
"path": "/root/nargo/github.com/noir-lang/ec/v0.1.2/src/lib.nr",
|
|
6032
6032
|
"source": "// Elliptic curve implementation\n// Overview\n// ========\n// The following three elliptic curve representations are admissible:\npub mod tecurve; // Twisted Edwards curves\npub mod swcurve; // Elliptic curves in Short Weierstrass form\npub mod montcurve; // Montgomery curves\npub mod consts; // Commonly used curve presets\n//\n// Note that Twisted Edwards and Montgomery curves are (birationally) equivalent, so that\n// they may be freely converted between one another, whereas Short Weierstrass curves are\n// more general. Diagramatically:\n//\n// tecurve == montcurve `subset` swcurve\n//\n// Each module is further divided into two submodules, 'affine' and 'curvegroup', depending\n// on the preferred coordinate representation. Affine coordinates are none other than the usual\n// two-dimensional Cartesian coordinates used in the definitions of these curves, whereas\n// 'CurveGroup' coordinates (terminology borrowed from Arkworks, whose conventions we try\n// to follow) are special coordinate systems with respect to which the group operations may be\n// implemented more efficiently, usually by means of an appropriate choice of projective coordinates.\n//\n// In each of these submodules, there is a Point struct and a Curve struct, the former\n// representing a point in the coordinate system and the latter a curve configuration.\n//\n// Points\n// ======\n// Points may be instantiated using the associated function `new`, which takes coordinates\n// as its arguments. For instance,\n//\n// `let p = swcurve::Point::new(1,1);`\n//\n// The additive identity may be constructed by a call to the associated function `zero` of no\n// arguments:\n//\n// `let zero = swcurve::Point::zero();`\n//\n// Points may be tested for equality by calling the method `eq`:\n//\n// `let pred = p.eq(zero);`\n//\n// There is also the method `is_zero` to explicitly check whether a point is the additive identity:\n//\n// `constrain pred == p.is_zero();`\n//\n// Points may be negated by calling the `negate` method and converted to CurveGroup (or affine)\n// coordinates by calling the `into_group` (resp. `into_affine`) method on them. Finally,\n// Points may be freely mapped between their respective Twisted Edwards and Montgomery\n// representations by calling the `into_montcurve` or `into_tecurve` methods. For mappings\n// between Twisted Edwards/Montgomery curves and Short Weierstrass curves, see the Curve section\n// below, as the underlying mappings are those of curves rather than ambient spaces.\n// As a rule, Points in affine (or CurveGroup) coordinates are mapped to Points in affine\n// (resp. CurveGroup) coordinates.\n//\n// Curves\n// ======\n// A curve configuration (Curve) is completely determined by the Field coefficients of its defining\n// equation (a and b in the case of swcurve, a and d in the case of tecurve, and j and k in\n// the case of montcurve) together with a generator (`gen`) in the corresponding coordinate system.\n// For example, the Baby Jubjub curve configuration as defined in ERC-2494 may be instantiated as a Twisted\n// Edwards curve in affine coordinates as follows:\n//\n// `let bjj_affine = tecurve::Curve::new(168700, 168696, tecurve::Point::new(995203441582195749578291179787384436505546430278305826713579947235728471134,5472060717959818805561601436314318772137091100104008585924551046643952123905));`\n//\n// The `contains` method may be used to check whether a Point lies on a given curve:\n//\n// `constrain bjj_affine.contains(tecurve::Point::zero());`\n//\n// The elliptic curve group's addition operation is exposed as the `add` method, e.g.\n//\n// `let p = bjj_affine.add(bjj_affine.gen, bjj_affine.gen);`\n//\n// subtraction as the `subtract` method, e.g.\n//\n// `constrain tecurve::Point::zero().eq(bjj_affine.subtract(bjj_affine.gen, bjj_affine.gen));`\n//\n// scalar multiplication as the `mul` method, where the scalar is assumed to be a Field* element, e.g.\n//\n// `constrain tecurve::Point::zero().eq(bjj_affine.mul(2, tecurve::Point::zero());`\n//\n// There is a scalar multiplication method (`bit_mul`) provided where the scalar input is expected to be\n// an array of bits (little-endian convention), as well as a multi-scalar multiplication method** (`msm`)\n// which takes an array of Field elements and an array of elliptic curve points as arguments, both assumed\n// to be of the same length.\n//\n// Curve configurations may be converted between different coordinate representations by calling the `into_group`\n// and `into_affine` methods on them, e.g.\n//\n// `let bjj_curvegroup = bjj_affine.into_group();`\n//\n// Curve configurations may also be converted between different curve representations by calling the `into_swcurve`,\n// `into_montcurve` and `into_tecurve` methods subject to the relation between the curve representations mentioned\n// above. Note that it is possible to map Points from a Twisted Edwards/Montgomery curve to the corresponding\n// Short Weierstrass representation and back, and the methods to do so are exposed as `map_into_swcurve` and\n// `map_from_swcurve`, which each take one argument, the point to be mapped.\n//\n// Curve maps\n// ==========\n// There are a few different ways of mapping Field elements to elliptic curves. Here we provide the simplified\n// Shallue-van de Woestijne-Ulas and Elligator 2 methods, the former being applicable to all curve types\n// provided above subject to the constraint that the coefficients of the corresponding Short Weierstrass curve satisfies\n// a*b != 0 and the latter being applicable to Montgomery and Twisted Edwards curves subject to the constraint that\n// the coefficients of the corresponding Montgomery curve satisfy j*k != 0 and (j^2 - 4)/k^2 is non-square.\n//\n// The simplified Shallue-van de Woestijne-Ulas method is exposed as the method `swu_map` on the Curve configuration and\n// depends on two parameters, a Field element z != -1 for which g(x) - z is irreducible over Field and g(b/(z*a)) is\n// square, where g(x) = x^3 + a*x + b is the right-hand side of the defining equation of the corresponding Short\n// Weierstrass curve, and a Field element u to be mapped onto the curve. For example, in the case of bjj_affine above,\n// it may be determined using the scripts provided at <https://github.com/cfrg/draft-irtf-cfrg-hash-to-curve> that z = 5.\n//\n// The Elligator 2 method is exposed as the method `elligator2_map` on the Curve configurations of Montgomery and\n// Twisted Edwards curves. Like the simplified SWU method above, it depends on a certain non-square element of Field,\n// but this element need not satisfy any further conditions, so it is included as the (Field-dependent) constant\n//`ZETA` below. Thus, the `elligator2_map` method depends only on one parameter, the Field element to be mapped onto\n// the curve.\n//\n// For details on all of the above in the context of hashing to elliptic curves, see <https://datatracker.ietf.org/doc/id/draft-irtf-cfrg-hash-to-curve-06.html>.\n//\n//\n// *TODO: Replace Field with Bigint.\n// **TODO: Support arrays of structs to make this work.\n// Field-dependent constant ZETA = a non-square element of Field\n// Required for Elligator 2 map\n// TODO: Replace with built-in constant.\nglobal ZETA: Field = 5;\n// Field-dependent constants for Tonelli-Shanks algorithm (see sqrt function below)\n// TODO: Possibly make this built-in.\nglobal C1: u32 = 28;\nglobal C3: Field = 40770029410420498293352137776570907027550720424234931066070132305055;\nglobal C5: Field = 19103219067921713944291392827692070036145651957329286315305642004821462161904;\n// Higher-order version of scalar multiplication\n// TODO: Make this work so that the submodules' bit_mul may be defined in terms of it.\n//fn bit_mul<T,N>(add: fn(T,T) -> T, e: T, bits: [u1; N], p: T) -> T {\n// let mut out = e;\n// let n = bits.len();\n//\n// for i in 0..n {\n// out = add(\n// add(out, out),\n// if(bits[n - i - 1] == 0) {e} else {p});\n// }\n//\n// out\n//}\n// TODO: Make this built-in.\npub fn safe_inverse(x: Field) -> Field {\n if x == 0 {\n 0\n } else {\n 1 / x\n }\n}\n// Boolean indicating whether Field element is a square, i.e. whether there exists a y in Field s.t. x = y*y.\npub fn is_square(x: Field) -> bool {\n let v = pow(x, 0 - 1 / 2);\n\n v * (v - 1) == 0\n}\n// Power function of two Field arguments of arbitrary size.\n// Adapted from std::field::pow_32.\npub fn pow(x: Field, y: Field) -> Field {\n let mut r = 1 as Field;\n let b: [u1; 254] = y.to_le_bits();\n\n for i in 0..254 {\n r *= r;\n r *= (b[254 - 1 - i] as Field) * x + (1 - b[254 - 1 - i] as Field);\n }\n\n r\n}\n// Tonelli-Shanks algorithm for computing the square root of a Field element.\n// Requires C1 = max{c: 2^c divides (p-1)}, where p is the order of Field\n// as well as C3 = (C2 - 1)/2, where C2 = (p-1)/(2^c1),\n// and C5 = ZETA^C2, where ZETA is a non-square element of Field.\n// These are pre-computed above as globals.\npub fn sqrt(x: Field) -> Field {\n let mut z = pow(x, C3);\n let mut t = z * z * x;\n z *= x;\n let mut b = t;\n let mut c = C5;\n\n for i in 0..(C1 - 1) {\n for _j in 1..(C1 - i - 1) {\n b *= b;\n }\n\n z *= if b == 1 { 1 } else { c };\n\n c *= c;\n\n t *= if b == 1 { 1 } else { c };\n\n b = t;\n }\n\n z\n}\n\nmod tests {\n use crate::montcurve::affine::Point as MGaffine;\n use crate::montcurve::curvegroup::Point as MG;\n use crate::swcurve::affine::Point as SWGaffine;\n use crate::swcurve::curvegroup::Point as SWG;\n use crate::tecurve::affine::Curve as AffineCurve;\n use crate::tecurve::affine::Point as Gaffine;\n use crate::tecurve::curvegroup::Point as G;\n\n #[test]\n fn smoke_test() {\n // Tests may be checked against https://github.com/cfrg/draft-irtf-cfrg-hash-to-curve/tree/main/poc\n // Define Baby Jubjub (ERC-2494) parameters in affine representation\n let bjj_affine = AffineCurve::new(\n 168700,\n 168696,\n Gaffine::new(\n 995203441582195749578291179787384436505546430278305826713579947235728471134,\n 5472060717959818805561601436314318772137091100104008585924551046643952123905,\n ),\n );\n // Test addition\n let p1_affine = Gaffine::new(\n 17777552123799933955779906779655732241715742912184938656739573121738514868268,\n 2626589144620713026669568689430873010625803728049924121243784502389097019475,\n );\n let p2_affine = Gaffine::new(\n 16540640123574156134436876038791482806971768689494387082833631921987005038935,\n 20819045374670962167435360035096875258406992893633759881276124905556507972311,\n );\n\n let p3_affine = bjj_affine.add(p1_affine, p2_affine);\n assert(p3_affine.eq(Gaffine::new(\n 7916061937171219682591368294088513039687205273691143098332585753343424131937,\n 14035240266687799601661095864649209771790948434046947201833777492504781204499,\n )));\n // Test scalar multiplication\n let p4_affine = bjj_affine.mul(2, p1_affine);\n assert(p4_affine.eq(Gaffine::new(\n 6890855772600357754907169075114257697580319025794532037257385534741338397365,\n 4338620300185947561074059802482547481416142213883829469920100239455078257889,\n )));\n assert(p4_affine.eq(bjj_affine.bit_mul([0, 1], p1_affine)));\n // Test subtraction\n let p5_affine = bjj_affine.subtract(p3_affine, p3_affine);\n assert(p5_affine.eq(Gaffine::zero()));\n // Check that these points are on the curve\n assert(\n bjj_affine.contains(bjj_affine.gen)\n & bjj_affine.contains(p1_affine)\n & bjj_affine.contains(p2_affine)\n & bjj_affine.contains(p3_affine)\n & bjj_affine.contains(p4_affine)\n & bjj_affine.contains(p5_affine),\n );\n // Test CurveGroup equivalents\n let bjj = bjj_affine.into_group(); // Baby Jubjub\n let p1 = p1_affine.into_group();\n let p2 = p2_affine.into_group();\n let p3 = p3_affine.into_group();\n let p4 = p4_affine.into_group();\n let p5 = p5_affine.into_group();\n // Test addition\n assert(p3.eq(bjj.add(p1, p2)));\n // Test scalar multiplication\n assert(p4.eq(bjj.mul(2, p1)));\n assert(p4.eq(bjj.bit_mul([0, 1], p1)));\n // Test subtraction\n assert(G::zero().eq(bjj.subtract(p3, p3)));\n assert(p5.eq(G::zero()));\n // Check that these points are on the curve\n assert(\n bjj.contains(bjj.gen)\n & bjj.contains(p1)\n & bjj.contains(p2)\n & bjj.contains(p3)\n & bjj.contains(p4)\n & bjj.contains(p5),\n );\n // Test SWCurve equivalents of the above\n // First the affine representation\n let bjj_swcurve_affine = bjj_affine.into_swcurve();\n\n let p1_swcurve_affine = bjj_affine.map_into_swcurve(p1_affine);\n let p2_swcurve_affine = bjj_affine.map_into_swcurve(p2_affine);\n let p3_swcurve_affine = bjj_affine.map_into_swcurve(p3_affine);\n let p4_swcurve_affine = bjj_affine.map_into_swcurve(p4_affine);\n let p5_swcurve_affine = bjj_affine.map_into_swcurve(p5_affine);\n // Addition\n assert(p3_swcurve_affine.eq(bjj_swcurve_affine.add(p1_swcurve_affine, p2_swcurve_affine)));\n // Doubling\n assert(p4_swcurve_affine.eq(bjj_swcurve_affine.mul(2, p1_swcurve_affine)));\n assert(p4_swcurve_affine.eq(bjj_swcurve_affine.bit_mul([0, 1], p1_swcurve_affine)));\n // Subtraction\n assert(SWGaffine::zero().eq(bjj_swcurve_affine.subtract(\n p3_swcurve_affine,\n p3_swcurve_affine,\n )));\n assert(p5_swcurve_affine.eq(SWGaffine::zero()));\n // Check that these points are on the curve\n assert(\n bjj_swcurve_affine.contains(bjj_swcurve_affine.gen)\n & bjj_swcurve_affine.contains(p1_swcurve_affine)\n & bjj_swcurve_affine.contains(p2_swcurve_affine)\n & bjj_swcurve_affine.contains(p3_swcurve_affine)\n & bjj_swcurve_affine.contains(p4_swcurve_affine)\n & bjj_swcurve_affine.contains(p5_swcurve_affine),\n );\n // Then the CurveGroup representation\n let bjj_swcurve = bjj.into_swcurve();\n\n let p1_swcurve = bjj.map_into_swcurve(p1);\n let p2_swcurve = bjj.map_into_swcurve(p2);\n let p3_swcurve = bjj.map_into_swcurve(p3);\n let p4_swcurve = bjj.map_into_swcurve(p4);\n let p5_swcurve = bjj.map_into_swcurve(p5);\n // Addition\n assert(p3_swcurve.eq(bjj_swcurve.add(p1_swcurve, p2_swcurve)));\n // Doubling\n assert(p4_swcurve.eq(bjj_swcurve.mul(2, p1_swcurve)));\n assert(p4_swcurve.eq(bjj_swcurve.bit_mul([0, 1], p1_swcurve)));\n // Subtraction\n assert(SWG::zero().eq(bjj_swcurve.subtract(p3_swcurve, p3_swcurve)));\n assert(p5_swcurve.eq(SWG::zero()));\n // Check that these points are on the curve\n assert(\n bjj_swcurve.contains(bjj_swcurve.gen)\n & bjj_swcurve.contains(p1_swcurve)\n & bjj_swcurve.contains(p2_swcurve)\n & bjj_swcurve.contains(p3_swcurve)\n & bjj_swcurve.contains(p4_swcurve)\n & bjj_swcurve.contains(p5_swcurve),\n );\n // Test MontCurve conversions\n // First the affine representation\n let bjj_montcurve_affine = bjj_affine.into_montcurve();\n\n let p1_montcurve_affine = p1_affine.into_montcurve();\n let p2_montcurve_affine = p2_affine.into_montcurve();\n let p3_montcurve_affine = p3_affine.into_montcurve();\n let p4_montcurve_affine = p4_affine.into_montcurve();\n let p5_montcurve_affine = p5_affine.into_montcurve();\n // Addition\n assert(p3_montcurve_affine.eq(bjj_montcurve_affine.add(\n p1_montcurve_affine,\n p2_montcurve_affine,\n )));\n // Doubling\n assert(p4_montcurve_affine.eq(bjj_montcurve_affine.mul(2, p1_montcurve_affine)));\n assert(p4_montcurve_affine.eq(bjj_montcurve_affine.bit_mul([0, 1], p1_montcurve_affine)));\n // Subtraction\n assert(MGaffine::zero().eq(bjj_montcurve_affine.subtract(\n p3_montcurve_affine,\n p3_montcurve_affine,\n )));\n assert(p5_montcurve_affine.eq(MGaffine::zero()));\n // Check that these points are on the curve\n assert(\n bjj_montcurve_affine.contains(bjj_montcurve_affine.gen)\n & bjj_montcurve_affine.contains(p1_montcurve_affine)\n & bjj_montcurve_affine.contains(p2_montcurve_affine)\n & bjj_montcurve_affine.contains(p3_montcurve_affine)\n & bjj_montcurve_affine.contains(p4_montcurve_affine)\n & bjj_montcurve_affine.contains(p5_montcurve_affine),\n );\n // Then the CurveGroup representation\n let bjj_montcurve = bjj.into_montcurve();\n\n let p1_montcurve = p1_montcurve_affine.into_group();\n let p2_montcurve = p2_montcurve_affine.into_group();\n let p3_montcurve = p3_montcurve_affine.into_group();\n let p4_montcurve = p4_montcurve_affine.into_group();\n let p5_montcurve = p5_montcurve_affine.into_group();\n // Addition\n assert(p3_montcurve.eq(bjj_montcurve.add(p1_montcurve, p2_montcurve)));\n // Doubling\n assert(p4_montcurve.eq(bjj_montcurve.mul(2, p1_montcurve)));\n assert(p4_montcurve.eq(bjj_montcurve.bit_mul([0, 1], p1_montcurve)));\n // Subtraction\n assert(MG::zero().eq(bjj_montcurve.subtract(p3_montcurve, p3_montcurve)));\n assert(p5_montcurve.eq(MG::zero()));\n // Check that these points are on the curve\n assert(\n bjj_montcurve.contains(bjj_montcurve.gen)\n & bjj_montcurve.contains(p1_montcurve)\n & bjj_montcurve.contains(p2_montcurve)\n & bjj_montcurve.contains(p3_montcurve)\n & bjj_montcurve.contains(p4_montcurve)\n & bjj_montcurve.contains(p5_montcurve),\n );\n // Elligator 2 map-to-curve\n let ell2_pt_map = bjj_affine.elligator2_map(27);\n\n assert(ell2_pt_map.eq(MGaffine::new(\n 7972459279704486422145701269802978968072470631857513331988813812334797879121,\n 8142420778878030219043334189293412482212146646099536952861607542822144507872,\n )\n .into_tecurve()));\n // SWU map-to-curve\n let swu_pt_map = bjj_affine.swu_map(5, 27);\n\n assert(swu_pt_map.eq(bjj_affine.map_from_swcurve(SWGaffine::new(\n 2162719247815120009132293839392097468339661471129795280520343931405114293888,\n 5341392251743377373758788728206293080122949448990104760111875914082289313973,\n ))));\n }\n\n}\n"
|
|
6033
6033
|
},
|
|
6034
|
-
"
|
|
6034
|
+
"344": {
|
|
6035
6035
|
"path": "/root/nargo/github.com/noir-lang/sha256/v0.1.0/src/sha256.nr",
|
|
6036
6036
|
"source": "use std::hash::sha256_compression;\nuse std::runtime::is_unconstrained;\n\nmod tests;\n\n// Implementation of SHA-256 mapping a byte array of variable length to\n// 32 bytes.\n\n// A message block is up to 64 bytes taken from the input.\nglobal BLOCK_SIZE: u32 = 64;\n\n// The first index in the block where the 8 byte message size will be written.\nglobal MSG_SIZE_PTR: u32 = 56;\n\n// Size of the message block when packed as 4-byte integer array.\nglobal INT_BLOCK_SIZE: u32 = 16;\n\n// A `u32` integer consists of 4 bytes.\nglobal INT_SIZE: u32 = 4;\n\n// Index of the integer in the `INT_BLOCK` where the length is written.\nglobal INT_SIZE_PTR: u32 = MSG_SIZE_PTR / INT_SIZE;\n\n// Magic numbers for bit shifting.\n// Works with actual bit shifting as well as the compiler turns them into * and /\n// but circuit execution appears to be 10% faster this way.\nglobal TWO_POW_8: u32 = 256;\nglobal TWO_POW_16: u32 = TWO_POW_8 * 256;\nglobal TWO_POW_24: u32 = TWO_POW_16 * 256;\nglobal TWO_POW_32: u64 = TWO_POW_24 as u64 * 256;\n\n// Index of a byte in a 64 byte block; ie. 0..=63\ntype BLOCK_BYTE_PTR = u32;\n\n// The foreign function to compress blocks works on 16 pieces of 4-byte integers, instead of 64 bytes.\ntype INT_BLOCK = [u32; INT_BLOCK_SIZE];\n\n// A message block is a slice of the original message of a fixed size,\n// potentially padded with zeros, with neighbouring 4 bytes packed into integers.\ntype MSG_BLOCK = INT_BLOCK;\n\n// The hash is 32 bytes.\ntype HASH = [u8; 32];\n\n// The state accumulates the blocks.\n// Its overall size is the same as the `HASH`.\ntype STATE = [u32; 8];\n\n// Deprecated in favour of `sha256_var`\n// docs:start:sha256\npub fn sha256<let N: u32>(input: [u8; N]) -> HASH\n// docs:end:sha256\n{\n digest(input)\n}\n\n// SHA-256 hash function\n#[no_predicates]\npub fn digest<let N: u32>(msg: [u8; N]) -> HASH {\n sha256_var(msg, N as u64)\n}\n\n// Variable size SHA-256 hash\npub fn sha256_var<let N: u32>(msg: [u8; N], message_size: u64) -> HASH {\n let message_size = message_size as u32;\n let num_blocks = N / BLOCK_SIZE;\n let mut msg_block: MSG_BLOCK = [0; INT_BLOCK_SIZE];\n // Intermediate hash, starting with the canonical initial value\n let mut h: STATE = [\n 1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, 528734635,\n 1541459225,\n ];\n // Pointer into msg_block on a 64 byte scale\n let mut msg_byte_ptr = 0;\n for i in 0..num_blocks {\n let msg_start = BLOCK_SIZE * i;\n let (new_msg_block, new_msg_byte_ptr) =\n unsafe { build_msg_block(msg, message_size, msg_start) };\n\n if msg_start < message_size {\n msg_block = new_msg_block;\n }\n\n if !is_unconstrained() {\n // Verify the block we are compressing was appropriately constructed\n let new_msg_byte_ptr = verify_msg_block(msg, message_size, msg_block, msg_start);\n if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n }\n } else if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n }\n\n // If the block is filled, compress it.\n // An un-filled block is handled after this loop.\n if (msg_start < message_size) & (msg_byte_ptr == BLOCK_SIZE) {\n h = sha256_compression(msg_block, h);\n }\n }\n\n let modulo = N % BLOCK_SIZE;\n // Handle setup of the final msg block.\n // This case is only hit if the msg is less than the block size,\n // or our message cannot be evenly split into blocks.\n if modulo != 0 {\n let msg_start = BLOCK_SIZE * num_blocks;\n let (new_msg_block, new_msg_byte_ptr) =\n unsafe { build_msg_block(msg, message_size, msg_start) };\n\n if msg_start < message_size {\n msg_block = new_msg_block;\n }\n\n if !is_unconstrained() {\n let new_msg_byte_ptr = verify_msg_block(msg, message_size, msg_block, msg_start);\n if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n verify_msg_block_padding(msg_block, msg_byte_ptr);\n }\n } else if msg_start < message_size {\n msg_byte_ptr = new_msg_byte_ptr;\n }\n }\n\n // If we had modulo == 0 then it means the last block was full,\n // and we can reset the pointer to zero to overwrite it.\n if msg_byte_ptr == BLOCK_SIZE {\n msg_byte_ptr = 0;\n }\n\n // Pad the rest such that we have a [u32; 2] block at the end representing the length\n // of the message, and a block of 1 0 ... 0 following the message (i.e. [1 << 7, 0, ..., 0]).\n // Here we rely on the fact that everything beyond the available input is set to 0.\n msg_block = update_block_item(\n msg_block,\n msg_byte_ptr,\n |msg_item| set_item_byte_then_zeros(msg_item, msg_byte_ptr, 1 << 7),\n );\n msg_byte_ptr = msg_byte_ptr + 1;\n let last_block = msg_block;\n\n // If we don't have room to write the size, compress the block and reset it.\n if msg_byte_ptr > MSG_SIZE_PTR {\n h = sha256_compression(msg_block, h);\n // `attach_len_to_msg_block` will zero out everything after the `msg_byte_ptr`.\n msg_byte_ptr = 0;\n }\n\n msg_block = unsafe { attach_len_to_msg_block(msg_block, msg_byte_ptr, message_size) };\n\n if !is_unconstrained() {\n verify_msg_len(msg_block, last_block, msg_byte_ptr, message_size);\n }\n\n hash_final_block(msg_block, h)\n}\n\n// Take `BLOCK_SIZE` number of bytes from `msg` starting at `msg_start`.\n// Returns the block and the length that has been copied rather than padded with zeros.\nunconstrained fn build_msg_block<let N: u32>(\n msg: [u8; N],\n message_size: u32,\n msg_start: u32,\n) -> (MSG_BLOCK, BLOCK_BYTE_PTR) {\n let mut msg_block: MSG_BLOCK = [0; INT_BLOCK_SIZE];\n\n // We insert `BLOCK_SIZE` bytes (or up to the end of the message)\n let block_input = if msg_start + BLOCK_SIZE > message_size {\n if message_size < msg_start {\n // This function is sometimes called with `msg_start` past the end of the message.\n // In this case we return an empty block and zero pointer to signal that the result should be ignored.\n 0\n } else {\n message_size - msg_start\n }\n } else {\n BLOCK_SIZE\n };\n\n // Figure out the number of items in the int array that we have to pack.\n // e.g. if the input is [0,1,2,3,4,5] then we need to pack it as 2 items: [0123, 4500]\n let mut int_input = block_input / INT_SIZE;\n if block_input % INT_SIZE != 0 {\n int_input = int_input + 1;\n };\n\n for i in 0..int_input {\n let mut msg_item: u32 = 0;\n // Always construct the integer as 4 bytes, even if it means going beyond the input.\n for j in 0..INT_SIZE {\n let k = i * INT_SIZE + j;\n let msg_byte = if k < block_input {\n msg[msg_start + k]\n } else {\n 0\n };\n msg_item = lshift8(msg_item, 1) + msg_byte as u32;\n }\n msg_block[i] = msg_item;\n }\n\n // Returning the index as if it was a 64 byte array.\n // We have to project it down to 16 items and bit shifting to get a byte back if we need it.\n (msg_block, block_input)\n}\n\n// Verify the block we are compressing was appropriately constructed by `build_msg_block`\n// and matches the input data. Returns the index of the first unset item.\n// If `message_size` is less than `msg_start` then this is called with the old non-empty block;\n// in that case we can skip verification, ie. no need to check that everything is zero.\nfn verify_msg_block<let N: u32>(\n msg: [u8; N],\n message_size: u32,\n msg_block: MSG_BLOCK,\n msg_start: u32,\n) -> BLOCK_BYTE_PTR {\n let mut msg_byte_ptr = 0;\n let mut msg_end = msg_start + BLOCK_SIZE;\n if msg_end > N {\n msg_end = N;\n }\n // We might have to go beyond the input to pad the fields.\n if msg_end % INT_SIZE != 0 {\n msg_end = msg_end + INT_SIZE - msg_end % INT_SIZE;\n }\n\n // Reconstructed packed item.\n let mut msg_item: u32 = 0;\n\n // Inclusive at the end so that we can compare the last item.\n let mut i: u32 = 0;\n for k in msg_start..=msg_end {\n if k % INT_SIZE == 0 {\n // If we consumed some input we can compare against the block.\n if (msg_start < message_size) & (k > msg_start) {\n assert_eq(msg_block[i], msg_item as u32);\n i = i + 1;\n msg_item = 0;\n }\n }\n // Shift the accumulator\n msg_item = lshift8(msg_item, 1);\n // If we have input to consume, add it at the rightmost position.\n if k < message_size & k < msg_end {\n msg_item = msg_item + msg[k] as u32;\n msg_byte_ptr = msg_byte_ptr + 1;\n }\n }\n\n msg_byte_ptr\n}\n\n// Verify the block we are compressing was appropriately padded with zeros by `build_msg_block`.\n// This is only relevant for the last, potentially partially filled block.\nfn verify_msg_block_padding(msg_block: MSG_BLOCK, msg_byte_ptr: BLOCK_BYTE_PTR) {\n // Check all the way to the end of the block.\n verify_msg_block_zeros(msg_block, msg_byte_ptr, INT_BLOCK_SIZE);\n}\n\n// Verify that a region of ints in the message block are (partially) zeroed,\n// up to an (exclusive) maximum which can either be the end of the block\n// or just where the size is to be written.\nfn verify_msg_block_zeros(\n msg_block: MSG_BLOCK,\n mut msg_byte_ptr: BLOCK_BYTE_PTR,\n max_int_byte_ptr: u32,\n) {\n // This variable is used to get around the compiler under-constrained check giving a warning.\n // We want to check against a constant zero, but if it does not come from the circuit inputs\n // or return values the compiler check will issue a warning.\n let zero = msg_block[0] - msg_block[0];\n\n // First integer which is supposed to be (partially) zero.\n let mut int_byte_ptr = msg_byte_ptr / INT_SIZE;\n\n // Check partial zeros.\n let modulo = msg_byte_ptr % INT_SIZE;\n if modulo != 0 {\n let zeros = INT_SIZE - modulo;\n let mask = if zeros == 3 {\n TWO_POW_24\n } else if zeros == 2 {\n TWO_POW_16\n } else {\n TWO_POW_8\n };\n assert_eq(msg_block[int_byte_ptr] % mask, zero);\n int_byte_ptr = int_byte_ptr + 1;\n }\n\n // Check the rest of the items.\n for i in 0..max_int_byte_ptr {\n if i >= int_byte_ptr {\n assert_eq(msg_block[i], zero);\n }\n }\n}\n\n// Verify that up to the byte pointer the two blocks are equal.\n// At the byte pointer the new block can be partially zeroed.\nfn verify_msg_block_equals_last(\n msg_block: MSG_BLOCK,\n last_block: MSG_BLOCK,\n mut msg_byte_ptr: BLOCK_BYTE_PTR,\n) {\n // msg_byte_ptr is the position at which they are no longer have to be the same.\n // First integer which is supposed to be (partially) zero contains that pointer.\n let mut int_byte_ptr = msg_byte_ptr / INT_SIZE;\n\n // Check partial zeros.\n let modulo = msg_byte_ptr % INT_SIZE;\n if modulo != 0 {\n // Reconstruct the partially zero item from the last block.\n let last_field = last_block[int_byte_ptr];\n let mut msg_item: u32 = 0;\n // Reset to where they are still equal.\n msg_byte_ptr = msg_byte_ptr - modulo;\n for i in 0..INT_SIZE {\n msg_item = lshift8(msg_item, 1);\n if i < modulo {\n msg_item = msg_item + get_item_byte(last_field, msg_byte_ptr) as u32;\n msg_byte_ptr = msg_byte_ptr + 1;\n }\n }\n assert_eq(msg_block[int_byte_ptr], msg_item);\n }\n\n for i in 0..INT_SIZE_PTR {\n if i < int_byte_ptr {\n assert_eq(msg_block[i], last_block[i]);\n }\n }\n}\n\n// Apply a function on the block item which the pointer indicates.\nfn update_block_item<Env>(\n mut msg_block: MSG_BLOCK,\n msg_byte_ptr: BLOCK_BYTE_PTR,\n f: fn[Env](u32) -> u32,\n) -> MSG_BLOCK {\n let i = msg_byte_ptr / INT_SIZE;\n msg_block[i] = f(msg_block[i]);\n msg_block\n}\n\n// Set the rightmost `zeros` number of bytes to 0.\nfn set_item_zeros(item: u32, zeros: u8) -> u32 {\n lshift8(rshift8(item, zeros), zeros)\n}\n\n// Replace one byte in the item with a value, and set everything after it to zero.\nfn set_item_byte_then_zeros(msg_item: u32, msg_byte_ptr: BLOCK_BYTE_PTR, msg_byte: u8) -> u32 {\n let zeros = INT_SIZE - msg_byte_ptr % INT_SIZE;\n let zeroed_item = set_item_zeros(msg_item, zeros as u8);\n let new_item = byte_into_item(msg_byte, msg_byte_ptr);\n zeroed_item + new_item\n}\n\n// Get a byte of a message item according to its overall position in the `BLOCK_SIZE` space.\nfn get_item_byte(mut msg_item: u32, msg_byte_ptr: BLOCK_BYTE_PTR) -> u8 {\n // How many times do we have to shift to the right to get to the position we want?\n let max_shifts = INT_SIZE - 1;\n let shifts = max_shifts - msg_byte_ptr % INT_SIZE;\n msg_item = rshift8(msg_item, shifts as u8);\n // At this point the byte we want is in the rightmost position.\n msg_item as u8\n}\n\n// Project a byte into a position in a field based on the overall block pointer.\n// For example putting 1 into pointer 5 would be 100, because overall we would\n// have [____, 0100] with indexes [0123,4567].\nfn byte_into_item(msg_byte: u8, msg_byte_ptr: BLOCK_BYTE_PTR) -> u32 {\n let mut msg_item = msg_byte as u32;\n // How many times do we have to shift to the left to get to the position we want?\n let max_shifts = INT_SIZE - 1;\n let shifts = max_shifts - msg_byte_ptr % INT_SIZE;\n lshift8(msg_item, shifts as u8)\n}\n\n// Construct a field out of 4 bytes.\nfn make_item(b0: u8, b1: u8, b2: u8, b3: u8) -> u32 {\n let mut item = b0 as u32;\n item = lshift8(item, 1) + b1 as u32;\n item = lshift8(item, 1) + b2 as u32;\n item = lshift8(item, 1) + b3 as u32;\n item\n}\n\n// Shift by 8 bits to the left between 0 and 4 times.\n// Checks `is_unconstrained()` to just use a bitshift if we're running in an unconstrained context,\n// otherwise multiplies by 256.\nfn lshift8(item: u32, shifts: u8) -> u32 {\n if is_unconstrained() {\n if item == 0 {\n 0\n } else {\n // Brillig wouldn't shift 0<<4 without overflow.\n item << (8 * shifts)\n }\n } else {\n // We can do a for loop up to INT_SIZE or an if-else.\n if shifts == 0 {\n item\n } else if shifts == 1 {\n item * TWO_POW_8\n } else if shifts == 2 {\n item * TWO_POW_16\n } else if shifts == 3 {\n item * TWO_POW_24\n } else {\n // Doesn't make sense, but it's most likely called on 0 anyway.\n 0\n }\n }\n}\n\n// Shift by 8 bits to the right between 0 and 4 times.\n// Checks `is_unconstrained()` to just use a bitshift if we're running in an unconstrained context,\n// otherwise divides by 256.\nfn rshift8(item: u32, shifts: u8) -> u32 {\n if is_unconstrained() {\n item >> (8 * shifts)\n } else {\n // Division wouldn't work on `Field`.\n if shifts == 0 {\n item\n } else if shifts == 1 {\n item / TWO_POW_8\n } else if shifts == 2 {\n item / TWO_POW_16\n } else if shifts == 3 {\n item / TWO_POW_24\n } else {\n 0\n }\n }\n}\n\n// Zero out all bytes between the end of the message and where the length is appended,\n// then write the length into the last 8 bytes of the block.\nunconstrained fn attach_len_to_msg_block(\n mut msg_block: MSG_BLOCK,\n mut msg_byte_ptr: BLOCK_BYTE_PTR,\n message_size: u32,\n) -> MSG_BLOCK {\n // We assume that `msg_byte_ptr` is less than 57 because if not then it is reset to zero before calling this function.\n // In any case, fill blocks up with zeros until the last 64 bits (i.e. until msg_byte_ptr = 56).\n // There can be one item which has to be partially zeroed.\n let modulo = msg_byte_ptr % INT_SIZE;\n if modulo != 0 {\n // Index of the block in which we find the item we need to partially zero.\n let i = msg_byte_ptr / INT_SIZE;\n let zeros = INT_SIZE - modulo;\n msg_block[i] = set_item_zeros(msg_block[i], zeros as u8);\n msg_byte_ptr = msg_byte_ptr + zeros;\n }\n\n // The rest can be zeroed without bit shifting anything.\n for i in (msg_byte_ptr / INT_SIZE)..INT_SIZE_PTR {\n msg_block[i] = 0;\n }\n\n // Set the last two 4 byte ints as the first/second half of the 8 bytes of the length.\n let len = 8 * message_size;\n let len_bytes: [u8; 8] = (len as Field).to_be_bytes();\n for i in 0..=1 {\n let shift = i * 4;\n msg_block[INT_SIZE_PTR + i] = make_item(\n len_bytes[shift],\n len_bytes[shift + 1],\n len_bytes[shift + 2],\n len_bytes[shift + 3],\n );\n }\n msg_block\n}\n\n// Verify that the message length was correctly written by `attach_len_to_msg_block`,\n// and that everything between the byte pointer and the size pointer was zeroed,\n// and that everything before the byte pointer was untouched.\nfn verify_msg_len(\n msg_block: MSG_BLOCK,\n last_block: MSG_BLOCK,\n msg_byte_ptr: BLOCK_BYTE_PTR,\n message_size: u32,\n) {\n // Check zeros up to the size pointer.\n verify_msg_block_zeros(msg_block, msg_byte_ptr, INT_SIZE_PTR);\n\n // Check that up to the pointer we match the last block.\n verify_msg_block_equals_last(msg_block, last_block, msg_byte_ptr);\n\n // We verify the message length was inserted correctly by reversing the byte decomposition.\n let mut reconstructed_len: u64 = 0;\n for i in INT_SIZE_PTR..INT_BLOCK_SIZE {\n reconstructed_len = reconstructed_len * TWO_POW_32;\n reconstructed_len = reconstructed_len + msg_block[i] as u64;\n }\n let len = 8 * message_size as u64;\n assert_eq(reconstructed_len, len);\n}\n\n// Perform the final compression, then transform the `STATE` into `HASH`.\nfn hash_final_block(msg_block: MSG_BLOCK, mut state: STATE) -> HASH {\n let mut out_h: HASH = [0; 32]; // Digest as sequence of bytes\n // Hash final padded block\n state = sha256_compression(msg_block, state);\n\n // Return final hash as byte array\n for j in 0..8 {\n let h_bytes: [u8; 4] = (state[j] as Field).to_be_bytes();\n for k in 0..4 {\n out_h[4 * j + k] = h_bytes[k];\n }\n }\n\n out_h\n}\n\n"
|
|
6037
6037
|
},
|
|
6038
|
-
"
|
|
6038
|
+
"345": {
|
|
6039
6039
|
"path": "/build-volume/noir-projects/noir-contracts/contracts/ecdsa_public_key_note/src/lib.nr",
|
|
6040
6040
|
"source": "use dep::aztec::prelude::{NoteHeader, NoteInterface, NullifiableNote, PrivateContext};\n\nuse dep::aztec::{\n note::utils::compute_note_hash_for_nullify, keys::getters::{get_nsk_app, get_public_keys},\n protocol_types::{address::AztecAddress, constants::GENERATOR_INDEX__NOTE_NULLIFIER, hash::poseidon2_hash_with_separator},\n macros::notes::note_custom_interface, generators::Ga1 as Gx_1, generators::Ga2 as Gx_2,\n generators::Ga3 as Gy_1, generators::Ga4 as Gy_2, generators::Ga5 as G_owner, generators::G_slot\n};\n\nuse std::hash::from_field_unsafe;\n\nglobal ECDSA_PUBLIC_KEY_NOTE_LEN: u32 = 5;\n\n// Stores an ECDSA public key composed of two 32-byte elements\n// TODO: Do we need to include a nonce, in case we want to read/nullify/recreate with the same pubkey value?\n#[note_custom_interface]\npub struct EcdsaPublicKeyNote {\n x: [u8; 32],\n y: [u8; 32],\n owner: AztecAddress,\n}\n\nimpl NoteInterface<ECDSA_PUBLIC_KEY_NOTE_LEN> for EcdsaPublicKeyNote {\n // Cannot use the automatic packing since x and y don't fit. Pack the note as 5 fields where:\n // [0] = x[0..31] (upper bound excluded)\n // [1] = x[31]\n // [2] = y[0..31]\n // [3] = y[31]\n // [4] = owner\n fn pack_content(self) -> [Field; ECDSA_PUBLIC_KEY_NOTE_LEN] {\n let mut x: Field = 0;\n let mut y: Field = 0;\n let mut mul: Field = 1;\n\n for i in 1..32 {\n let byte_x: Field = self.x[31 - i] as Field;\n x = x + (byte_x * mul);\n let byte_y: Field = self.y[31 - i] as Field;\n y = y + (byte_y * mul);\n mul *= 256;\n }\n\n let last_x = self.x[31] as Field;\n let last_y = self.y[31] as Field;\n\n [x, last_x, y, last_y, self.owner.to_field()]\n }\n\n // Cannot use the automatic unpacking for the aforementioned reasons\n fn unpack_content(packed_content: [Field; ECDSA_PUBLIC_KEY_NOTE_LEN]) -> EcdsaPublicKeyNote {\n let mut x: [u8; 32] = [0; 32];\n let mut y: [u8; 32] = [0; 32];\n\n let part_x:[u8; 32] = packed_content[0].to_be_bytes();\n for i in 0..31 {\n x[i] = part_x[i + 1];\n }\n x[31] = packed_content[1].to_be_bytes::<32>()[31];\n\n let part_y:[u8; 32] = packed_content[2].to_be_bytes();\n for i in 0..31 {\n y[i] = part_y[i + 1];\n }\n y[31] = packed_content[3].to_be_bytes::<32>()[31];\n\n EcdsaPublicKeyNote { x, y, owner: AztecAddress::from_field(packed_content[4]), header: NoteHeader::empty() }\n }\n\n fn get_note_type_id() -> Field {\n // randomly chosen note type id --> has to fit within 7 bits\n 76\n }\n\n fn get_header(self) -> NoteHeader {\n self.header\n }\n\n fn set_header(&mut self, header: NoteHeader) {\n self.header = header;\n }\n\n fn compute_note_hash(self) -> Field {\n let packed_content = self.pack_content();\n std::embedded_curve_ops::multi_scalar_mul(\n [Gx_1, Gx_2, Gy_1, Gy_2, G_owner, G_slot],\n [\n from_field_unsafe(packed_content[0]),\n from_field_unsafe(packed_content[1]),\n from_field_unsafe(packed_content[2]),\n from_field_unsafe(packed_content[3]),\n from_field_unsafe(packed_content[4]),\n from_field_unsafe(self.get_header().storage_slot)\n ]\n ).x\n }\n}\n\nimpl NullifiableNote for EcdsaPublicKeyNote {\n\n fn compute_nullifier(self, context: &mut PrivateContext, note_hash_for_nullify: Field) -> Field {\n let owner_npk_m_hash = get_public_keys(self.owner).npk_m.hash();\n let secret = context.request_nsk_app(owner_npk_m_hash);\n poseidon2_hash_with_separator(\n [\n note_hash_for_nullify,\n secret\n ],\n GENERATOR_INDEX__NOTE_NULLIFIER as Field\n )\n }\n\n unconstrained fn compute_nullifier_without_context(self) -> Field {\n let note_hash_for_nullify = compute_note_hash_for_nullify(self);\n let owner_npk_m_hash = get_public_keys(self.owner).npk_m.hash();\n let secret = get_nsk_app(owner_npk_m_hash);\n poseidon2_hash_with_separator(\n [\n note_hash_for_nullify,\n secret\n ],\n GENERATOR_INDEX__NOTE_NULLIFIER as Field\n )\n }\n}\n\nimpl EcdsaPublicKeyNote {\n pub fn new(x: [u8; 32], y: [u8; 32], owner: AztecAddress) -> Self {\n EcdsaPublicKeyNote { x, y, owner, header: NoteHeader::empty() }\n }\n}\n"
|
|
6041
6041
|
},
|