-
Notifications
You must be signed in to change notification settings - Fork 85
Expand file tree
/
Copy pathGroup.sol
More file actions
353 lines (333 loc) · 30.2 KB
/
Group.sol
File metadata and controls
353 lines (333 loc) · 30.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
// SPDX-License-Identifier: MIT
pragma solidity "0.8.28";
contract Group {
uint256 veryVeryVeryLongUint256A;
uint256 veryVeryVeryLongUint256B;
uint256 veryVeryVeryLongUint256C;
uint256 resultUint256;
bool veryVeryVeryLongBooleanA;
bool veryVeryVeryLongBooleanB;
bool veryVeryVeryLongBooleanC;
bool resultBoolean;
function exp() public {
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ** veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function mul() public {
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A * veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function div() public {
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A / veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function mod() public {
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A % veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function add() public {
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A + veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function sub() public {
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A - veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function shiftL() public {
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A << veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function shiftR() public {
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >> veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function bitAnd() public {
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A & veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function bitOr() public {
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A | veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function bitXor() public {
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultUint256 = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B == veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B != veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A ^ veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function equal() public {
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongUint256A == veryVeryVeryLongUint256B != veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA == veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongBooleanA == veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongBooleanA == veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongBooleanA == veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function notEqual() public {
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongUint256A != veryVeryVeryLongUint256B != veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA != veryVeryVeryLongUint256B < veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongBooleanA != veryVeryVeryLongUint256B <= veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongBooleanA != veryVeryVeryLongUint256B > veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongBooleanA != veryVeryVeryLongUint256B >= veryVeryVeryLongUint256C;
}
function lessThan() public {
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongUint256A < veryVeryVeryLongUint256B != veryVeryVeryLongBooleanC;
}
function lessThanOrEqual() public {
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongUint256A <= veryVeryVeryLongUint256B != veryVeryVeryLongBooleanC;
}
function moreThan() public {
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongUint256A > veryVeryVeryLongUint256B != veryVeryVeryLongBooleanC;
}
function moreThanOrEqual() public {
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B ** veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B * veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B / veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B % veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B + veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B - veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B << veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B >> veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B & veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B | veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B ^ veryVeryVeryLongUint256C;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongUint256A >= veryVeryVeryLongUint256B != veryVeryVeryLongBooleanC;
}
function logic() public {
resultBoolean = veryVeryVeryLongBooleanA || veryVeryVeryLongBooleanB || veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA || veryVeryVeryLongBooleanB && veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA || veryVeryVeryLongBooleanB == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA || veryVeryVeryLongBooleanB != veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA && veryVeryVeryLongBooleanB || veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA && veryVeryVeryLongBooleanB && veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA && veryVeryVeryLongBooleanB == veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA && veryVeryVeryLongBooleanB != veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA == veryVeryVeryLongBooleanB || veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA == veryVeryVeryLongBooleanB && veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA != veryVeryVeryLongBooleanB || veryVeryVeryLongBooleanC;
resultBoolean = veryVeryVeryLongBooleanA != veryVeryVeryLongBooleanB && veryVeryVeryLongBooleanC;
}
}