59 struct __declspec(dllexport) ivec2 {
67 v[1 - 1] = a; v[2 - 1] = a;
70 inline ivec2(
int v_1 ,
int v_2 )
72 v[1 - 1] = v_1; v[2 - 1] = v_2;
75 inline ivec2(
const ivec2& a)
77 v[1 - 1] = a[1 - 1]; v[2 - 1] = a[2 - 1];
80 inline ivec2& operator=(
const ivec2& a)
82 v[1 - 1] = a[1 - 1]; v[2 - 1] = a[2 - 1];
87 inline int& operator[] (
int i) {
return v[i]; }
88 inline const int& operator[] (
int i)
const {
return v[i]; }
89 inline int& operator() (
int i) {
return v[i % 2]; }
90 inline const int& operator() (
int i)
const {
return v[i % 2]; }
102 for(
int i = 0; i < 2;++i) { c[i] = a[i] + b[i]; }
109 for(
int i = 0; i < 2;++i) { c[i] = a + b[i]; }
116 for(
int i = 0; i < 2;++i) { c[i] = a[i] + b; }
125 for(
int i = 0; i < 2;++i) { c[i] = a[i] - b[i]; }
132 for(
int i = 0; i < 2;++i) { c[i] = a - b[i]; }
139 for(
int i = 0; i < 2;++i) { c[i] = a[i] - b; }
148 for(
int i = 0; i < 2;++i) { c[i] = a[i] * b[i]; }
155 for(
int i = 0; i < 2;++i) { c[i] = a * b[i]; }
162 for(
int i = 0; i < 2;++i) { c[i] = a[i] * b; }
248 for(
int i = 0; i < 2;++i) { c = c && a[i] == b[i]; }
255 for(
int i = 0; i < 2;++i) { c = c && a == b[i]; }
262 for(
int i = 0; i < 2;++i) { c = c && a[i] == b; }
271 for(
int i = 0; i < 2;++i) { c = c && a[i] < b[i]; }
278 for(
int i = 0; i < 2;++i) { c = c && a < b[i]; }
285 for(
int i = 0; i < 2;++i) { c = c && a[i] < b; }
294 for(
int i = 0; i < 2;++i) { c = c && a[i] <= b[i]; }
301 for(
int i = 0; i < 2;++i) { c = c && a <= b[i]; }
308 for(
int i = 0; i < 2;++i) { c = c && a[i] <= b; }
317 for(
int i = 0; i < 2;++i) { c = c && a[i] > b[i]; }
324 for(
int i = 0; i < 2;++i) { c = c && a > b[i]; }
331 for(
int i = 0; i < 2;++i) { c = c && a[i] > b; }
341 for(
int i = 0; i < 2;++i) { c = c && a[i] >= b[i]; }
347 for(
int i = 0; i < 2;++i) { c = c && a >= b[i]; }
354 for(
int i = 0; i < 2;++i) { c = c && a[i] >= b; }
361 for(
int i = 0; i < 2;++i) { c = c && a[i] != b[i]; }
369 for(
int i = 0; i < 2;++i) { c[i] = -a[i]; }
376 struct __declspec(dllexport) ivec3 {
384 v[1 - 1] = a; v[2 - 1] = a; v[3 - 1] = a;
387 inline ivec3(
int v_1 ,
int v_2 ,
int v_3 )
389 v[1 - 1] = v_1; v[2 - 1] = v_2; v[3 - 1] = v_3;
392 inline ivec3(
const ivec3& a)
394 v[1 - 1] = a[1 - 1]; v[2 - 1] = a[2 - 1]; v[3 - 1] = a[3 - 1];
397 inline ivec3& operator=(
const ivec3& a)
399 v[1 - 1] = a[1 - 1]; v[2 - 1] = a[2 - 1]; v[3 - 1] = a[3 - 1];
404 inline int& operator[] (
int i) {
return v[i]; }
405 inline const int& operator[] (
int i)
const {
return v[i]; }
406 inline int& operator() (
int i) {
return v[i % 3]; }
407 inline const int& operator() (
int i)
const {
return v[i % 3]; }
414 for(
int i = 0; i < 3;++i) { c[i] = a[i] + b[i]; }
421 for(
int i = 0; i < 3;++i) { c[i] = a + b[i]; }
428 for(
int i = 0; i < 3;++i) { c[i] = a[i] + b; }
437 for(
int i = 0; i < 3;++i) { c[i] = a[i] - b[i]; }
444 for(
int i = 0; i < 3;++i) { c[i] = a - b[i]; }
451 for(
int i = 0; i < 3;++i) { c[i] = a[i] - b; }
460 for(
int i = 0; i < 3;++i) { c[i] = a[i] * b[i]; }
467 for(
int i = 0; i < 3;++i) { c[i] = a * b[i]; }
474 for(
int i = 0; i < 3;++i) { c[i] = a[i] * b; }
560 for(
int i = 0; i < 3;++i) { c = c && a[i] == b[i]; }
567 for(
int i = 0; i < 3;++i) { c = c && a == b[i]; }
574 for(
int i = 0; i < 3;++i) { c = c && a[i] == b; }
583 for(
int i = 0; i < 3;++i) { c = c && a[i] < b[i]; }
590 for(
int i = 0; i < 3;++i) { c = c && a < b[i]; }
597 for(
int i = 0; i < 3;++i) { c = c && a[i] < b; }
606 for(
int i = 0; i < 3;++i) { c = c && a[i] <= b[i]; }
613 for(
int i = 0; i < 3;++i) { c = c && a <= b[i]; }
620 for(
int i = 0; i < 3;++i) { c = c && a[i] <= b; }
629 for(
int i = 0; i < 3;++i) { c = c && a[i] > b[i]; }
636 for(
int i = 0; i < 3;++i) { c = c && a > b[i]; }
643 for(
int i = 0; i < 3;++i) { c = c && a[i] > b; }
652 for(
int i = 0; i < 3;++i) { c = c && a[i] >= b[i]; }
659 for(
int i = 0; i < 3;++i) { c = c && a >= b[i]; }
666 for(
int i = 0; i < 3;++i) { c = c && a[i] >= b; }
673 for(
int i = 0; i < 3;++i) { c = c && a[i] != b[i]; }
681 for(
int i = 0; i < 3;++i) { c[i] = -a[i]; }
688 struct __declspec(dllexport) ivec4 {
696 v[1 - 1] = a; v[2 - 1] = a; v[3 - 1] = a; v[4 - 1] = a;
699 inline ivec4(
int v_1 ,
int v_2 ,
int v_3 ,
int v_4 )
701 v[1 - 1] = v_1; v[2 - 1] = v_2; v[3 - 1] = v_3; v[4 - 1] = v_4;
704 inline ivec4(
const ivec4& a)
706 v[1 - 1] = a[1 - 1]; v[2 - 1] = a[2 - 1]; v[3 - 1] = a[3 - 1]; v[4 - 1] = a[4 - 1];
709 inline ivec4& operator=(
const ivec4& a)
711 v[1 - 1] = a[1 - 1]; v[2 - 1] = a[2 - 1]; v[3 - 1] = a[3 - 1]; v[4 - 1] = a[4 - 1];
716 inline int& operator[] (
int i) {
return v[i]; }
717 inline const int& operator[] (
int i)
const {
return v[i]; }
718 inline int& operator() (
int i) {
return v[i % 4]; }
719 inline const int& operator() (
int i)
const {
return v[i % 4]; }
731 for(
int i = 0; i < 4;++i) { c[i] = a[i] + b[i]; }
738 for(
int i = 0; i < 4;++i) { c[i] = a + b[i]; }
745 for(
int i = 0; i < 4;++i) { c[i] = a[i] + b; }
754 for(
int i = 0; i < 4;++i) { c[i] = a[i] - b[i]; }
761 for(
int i = 0; i < 4;++i) { c[i] = a - b[i]; }
768 for(
int i = 0; i < 4;++i) { c[i] = a[i] - b; }
777 for(
int i = 0; i < 4;++i) { c[i] = a[i] * b[i]; }
784 for(
int i = 0; i < 4;++i) { c[i] = a * b[i]; }
791 for(
int i = 0; i < 4;++i) { c[i] = a[i] * b; }
877 for(
int i = 0; i < 4;++i) { c = c && a[i] == b[i]; }
884 for(
int i = 0; i < 4;++i) { c = c && a == b[i]; }
891 for(
int i = 0; i < 4;++i) { c = c && a[i] == b; }
900 for(
int i = 0; i < 4;++i) { c = c && a[i] < b[i]; }
907 for(
int i = 0; i < 4;++i) { c = c && a < b[i]; }
914 for(
int i = 0; i < 4;++i) { c = c && a[i] < b; }
923 for(
int i = 0; i < 4;++i) { c = c && a[i] <= b[i]; }
930 for(
int i = 0; i < 4;++i) { c = c && a <= b[i]; }
937 for(
int i = 0; i < 4;++i) { c = c && a[i] <= b; }
946 for(
int i = 0; i < 4;++i) { c = c && a[i] > b[i]; }
953 for(
int i = 0; i < 4;++i) { c = c && a > b[i]; }
960 for(
int i = 0; i < 4;++i) { c = c && a[i] > b; }
969 for(
int i = 0; i < 4;++i) { c = c && a[i] >= b[i]; }
976 for(
int i = 0; i < 4;++i) { c = c && a[i] != b[i]; }
983 for(
int i = 0; i < 4;++i) { c = c && a >= b[i]; }
990 for(
int i = 0; i < 4;++i) { c = c && a[i] >= b; }
1000 for(
int i = 0; i < 4;++i) { c[i] = -a[i]; }
ivec2 operator+=(ivec2 &a, const ivec2 &b)
ivec2 operator-(const ivec2 &a, const ivec2 &b)
int operator>=(const ivec2 &a, const ivec2 &b)
ivec2 operator+(const ivec2 &a, const ivec2 &b)
ivec2 operator*(const ivec2 &a, const ivec2 &b)
int operator<=(const ivec2 &a, const ivec2 &b)
ivec2 operator-=(ivec2 &a, const ivec2 &b)
int operator>(const ivec2 &a, const ivec2 &b)
int operator!=(const ivec2 &a, const ivec2 &b)
int operator==(const ivec2 &a, const ivec2 &b)
int operator<(const ivec2 &a, const ivec2 &b)
ivec2 operator*=(ivec2 &a, const ivec2 &b)