#include <bits/stdc++.h>
using namespace std;
const int N = 1000, MAX = 26;
#define int unsigned
int R[N]{
255,1823,2919,3499,3795,5037,5491,6493,7062,9139,9581,10813,11209,11669,13455,16033,17358,17912,19130,21110,22059,22727,26309,27762,28955,31116,33749,34278,35290,36457,37467,38967,42819,45285,45358,48153,50579,52302,53705,54332,61064,67182,67902,70364,37752077,72870,75444,77945,79298,79621,82263,83102,84629,88673,89416,92323,99501,102154,104554,107364,111250,121604,122895,132725,134797,135907,137848,138315,139708,140890,148329,148901,149972,153898,155703,159520,161873,166706,169304,174250,179072,185105,187584,193542,197616,202921,205191,209939,210958,221740,229582,232005,241985,246360,263847,264689,267853,268088,270935,276523,278845,281894,282842,291985,295658,297628,302402,304329,311651,312916,321810,324099,330515,332642,339014,346189,349828,360603,369713,376320,379296,386368,394700,396311,406154,406817,418020,430916,445488,450712,475909,479282,509057,526009,529644,531274,531905,532854,536071,537297,541620,543027,547866,550786,551500,561310,563568,569954,574023,581721,582820,590237,592981,599457,610350,621600,625187,627723,641728,656626,669890,674017,688461,689926,694531,723602,724552,729866,757936,788694,793125,795480,797752,806657,820561,860302,866576,923520,926731,934426,938068,944448,960524,1036800,1051230,1053877,1054534,1056044,1057642,1061560,1067339,1068593,1070800,1073933,1082780,1084070,1091937,1098922,1115335,1118503,1121928,1124784,1134824,1139786,1148466,1153553,1159252,1163564,1180315,1190662,1200206,1206298,1215570,1218712,1222149,1246028,1247345,1270656,1294355,1311698,1316227,1320588,1321186,1323337,1333385,1340512,1360688,1379369,1403920,1441965,1444641,11673985,1475876,1542336,1573857,1583320,1589453,1590610,1614276,1616656,1636356,1639722,1640324,1663004,1706373,1710612,1753640,1788929,1811520,1872902,1902599,1904848,1909284,1966186,2011152,2100444,2102938,2106595,2107471,2110292,2112290,2115378,2120112,2122194,2130235,2136800,2140753,2145540,2151045,2151506,2163433,2166113,2166935,2185241,2196788,2220136,2228798,2239768,2240781,2245709,2252289,2263189,2269424,2279042,2295177,2305538,2315524,2332192,2359751,2363208,2384421,2386442,2393103,2428988,2433236,2444418,2462912,2470176,2495124,2541577,2558276,2625897,2631052,2640011,2640996,2674978,2689606,2703672,2716161,2720641,2730128,2754898,2757412,2770193,2789960,2834499,2901510,2917552,2918952,2968080,3027104,3150449,3156019,3159306,3166882,3195206,3214481,3223692,3236129,3260948,3313671,3317833,3346626,3409669,3424302,3428625,3448854,3703905,3825670,3940930,3953672,3965004,4096129,4197605,4199641,4203244,4203579,4204883,4208952,4214548,4215683,4219505,4229263,4232994,4238664,4251798,4254081,4256801,4264463,4266194,4267568,4269396,4277017,4277928,4287234,4297797,4301340,4329894,4336212,4336678,4342046,4355648,4362353,4367113,4407402,4424852,37233176,4458340,4463266,4465049,4469510,4476008,4522165,4527130,4546754,4550665,4556881,4606593,4626452,4655244,4662312,4702214,4719211,4730512,4731049,4739341,4752666,4753120,4774401,4788680,4852640,4915223,4937984,4997572,5013797,5026312,5031970,5063952,5112965,5249605,5261428,5276337,5288972,5296480,5319685,5343618,5374166,5381249,5391619,5442088,5452064,5538315,5547138,5637698,5648576,5690368,5701968,5780752,5791875,5808170,5922888,6031385,6325781,6349080,6365482,6374512,6425282,6451240,6473796,6490385,6558026,6562450,6584384,6586540,6696963,6832684,6852678,6895620,6930752,6979634,7145024,7352402,7392258,7406920,7472016,7569568,7604640,7643393,7865865,8192048,8392624,8395236,8395417,8399006,8400484,8408401,8413609,8414516,8417865,8427022,8430200,8437980,8440168,8454711,8462670,8473170,8488641,8491320,8501253,8516624,8521018,8523837,8525633,8534290,8562758,8569792,8588674,8594081,8638497,8652118,8667787,8681508,8687121,8688513,8696016,8701193,8723744,8757410,8790850,8800424,8807554,8814697,8851556,8855832,8913501,8919602,8931144,8934948,8950946,8987330,46155329,8991812,9029656,9047332,9068684,9146380,9178273,9193858,9240690,9372180,9446931,9462342,9471084,9492738,9502811,9573522,9581608,9627649,9651234,9713408,9765697,9767554,9801731,9836624,9851520,9962254,9986145,9997632,10041472,10059813,10096913,10388992,10490027,10503191,10537475,10556592,10560265,10572576,10619276,10620016,10651024,10706961,10761352,10805296,10822661,10884162,11012328,11018565,11042969,11110658,11273008,11442176,11534708,11536168,11574400,11575940,11798794,12062808,12402752,12588426,12603475,12616050,12636336,12699392,12716109,12749984,12756496,12851207,12944004,12992804,13173003,13174917,13238918,13275328,13411392,13631535,13634248,13721872,13779536,13901876,13910149,14156208,14254098,14683658,14705796,14717217,14719000,14827720,15139336,15231008,15597633,15810563,15991832,16318476,16386560,16781252,16784500,16789718,16791068,16795865,16799789,16802598,16806241,16810812,16814986,16821394,16834064,16843715,16845875,16852521,16859366,16873992,16877908,16880913,16910619,16919264,16926090,16941475,16942603,16959749,16978470,17014929,17040572,17049708,17054725,17056673,17080434,17094666,17106249,17141836,17180208,17195075,17262624,17277956,17305186,17308291,17322636,17329172,17343557,17346825,17368856,17396096,17399978,17426434,17436942,17450561,17467480,17563947,17585155,17663520,17727762,17768528,17843227,17875537,17879558,17895706,17905730,17910145,17924712,17926284,17966228,18088039,18092484,18129666,18178308,18354770,18359520,18485416,18546992,18612881,18615560,18759685,18878225,18890846,18926632,18942490,18965640,18978822,19006818,19012232,19038253,19059008,19145416,19169684,19333904,19406901,19469377,19530416,19545088,19923597,19924432,19964449,20136194,20204608,20457729,20459554,20677120,20993094,21004748,21041825,21078113,21102778,21107522,21140864,21187600,21234914,21262608,21272833,21400096,21510720,21636353,21662724,21708833,21758548,21829640,22026259,22027336,22028737,22102072,22307456,23071305,23072036,23094785,23113858,23400453,23611410,24723584,24903686,25177864,25203297,25203860,25240400,25315852,25354320,25363780,25437258,25511956,25561603,25723414,25741856,25763944,25956528,26165504,26216741,26222762,26256656,26280086,26608649,27033736,27265234,27459658,27535876,27590946,27788421,27927041,28344641,28459044,28852234,29370403,29372708,29394008,29622840,29720840,29894668,29901090,30475904,30576648,30703633,31531014,31723616,33560520,33567398,33574068,33577486,33579211,33580124,33584418,33589029,33597136,33605675,33608488,33622498,33630770,33637825,33659073,33661209,33677956,33688730,33689942,33691180,33700357,33706224,33723553,33753865,33759814,33817212,33822867,33827604,33828482,33846080,33883235,33886604,33916440,33935504,33949457,33975300,33989153,34079067,34089101,34113960,34118212,34149001,34178160,34185238,34226326,34247044,34300192,34346276,34363464,34365832,34374403,34506818,34537513,34538688,34608409,34619826,34691140,34711624,34751764,34767554,34777124,34816137,34885639,34903120,35004504,35133826,35143733,35154434,35472416,35654512,35657827,35665092,35668743,35693606,35720709,35726240,35794080,35832001,35848372,35916850,36044953,36061960,36077668,36313112,36439426,36513793,36700390,36726793,36771330,36832840,36864274,36968468,37060872,37357856,37770261,37794116,37880172,37949699,37979146,38054944,38082304,38178946,38275672,38281255,38285842,38292768,38322258,38438401,38601228,38798220,38808081,38836488,39011840,39063656,39133313,39387236,39860360,39867712,39879265,39929892,39944338,40018436,40116252,40370821,40379458,40390704,41956419,41988628,42020032,42041748,42057987,42141733,42160648,42206254,42255904,42287185,42470273,42483996,42511368,42537034,42607888,42741889,43002146,43009548,43059473,43124912,43286689,44063248,44064810,44155968,44306832,44663328,45123596,45166624,45224256,46276689,46417944,46538786,46731552,46924936,47218950,48236706,48564288,48767360,49287177,50332341,50347280,50372938,50382960,50409541,50481794,50491524,50534544,50561031,50599584,50667672,50881545,50893329,51135042,51416067,51446865,51453996,51569664,51578016,51724306,51775584,51785730,51941664,52035651,52449425,52691249,52701568,52772996,52827140,53067784,54527762,54550696,54561292,54593606,54668352,55148802,55579172,56230020,56655897,58725129,58742020,58777729,58890752,59253508,59310129,59773152,60819752,60850756,61870098,61875712,62981125,65537056,0,0,
};
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
bool check()
{
unordered_set<int> all;
for (int i = 0; i < N; i++)
for (int j = i; j < N; j++)
{
int val = R[i] | R[j];
if (all.find(val) != all.end()) return false;
all.insert(val);
}
return true;
}
int rnd()
{
return rng() % 1000 < 292;
}
int rndi()
{
int v = 0;
for (int j = 0; j < MAX; j++) v |= (rnd() << j);
return v;
}
signed main()
{
int i = 0;
while (R[i]) i++;
cerr << i << endl;
unordered_set<int> all;
for (int x = 0; x < i; x++)
for (int y = 0; y < i; y++)
all.insert(R[x] | R[y]);
for (int x = (1 << MAX) - 1; ; x--)
{
if (x % 1000000 == 0) cerr << x << endl;
R[i] = x;
unordered_set<int> tmp;
bool flag = true;
for (int j = 0; j <= i; j++)
if (all.find(R[i] | R[j]) != all.end() || tmp.find(R[i] | R[j]) != tmp.end())
{
flag = false;
break;
}
else tmp.insert(R[i] | R[j]);
if (!flag && !x) break;
if (!flag) continue;
assert(x != (1 << MAX) - 1);
for (int j = 0; j <= i; j++) all.insert(R[i] | R[j]);
i++;
cerr << i << ' ' << x << endl;
if (!x) break;
}
for (int i = 0; i < N; i++) cout << R[i] << ',';
}