/** * Chrispy Birthday * Program by Raphael Rouvinov * Credit to Nathan M for the array * */ var pictureArray = [29, 4287774509,4286989885,4282331689,4281413159,4281151543,4284380297,4282999147,4288120446,4288709499,4288774783,4288643706,4288710010,4288579194,4287986287,4287525479,4287460715,4287592299,4287658092,4287723117,4287788912,4287592047,4287592560,4287724916,4287592562,4287527284,4287593077,4287527539,4287528309,4287527796,4287446059,4287187521,4282266667,4281413675,4280494644,4284578448,4283722872,4288054651,4288578426,4288643708,4288709499,4288315252,4288381815,4287986287,4287657065,4287526508,4287592299,4287658092,4287920496,4287854705,4287592047,4287592560,4287855732,4287592562,4287527284,4287658870,4287527796,4287462516,4287462003,4287183401,4287122757,4282004267,4281414196,4280561728,4282803326,4283000179,4287858042,4288578426,4288643708,4288709499,4288315252,4288447608,4287855471,4287722858,4287526508,4287592301,4287658094,4287854703,4287789426,4287921014,4287395183,4287724146,4287526769,4287461746,4287659125,4287593589,4287331700,4287527796,4287315759,4287189063,4282070578,4281349949,4281549658,4281422962,4282474094,4287792762,4288447608,4288578426,4288643706,4288578424,4288513401,4287789678,4287722858,4287460715,4287592301,4287658094,4287723117,4287592047,4287921014,4287197804,4287658353,4287526769,4287527539,4287593332,4287462516,4287397493,4287659382,4287250736,4287124299,4282005047,4281351242,4281749098,4280963702,4282803575,4287858555,4288447608,4288512633,4288512120,4288578424,4288316535,4287723885,4287657065,4287460715,4287592047,4287592301,4287525740,4287592049,4287724148,4287132011,4287592562,4287592562,4287527539,4287396210,4287396723,4287331700,4287659382,4286987566,4286796106,4282005310,4282602085,4281750389,4281030783,4282146160,4287727485,4288381817,4288446840,4288512120,4288512631,4288316535,4287592812,4287525736,4287460715,4287460461,4287526508,4287394154,4287592049,4287658355,4287395183,4287789941,4287724148,4287527539,4287330417,4287396723,4287200114,4287462003,4287448377,4286862158,4283452760,4283326071,4281553786,4281294472,4282738297,4287858301,4288381817,4288446840,4288577913,4288578424,4288448121,4287592812,4287525736,4287460715,4287329388,4287591531,4287525738,4287395181,4287395953,4287658355,4287855732,4287659125,4287527537,4287265137,4287265907,4287068528,4287330930,4288502607,4287192153,4284966259,4283655296,4282212488,4281821331,4282409332,4287858302,4288381563,4288446842,4288643706,4288578424,4288448121,4287592812,4287591529,4287460715,4287329388,4287591531,4287658094,4287593330,4287330417,4287132781,4287264365,4287724918,4287461744,4287330930,4287265907,4287068528,4287396723,4289425765,4287128159,4285493378,4283787398,4282541455,4282149781,4282737784,4287989375,4288381565,4288381049,4288446327,4288512631,4288513914,4287527019,4287525736,4287460715,4287592301,4287329127,4287658092,4287330671,4287265137,4286869866,4287198572,4287659382,4287461744,4287528309,4287200114,4286936942,4287199344,4289362029,4287196009,4284968063,4283656327,4283265176,4281557899,4282803061,4287989377,4288446588,4288446331,4288446327,4288578424,4288448121,4287527019,4287459943,4287460715,4287592301,4287394920,4287263847,4287067756,4287331700,4287133551,4287330417,4287527796,4287395951,4287528309,4287265907,4287134321,4287199344,4288970355,4286737772,4284705664,4283393923,4284317862,4281491334,4282868341,4287923584,4288380795,4288446331,4288380534,4288644217,4288448121,4287527019,4287394150,4287394922,4287394920,4287329127,4287132777,4286607977,4284766031,4286805101,4287330931,4287527796,4287199085,4287462516,4287134321,4287265137,4287396723,4288511861,4286607986,4285166985,4283920267,4284712875,4282214798,4283131513,4287923584,4288249979,4288380538,4288380534,4288644217,4288448121,4287527019,4287394150,4287394922,4287197541,4287263334,4287001706,4283910722,4280424722,4284963926,4287265654,4287462517,4287133292,4287330930,4287200114,4287199344,4287462516,4288118391,4286542711,4286548638,4284381331,4283595162,4282477970,4283131513,4287858302,4288249979,4288380538,4288381047,4288578424,4288382328,4287527019,4287394150,4287394922,4287263336,4287394922,4287725175,4280424211,4279372549,4281082400,4286410604,4287265138,4287199085,4287330418,4287330930,4287396723,4287330930,4287789941,4286937728,4285165702,4284579221,4283266197,4282214796,4283131513,4287726715,4288184699,4288315256,4288381047,4288446838,4288382328,4287592299,4287525479,4287394922,4287394922,4287526508,4287462517,4279305989,4278978308,4279570445,4282924347,4287068273,4287264878,4287396211,4287265137,4287725688,4287001965,4287855479,4287792526,4285230468,4283723912,4282871437,4282214796,4283329151,4287464313,4288118904,4288249463,4288381047,4288315252,4288381815,4287658092,4287591272,4287329642,4287263082,4287329388,4285225301,4278977025,4279175946,4278781188,4280621850,4287002480,4287264624,4287396211,4287462003,4287659895,4287002735,4288316802,4287331976,4285624713,4283723401,4282937230,4282214798,4283328894,4287332725,4288119158,4288118645,4288381047,4288249459,4288381815,4287723885,4287591272,4287394922,4287065703,4287131496,4281935651,4279305989,4279372812,4278714882,4279569421,4286870896,4287264367,4287396211,4287330417,4287396723,4287265907,4288448901,4286738811,4285492613,4284116365,4283068048,4281885835,4283197306,4287399031,4288052852,4288052852,4288250231,4288184438,4288447610,4287789933,4287657322,4287526254,4287328361,4286802785,4279764736,4279568132,4278910976,4278911745,4279240456,4285752674,4287460976,4287461491,4287199085,4287067759,4287330928,4287856764,4286803834,4285294723,4284115338,4283067535,4281622663,4283196793,4287399033,4288117875,4287987059,4288184438,4288250231,4288316024,4287658347,4287459943,4287526254,4287591533,4286539611,4279369728,4279304704,4279502082,4279240450,4279108870,4283186747,4287724148,4287329905,4287067499,4287133552,4287330928,4287658870,4286474610,4285557380,4283917446,4282804106,4281556357,4282933875,4287333240,4288052082,4287921266,4288184438,4288184438,4288250231,4287920749,4287394405,4287526254,4287723887,4286671199,4280092675,4280751371,4282132773,4280028937,4279437578,4280424211,4287593332,4287264112,4286869866,4287264624,4287199344,4287789941,4285026649,4285490817,4283850883,4282474371,4281687173,4282867312,4287201654,4287920498,4287921266,4288184438,4288118645,4288316024,4288118128,4287525991,4287394668,4287723887,4287197543,4282460708,4285224266,4285487186,4280422666,4279173891,4278779904,4287330417,4287133039,4286672487,4287396210,4287133551,4287986805,4283907652,4285030009,4283718784,4282408065,4281686660,4283129971,4287135861,4287920498,4288052082,4288249461,4288249461,4288446840,4288249202,4287657065,4287459945,4287658607,4287592301,4284762950,4288117615,4287854701,4281803546,4279502339,4278845696,4287001965,4287264625,4286672487,4287528050,4287198831,4288051569,4284236617,4284437872,4283586429,4282736516,4281620353,4283590522,4287004275,4287854705,4288052084,4288117875,4288315254,4288446840,4288117616,4287525479,4287459945,4287329642,4287065703,4287130982,4288248170,4287130207,4285355339,4279896068,4279635208,4286804586,4287396724,4287001452,4287462255,4287264624,4288050542,4285025618,4284701301,4283192441,4282670723,4281488254,4283852924,4286937969,4287854705,4288052084,4288117875,4288315254,4288381047,4288117103,4287459686,4287525738,4288118643,4287525740,4283643440,4288378981,4283576356,4287196513,4279764225,4279701001,4286738793,4287330417,4287198831,4287199081,4287395953,4288247408,4285486682,4284307313,4283126650,4282406784,4281422461,4283787131,4286937969,4287854705,4288052082,4288183668,4288183668,4288315254,4288248689,4287525479,4287525738,4287459943,4286604638,4280682753,4287720280,4280680960,4287590758,4282263844,4279174144,4286805101,4286935659,4287133038,4286935909,4287461746,4288180588,4286802542,4283716202,4282667128,4282144125,4281027703,4283852926,4287069555,4287723119,4287986289,4288117875,4288249461,4288315254,4288182896,4287591272,4287591018,4287591272,4287328359,4280879873,4288706405,4281865220,4285747525,4284565829,4279042560,4286805101,4286803816,4286935659,4286935911,4287132781,4286601556,4287000691,4283651436,4282470262,4282078333,4281092985,4283852926,4286937969,4287657324,4287986289,4288183668,4288315254,4288249461,4287919724,4287591272,4287591018,4287788138,4284301881,4284760890,4287653204,4285023027,4284102186,4284697415,4279108353,4286212966,4287001195,4286935659,4287067497,4286869354,4285153856,4286014308,4283586670,4281944175,4281947517,4281158778,4283852924,4286872176,4287591531,4287986289,4288183668,4288249461,4288183668,4287788138,4287459686,4287590761,4287261796,4281538316,4286537043,4286468161,4285680703,4284496431,4283710520,4279042305,4286212966,4286935659,4287001452,4287001963,4286671975,4284890684,4284633168,4284047732,4282405494,4281618551,4281224569,4283786874,4286806381,4287525738,4287920494,4288183668,4288117875,4288183668,4287985517,4287262307,4287459175,4288051312,4283117348,4285746757,4287915094,4284298537,4286074948,4284039227,4279108098,4285292123,4286935659,4286935660,4286673000,4286606182,4284759865,4283910213,4284245366,4282998144,4281552756,4281158260,4283786872,4286674795,4287459945,4287920237,4288183668,4288117875,4288117875,4288249202,4287262307,4287393382,4287262055,4283643691,4285285436,4287651411,4285351225,4286666569,4284236604,4279240197,4282464307,4286409829,4286804587,4286475622,4286737768,4284563000,4283713345,4284245364,4282734970,4282012793,4281026415,4283917945,4286675049,4287459943,4287854444,4288117875,4288183668,4288052082,4288446581,4287459686,4287459175,4287196521,4283446312,4283245083,4284558372,4287259222,4287323986,4284301883,4279108870,4278846208,4286739308,4286738794,4286541415,4286737768,4284760892,4283976515,4284442997,4282603639,4282210170,4281026414,4283786613,4286871658,4287525736,4287854444,4288052082,4288183668,4288117875,4288446838,4287394150,4287655782,4287328877,4284038449,4282455054,4282386690,4289100912,4289034088,4283709746,4278846468,4278452224,4286213477,4286673001,4286476138,4286737768,4284368190,4284173894,4284442482,4282405745,4282538620,4281157998,4283589234,4287003244,4287525738,4287723115,4288052082,4288117875,4288117875,4288512631,4287262564,4287787368,4287132011,4285617481,4286336327,4286136893,4289627254,4289100651,4284038709,4278978054,4279109893,4286279270,4286476136,4286410345,4286738281,4283647550,4283910724,4284441969,4282733681,4282801018,4281553008,4283721079,4286740072,4287525225,4287591529,4287985776,4287985776,4288117362,4288117873,4287197026,4287787370,4287526769,4287589989,4286138435,4288309091,4289626741,4288837738,4284038709,4278978054,4279109894,4285950821,4286147686,4286212968,4286476138,4282860605,4283648068,4284902005,4283127665,4283129722,4281881456,4283918458,4286871658,4287327848,4287460713,4287854703,4287854190,4287986289,4287986287,4286999647,4287590507,4287197804,4288050283,4285348919,4285875776,4289758327,4289232498,4282920228,4278978054,4278846722,4285885541,4286082407,4286278507,4286279788,4282533697,4283911242,4285032562,4283719287,4283589501,4282078576,4283984249,4286937451,4287393641,4287526508,4287723633,4287854705,4287855219,4287723887,4286934369,4287393643,4287065705,4287457376,4291007117,4285811011,4288771434,4289166705,4281934362,4278518016,4278517760,4285556576,4286280299,4286542192,4286477426,4282667854,4284043086,4285032303,4284310906,4283720827,4282407024,4284115577,4286740842,4287196775,4287329642,4287526767,4287657840,4287526767,4287658094,4286934884,4287130728,4287131499,4287457378,4290283907,4287456863,4288705643,4288837229,4281276432,4278518016,4279044358,4286082920,4286346605,4286542962,4286411633,4282867804,4283846736,4285426546,4284573818,4283786359,4282932851,4284247161,4286214244,4286868326,4287264365,4287264367,4287658355,4287461746,4287789939,4286935400,4287065706,4286736741,4288509553,4282520333,4287984236,4288968815,4288771436,4280158721,4278714882,4278978565,4286215019,4286281582,4286543219,4286346353,4282869091,4284044630,4285492594,4284902522,4283851635,4283261557,4284575608,4285556827,4285684310,4286343265,4286672487,4287724918,4287527796,4287132779,4286212190,4286540389,4286342242,4287851623,4286533706,4282128659,4288771693,4288639850,4280487170,4278911232,4279175686,4286872949,4286347375,4286675318,4286477939,4282474335,4284308318,4285427571,4285231485,4284180341,4283524213,4284772729,4285622622,4285685080,4286146146,4286146657,4287264625,4287199345,4287001452,4286409828,4287067248,4287133041,4287193693,4290547079,4281799180,4288640107,4288705641,4280617472,4280160012,4279043584,4286609779,4286413425,4286543732,4286412147,4281815894,4284309090,4285757564,4285363326,4284771962,4283655284,4285101178,4286214759,4286672490,4286541163,4286541929,4287001966,4286870894,4286673001,4286541929,4287001714,4287396470,4286864987,4288046945,4285812038,4288508775,4287916125,4282655769,4281802523,4279437316,4286609779,4286413425,4286477939,4286477940,4282407004,4284310117,4285561468,4285429119,4284837753,4284049784,4285035385,4286807409,4287199093,4287265402,4287266167,4287002482,4287002995,4286805103,4286871409,4286739312,4286542444,4286142034,4285414712,4287521628,4287851359,4287784537,4285878082,4283643440,4279765765,4286609012,4286544500,4286477426,4286412147,4283656299,4284311400,4285233789,4285297533,4284968826,4284181368,4285363835,4286807924,4287134327,4287200122,4287266681,4287266167,4287003509,4287265913,4287200374,4287002741,4286280301,4286142547,4285875263,4286271048,4287522648,4287455826,4288048222,4285286723,4279370496,4287003771,4286412400,4286411633,4286412147,4284708217,4284377193,4285168766,4285429632,4285232253,4284575610,4285627261,4286939769,4287069304,4287003258,4287004024,4287069304,4286806645,4287200892,4287200890,4287003513,4286478193,4286932577,4288243811,4287586392,4287194196,4287653204,4287915607,4287259484,4279830529,4287134844,4286411633,4286411633,4286412147,4284774010,4284311913,4285169279,4285364096,4285035131,4284575610,4285692540,4287071355,4287003770,4286937978,4287069817,4286938231,4286872438,4286806391,4287135099,4286871927,4286280814,4286735711,4289297012,4288178529,4286799436,4286666309,4287981400,4287917414,4281541147,4286674293,4286543219,4286411633,4286280561,4284380022,4284508779,4285300352,4285167487,4285035385,4284641144,4285561208,4286545783,4287069563,4287004284,4287070076,4286675318,4286806904,4286675319,4286937465,4286871925,4286872951,4285880915,4288376678,4287521367,4287128401,4286008379,4288508514,4286338384,4283646269,4286345328,4286477426,4286411887,4286214767,4283986293,4284574572,4285431422,4285233791,4285364350,4284772729,4285692024,4286743162,4287135869,4287135870,4287070076,4286675318,4286675318,4286938491,4286871672,4287003511,4287069817,4284368444,4286600524,4286732364,4287194194,4285547058,4285548858,4285813069,4285620059,4286805879,4286477427,4286477680,4286215537,4283658868,4284574059,4285496702,4285167998,4285233532,4284970108,4285889401,4286545783,4287070076,4286939261,4287070847,4286807675,4286807675,4287004030,4286937465,4287069304,4286937718,4283776820,4284101160,4285088053,4286009407,4284823336,4283115289,4283050023,4285818208,4286608755,4286740599,4286675572,4286412916,4283528053,4284508779,4285365115,4285102975,4285167998,4284904828,4285955194,4286742908,4287004283,4286807675,4286939261,4286807675,4286807675,4286938491,4287135099,4286938231,4286609266,4283776820,4283048985,4284693808,4285548086,4284034590,4282326804,4280157187,4286410858,4286937977,4287003770,4287004024,4286544502,4282935664,4284115048,4285168250,4284971389,4285168514,4284839549,4285692792,4286874495,4287201403,4287004284,4286872697,4286806904,4286806905,4287069563,4287331708,4287070330,4287267455,4284368957,4283708455,4284957491,4284692520,4284496168,4282788131,4279370755,4286740339,4286873214,4286740852,4286806391,4286544502,4282934894,4283062874,4285365629,4284905342,4285102721,4284773756,4286021759,4286676346,4287267196,4287201150,4287004024,4286806904,4286806392,4287069306,4287397501,4287070330,4287334016,4284632127,4284235569,4284431147,4284758570,4285549369,4281736470,4278977538,4287200892,4287004800,4286740850,4286806391,4286610295,4282671724,4283655011,4285233789,4285036928,4284971389,4284708476,4285693051,4286676346,4287135097,4287135356,4287201149,4287004283,4287003771,4287069564,4287332478,4287135869,4287334270,4284961092,4284497973,4283970085,4285154098,4286405188,4280882442,4278452224,4286937977,4286938490,4286872438,4286872438,4286938490,4282540138,4285036410,4285167996,4284839549,4285234561,4284642683,4285693564,4286807932,4287003511,4287003770,4287332735,4287201662,4287201150,4287201150,4287332478,4287201149,4287136119,4285026884,4284497973,4284430123,4285417782,4287128654,4280488456,4278583557,4286806391,4286872438,4286938231,4286807158,4286938490,4282934383,4285760133,4285431168,4285168514,4285233789,4284642681,4285430392,4286873468,4287265913,4287135356,4287266942,4287201662,4287135869,4287201663,4287201149,4287398271,4287267192,4284763712,4284300081,4285679674,4285483575,4287522129,4279568128,4280097566,4286937977,4286937716,4286741111,4286675572,4286741112,4282934126,4285563524,4285496961,4285300354,4285101944,4285168766,4285627771,4287005054,4287528828,4287332735,4287332735,4287333248,4287070076,4287135869,4287201403,4287332478,4287530107,4284763712,4285747525,4286863946,4286075966,4287784790,4279173120,4283978583,4287004284,4287135095,4286741111,4286544500,4286675319,4282604391,4285234559,4285365375,4285101946,4285692540,4284838772,4285693564,4287071104,4287594367,4287332989,4287332735,4287333248,4287136123,4287201403,4287201403,4287265915,4287528828,4285684557,4287129430,4287522901,4286932302,4288376158,4279304704,4286741630,4287070077,4287201403,4286806904,4286676086,4286806392,4282932841,4285037180,4285299836,4285627518,4285625202,4285429622,4285824378,4287071104,4287529087,4287201916,4287266942,4287267455,4287136123,4287332476,4287266681,4287594367,4287199093,4286671452,4287458395,4287852123,4287393366,4288441953,4278976512,4287398788,4286741112,4286675318,4286872697,4286676086,4286806392,4282998116,4285431936,4285234042,4285692794,4286018416,4286019445,4285954933,4287202945,4287332478,4287201916,4287266942,4287266942,4287136121,4287397753,4287463544,4287857539,4287528060,4287131231,4287327320,4287722077,4287592285,4287784791,4279305216,4286477426,4286740598,4286610296,4286872697,4286741879,4286937978,4283129444,4285300605,4285299322,4285559409,4287924611,4286478709,4286282870,4286808701,4287398271,4287201916,4287332735,4287266942,4287201914,4287331960,4287463544,4287331709,4287660674,4286999645,4287393883,4287788641,4288052836,4287983452,4282595632,4287200890,4287135356,4286873725,4286938490,4286741879,4287003258,4283655529,4285103226,4285101943,4285558637,4289041548,4287331958,4286347634,4286677115,4287332735,4287201916,4287332735,4287266685,4287267194,4287397753,4287397751,4286937980,4286873214,4287000413,4287657827,4287985252,4288643947,4287786843,4286346605,4286740852,4287069304,4286676346,4286938744,4286741881,4287003258,4284575861,4284839284,4284970357,4286018158,4289105538,4288383359,4286938742,4286939773,4287266942,4287201403,4287266942,4287332478,4287332474,4287397753,4287398267,4287136388,4285428086,4287461479,4287724390,4288182118,4288380777,4287393890,4286216826,4286477939,4287200374,4286741881,4286872951,4287004283,4287134844,4285167485,4284576113,4284904564,4286609779,4289104508,4288447608,4287727485,4287136637,4287266943,4287266683,4287201403,4287529087,4287463546,4287397499,4287529855,4286479746,4284180852,4287593839,4287987819,4288445290,4288906868,4287199859,4283522409,4287466380,4287331445,4287069817,4286807156,4287070077,4287135099,4285232764,4284510320,4284838772,4287069815,4288906354,4288249199,4286937453,4287399295,4287464322,4287529085,4287201403,4287463294,4287463546,4287464064,4287266942,4286283397,4283064437,4287002733,4287396450,4288445801,4288974205,4286085242,4283262848,4286085501,4287200114,4287200372,4286872947,4287003773,4287003513,4284903286,4284575859,4284641395,4286872177,4288445543,4288446317,4287660661,4287530368,4287530115,4287660160,4287398782,4287462781,4287594619,4287464322,4287266943,4280955706,4282211451,4286937970,4287199837,4288381801,4287923317,4284905091,4282148492,4286416012,4287462514,4287725686,4287201912,4286937726,4286937720,4284574834,4284641395,4284706418,4285951075,4288444771,4289301110,4288054903,4287464575,4287530115,4287791230,4287596161,4287725439,4287792257,4287201411,4287530628,4278521367,4281818500,4287531397,4286607447,4288514931,4287860362,4282869630,4281690521,4286284939,4287725429,4288513401,4287793276,4287200639,4287200122,4284575350,4284378223,4284838004,4286016867,4288577127,4289169011,4287988597,4287464322,4287530114,4287922042,4287661952,4287790719,4287464321,4287137168,4285424998,4278520601,4282148502,4287402131,4287264874,4287727218,4286811030,4281359999,4281231262,4285823873,4288513662,4288642417,4288055672,4287134846,4287397501,4284641144,4284509809,4284903538,4286081891,4288642920,4289168497,4287264874,4287332738,4287464321,4287856504,4287333500,4287725186,4287005831,4286809753,4281214248,4278848796,4281885332,4285364617,4287332478,4287532937,4283788679,4281626521,4280442522,4286941325,4288710012,4288378216,4288317556,4287397502,4287397501,4284443765,4284509555,4284706159,4285818719,4288379748,4288839532,4286146906,4287398531,4287464321,4287856249,4287136637,4287398538,4286679444,4285035149,4279372816,4278520085,4281095806,4282010736,4287006354,4284970884,4281687173,4280905635,4280246173,4288321950,4288643957,4287786592,4288052072,4287528575,4287200892,4284246385,4284574834,4284574573,4285621340,4288445541,4288905325,4286212701,4287464070,4287464321,4287987065,4287005311,4286809489,4285498780,4282274162,4279964959,4278520084,4279910754,4280236909,4284444040,4281421935,4281164954,4279789220,4280311968,4288518043,4288643696,4287787362,4287524699,4287462012,4286937720,4284311408,4284443246,4284574573,4285621340,4288906092,4289169011,4286542180,4287201411,4287200892,4287855479,4286940549,4286089368,4283725980,4280500330,4278650130,4278980374,4278396224,4280042625,4279645537,4280636805,4280445351,4279856563,4280180382,4287858569,4288906351,4288313963,4286932304,4287527548,4287003513,4284509041,4284705905,4284639853,4285292375,4288906092,4289366390,4286476389,4286938239,4287595650,4288382595,4286811022,4284776346,4281887640,4281029510,4278979871,4279178006,4278197041,4280308626,4279188597,4280904354,4279724971,4279462837,4279982231,4288054404,4289103984,4288643182,4286340424,4287264888,4286937720,4284180074,4284442987,4284837232,4285555547,4288774506,4289235319,4286411109,4286610044,4287464062,4288185729,4286549398,4282410894,4280378008,4280308107,4278849063,4279111441,4278195243,4280048275,4279652496,4280183715,4279857838,4279593912,4280508315,4288514181,4289038189,4288576876,4285815874,4286673519,4286674548,4285101174,4285560954,4285626747,4286410856,4289037680,4288708975,4286346345,4286544249,4287529853,4287792000,4286157730,4280768906,4279854238,4280047253,4278521387,4278388488,4278193187,4280444830,4280246952,4280054184,4279858349,4279922107,4280310930,4288381823,4288972398,4288510567,4285750851,4286739569,4286937718,4287601050,4287469205,4287206033,4287332728,4288774508,4288248940,4286215017,4286544503,4287398521,4287529857,4284580764,4280311190,4279789992,4279785883,4278193455,4278717453,4278192415,4280576927,4280051113,4279792041,4279726248,4279987641,4280705684,4287921527,4288709742,4288641127,4285947458,4287331706,4287332476,4287732634,4287994779,4287928986,4286674798,4288577386,4288183406,4286413427,4287070076,4287530106,4287267972,4283135638,4280247204,4279724971,4279392413,4278195774,4278718483,4278191898,4280313757,4280249775,4280055474,4280120238,4280052662,4280838035,4287987318,4288775535,4288574564,4285354297,4287331449,4287069304,4285955964,4286152573,4286744712,4285227352,4288577386,4287920749,4286282357,4287465088,4287726715,4286940297,4282085783,4280313516,4279593642,4279327391,4279119965,4278456085,4278585624,4280509858,4280052394,4279923637,4280514232,4280118457,4280838292,4287988347,4288907122,4288442978,4285484088,4287396472,4286937718,4285955964,4285231471,4286086269,4284832594,4288774766,4287131748,4285822320,4287662467,4287792508,4286678414,4282021795,4279985582,4279527592,4279460006,4280636292,4278193691,4278848536,4280903333,4280183978,4279857333,4280579775,4280185020,4280575892,4288054654,4288972145,4288245599,4285154353,4287462267,4287135097,4287863191,4286086267,4287402129,4285489754,4288708973,4286211161,4285428591,4287793540,4287923837,4286548373,4281562533,4280117938,4279789994,4279723178,4281099676,4278194726,4278848018,4281165734,4280512943,4280448189,4280448192,4280513985,4280378261,4287858304,4288840301,4287851611,4284628267,4287659646,4287200890,4287863191,4286678404,4287204752,4285292377,4288907122,4285619540,4285363059,4287859079,4288055423,4286155161,4281234857,4280446901,4280250032,4279986861,4280772770,4278196015,4278913551,4281296543,4280316077,4280907711,4280448192,4280514496,4280443286,4287793540,4288905065,4287391573,4284826675,4287396989,4287200890,4285297266,4285888120,4286546822,4285094998,4289499259,4285356368,4285429368,4287990408,4287858044,4285366163,4281498546,4280249775,4280447412,4280315826,4280511144,4278460220,4279045137,4280835214,4280250284,4280709556,4280382909,4280185530,4280640155,4287991179,4288970343,4286931535,4284959803,4287200123,4287135097,4283653211,4285362548,4284902255,4285226071,4289366902,4284830283,4285692540,4288056201,4287594617,4284249745,4281169074,4279723429,4280512947,4280447412,4280578740,4278790990,4279110931,4280176506,4280381872,4280380589,4280251321,4279987122,4280640161,4287991695,4289036651,4286668363,4284435264,4287135359,4286937718,4285167222,4284902255,4283851107,4285422169,4288840299,4284041795,4286022018,4287859079,4287923584,4282935951,4280378539,4279657634,4280512945,4280316338,4280382648,4280043890,4278584337,4279451233,4280250545,4280117420,4279594161,4279657387,4280378536,4287400073,4288577903,4286667849,4283516231,4286610305,4286872951,4287733663,4286547082,4284312428,4284895314,4288774506,4284568652,4285890430,4287859333,4287792259,4281819531,4280245672,4279393946,4280447152,4280250545,4280119735,4281558934,4278716183,4279186259,4280447924,4279723178,4279396782,4279919787,4280642483,4286611073,4288578675,4286602056,4282729809,4286085248,4286807158,4287076247,4287138965,4284312941,4284105798,4289234287,4285555289,4285561465,4287990919,4287727494,4280965511,4280113057,4279525272,4279921321,4280184239,4280054196,4281955237,4278652189,4278329149,4280579251,4279395755,4279527852,4279920555,4280117166,4285756023,4288315503,4286931534,4283457909,4285889415,4286806645,4284115562,4285363324,4284312687,4283908419,4288510818,4286344805,4285232500,4288056710,4287926417,4280835212,4279651992,4278603652,4280184239,4279855274,4280054194,4280640666,4278456610,4278193707,4280446636,4279462577,4279922095,4280118959,4279328420,4285624951,4287920745,4287260500,4283263624,4286087055,4287003511,4284049769,4284508015,4284246894,4283777344,4287391824,4286738791,4285166961,4288123016,4287335568,4280046986,4279585683,4279327115,4279921067,4279591845,4280053936,4279852442,4278194468,4278192933,4280642984,4279726776,4280447924,4279988141,4278999455,4285361266,4288314733,4287128660,4281622152,4286021777,4287265913,4283851877,4284047462,4284312941,4284303688,4286207550,4286475360,4285298034,4288254604,4287336598,4280048016,4279585935,4279523465,4278737047,4279657638,4279988141,4279985574,4278394677,4279113259,4280576418,4279989948,4280644531,4279922859,4279590562,4287399821,4288182120,4286207562,4281360277,4286218901,4287265915,4283653983,4284375911,4284049256,4284632653,4285614900,4286277722,4285298034,4288254604,4286811285,4279785103,4279981460,4278863995,4280512429,4279986860,4280119727,4279986861,4279185998,4278849314,4281168039,4280186811,4280643761,4280251824,4280312995,4286214003,4287917919,4286207309,4281426335,4286416023,4287135099,4284706410,4284967790,4284707185,4285488473,4285285935,4286408537,4285494641,4288583315,4286877338,4280245654,4279258248,4278994300,4280379558,4280250286,4280251315,4279921581,4280305771,4278191638,4281429922,4280383159,4280577711,4280251826,4280442265,4287002744,4286930511,4285944914,4281031326,4286283924,4287135099,4285560434,4285888120,4285364086,4286476138,4285153579,4286671448,4285691763,4288188557,4287272871,4280179091,4278666622,4279387778,4278800009,4280119211,4280118959,4279855787,4279912304,4278257431,4281362585,4280184752,4280445101,4279922348,4280966289,4286212196,4286207301,4284235585,4280833947,4286546579,4287398529,4285625968,4285953652,4285561206,4286542444,4285153579,4286802005,4285822577,4288320144,4287076009,4279651977,4279654798,4278399861,4278666624,4279987623,4280052653,4279789992,4279584115,4278190867,4281229710,4280249257,4280379051,4279921321,4281161607,4285685846,4285812800,4283908933,4280702873,4286152591,4287464322,4285691246,4285953393,4285692020,4286871923,4285548339,4286604367,4285821807,4287991695,4286353062,4279717770,4279721361,4278661751,4279653260,4279921317,4280117934,4280119209,4279190646,4278191380,4280108913,4279919007,4280510122,4279722402,4280370286,4286212441,4287262045,4283319113,4280243087,4285824398,4287530115,4285888110,4286216050,4285757813,4286872438,4285745718,4286932304,4286215537,4288386968,4284709783,4280507288,4279326603,4278924669,4280836251,4280183462,4280512177,4280513965,4279191679,4278258973,4279251543,4279523990,4280706985,4279391895,4278789710,4284896579,4287131229,4282333761,4279782533,4285364875,4287595650,4285887851,4286084464,4285889140,4286412914,4285614134,4287128911,4286346607,4288518300,4283000967,4280705697,4279984279,4278200943,4280375700,4280445351,4280643504,4280513708,4279455879,4278455582,4278262588,4279655063,4280509347,4279587473,4278196542,4285291335,4286408791,4280821551,4279716481,4284576136,4287726207,4285953644,4286018671,4285823347,4286150257,4285416755,4287062861,4286214508,4288650656,4282081155,4280442786,4280115097,4278200943,4279848843,4280378788,4280511146,4279921571,4279653517,4278191383,4278194479,4280049823,4279917208,4279191174,4278194487,4286936414,4282460957,4280623918,4279978111,4283919238,4287857023,4286085230,4286018671,4285691763,4285821806,4284956204,4287259725,4286279788,4288716708,4281556357,4280246436,4278272382,4278662263,4279783052,4280049055,4280247715,4279460766,4279259531,4278190871,4278191391,4280050336,4279521935,4279189888,4279117386,4283777837,4281144585,4281610302,4280305020,4283458948,4287922814,4285756267,4285558120,4285822579,4286084464,4284693547,4287259725,4286344552,4287401362,4281228679,4280444329,4279587728,4278399089,4279782282,4279784854,4280312479,4279460509,4278996616,4278454816,4278192158,4279852444,4279258508,4278597749,4280498528,4282395668,4281144585,4280623407,4280304507,4283064705,4288054400,4286019188,4286150772,4286019445,4286281331,4285088305,4286996555,4286211937,4286217865,4280769159,4280641190,4280640416,4278199909,4279123580,4279587216,4280245403,4279393433,4279588496,4278192675,4278192152,4279983514,4279455889,4278269297,4280958309,4282263568,4280222720,4280229162,4279844467,4282210422,4287857025,4285492076,4285492844,4285887602,4286083182,4284628269,4287062348,4286079323,4287337374,4280506760,4280510374,4280048279,4278792816,4278794101,4278994565,4280048024,4279787421,4279851927,4278192934,4278192150,4280508830,4279126924,4278203250,4280365913,4283184154,4283972656,4280558385,4279582065,4282013559,4287791747,4286215799,4285886830,4285886830,4286148974,4284430890,4287258957,4286210907,4287600546,4280441483,4280248493,4280574623,4280568456,4278990195,4278270072,4279850900,4280182433,4280115100,4278194477,4278192407,4280638874,4279652495,4278400118,4279970124,4283643679,4287919977,4281019708,4279648630,4281816693,4287726213,4286347385,4286150002,4286150002,4286280560,4284431147,4286929990,4286013269,4287272094,4280441998,4280182446,4280903588,4279383666,4278989938,4278203508,4279521935,4280708264,4280312225,4278721339,4278192662,4280637332,4280375700,4278991228,4280100936,4283906335,4284826423,4282204243,4280043904,4281554035,4287661190,4284176216,4286215538,4286018159,4285556837,4284496940,4286929990,4286012752,4287272610,4280375951,4280050860,4279719314,4278264924,4279647867,4278664573,4279390349,4280839849,4280181411,4279248713,4278258455,4280767631,4280835992,4279253888,4280494149,4285352752,4283378461,4281152583,4280176773,4281422962,4287661703,4279439120,4288057742,4287597191,4281741097,4284431917,4287128139,4286735960,4287667370,4280047756,4280181929,4279784594,4278197844,4279318900,4279519112,4279390863,4280642213,4279851676,4280039003,4278192660,4279318125,4280111241,4279055739,4280822337,4286075705,4285220406,4281811544,4279980166,4281488757,4287596167,4279307021,4287859593,4288122764,4280754202,4284366637,4287062600,4287130459,4286812061,4279981965,4280247202,4280901793,4278198358,4279254390,4279848075,4279456910,4280444062,4279062160,4280697707,4278258195,4279185250,4280308107,4278660723,4281808202,4286996036,4285680955,4281549660,4279783303,4281554550,4287530374,4278780677,4288122765,4288056458,4280819482,4284300844,4286799428,4286932564,4285496203,4279916430,4280246686,4280309656,4278198101,4279188856,4279979661,4279193738,4280312476,4278601096,4281027444,4278191630,4279709531,4279780736,4278594415,4282991958,4286469179,4286207298,4281024344,4279980940,4281685625,4287530374,4280819490,4288056459,4287858822,4280622103,4283972395,4286470463,4287457878,4283916916,4280048275,4279918490,4279914897,4278330201,4279320442,4280177040,4279127691,4280246937,4278798475,4281225595,4278190860,4280366424,4279253367,4279120241,4284306788,4286798144,4286207552,4280827996,4279849354,4281751418,4287727496,4286280307,4288384911,4288319373,4281016861,4283775016,4286207037,4287457106,4283389544,4280113811,4280115614,4280243862,4278922854,4279188344,4280046224,4279193484,4279917718,4279325073,4281094526,4278519823,4278852407,4279384182,4279185774,4284898407,4286995523,4286273602,4281091940,4279915147,4282013820,4287727494,4288451219,4288384396,4288384396,4281279520,4283446310,4285812279,4287522127,4283783271,4279980682,4279984543,4280244116,4278330717,4279318649,4279850128,4279456656,4279654546,4279654038,4280568957,4278388237,4278192926,4279317360,4279185256,4285490284,4286929730,4286142270,4281092455,4279915149,4282210686,4287924360,4287793289,4288055431,4287858052,4281345313,4283512105,4285549109,4287522127,4284900463,4280702085,4279654035,4279651464,4278197846,4279187063,4279587726,4279719828,4279522962,4279851415,4280240507,4278190860,4278192148,4279053413,4279579242,4285620837,4286929216,4285944891,4281158250,4280046735,4282275963,4287990408,4287859080,4288055431,4287726466,4281345313,4283841071,4285352243,4287390541,4285688172,4282144893,4280572049,4278992760,4279054442,4278925174,4279259531,4279851415,4279392146,4279917721,4279780986,4278454291,4278192400,4279315040,4279644007,4285686622,4287126340,4285944637,4281618031,4280047505,4282275963,4287793027,4287990666,4288121224,4287858052,4281410336,4284235829,4285286196,4287258955,4286213227,4281350739,4281490059,4279253620,4280041337,4278926201,4279325581,4280048794,4279260305,4279655576,4279254903,4278257427,4278455311,4279182676,4280366703,4285883736,4287126340,4285944637,4281749619,4280179091,4282341756,4287464062,4287990408,4288384137,4287923845,4281476129,4284564794,4285023024,4287193162,4286606694,4284043614,4281814647,4280238714,4279910008,4279124606,4279655318,4280378018,4279195025,4279590296,4278729075,4278190864,4278455564,4278326591,4279510881,4286278232,4286994243,4285944380,4281749106,4280310677,4282341754,4287398782,4288319373,4288252808,4287923845,4281607715,4284631616,4284825646,4287258955,4286474333,4285817442,4282468967,4280697206,4279844215,4279125633,4279984540,4280904362,4279326613,4279787675,4278532467,4278191641,4278586380,4278193198,4279839069,4285949006,4286863170,4286010173,4281749104,4280311188,4282275963,4287596161,4287924615,4287727236,4287924615,4281541922,4284698949,4284365097,4287324489,4286605659,4285750097,4284373868,4280826725,4279844217,4279060610,4280181919,4280839337,4279326100,4280247713,4278730875,4278324774,4278256900,4278259751,4280693087,4285947977,4286797375,4286009919,4281749871,4280114836,4282210686,4287596159,4287858822,4287924615,4288319373,4281739301,4284568903,4284101671,4287323719,4286868057,4285354561,4285818988,4280364624,4279777911,4279520391,4280181919,4280576678,4279391895,4280181920,4279060610,4278192163,4278782217,4278192668,4280955479,4286210121,4286665789,4285943869,4281552491,4280181142,4282276479,4287596161,4287727236,4288187787,4288319373,4281936682,4284569419,4283773221,4286863940,4286801492,4284892978,4286409569,4280033599,4280040565,4279783050,4280247712,4280247715,4279589274,4280445605,4279587726,4278192937,4279044362,4278191638,4282269534,4286603337,4286599996,4285549111,4281486185,4280378269,4282342524,4287661441,4287727236,4288319373,4288253580,4281871659,4284438348,4283576358,4286468928,4286603597,4285155891,4286539346,4279571757,4279250790,4279848843,4280116126,4279852957,4279918496,4280643754,4279983254,4278524220,4278846470,4278256402,4282992219,4286931273,4286468410,4285548341,4281616742,4280114586,4282342522,4287464062,4287595650,4287924615,4288319373,4281871404,4284241482,4283314213,4286336828,4286734153,4285944891,4287129681,4279570722,4279119204,4279915149,4279918748,4279392665,4280181668,4280249255,4279721111,4278328131,4278977286,4278321163,4282596679,4286864451,4286402617,4285350707,4281484125,4280442524,4282473594,4287463292,4288056201,4287990408,4288121994,4281871917,4284176204,4283183141,4286205242,4286799689,4285680954,4287259725,4278978066,4279383403,4280047507,4279918748,4279326872,4280050595,4280315048,4280181919,4279184986,4278978056,4278584074,4283845709,4287127110,4286336824,4285218864,4281943391,4280440982,4282802045,4287594878,4287793029,4287661443,4287793029,4281806124,4284241997,4283118375,4285942070,4286667588,4285549630,4286863946,4284505446,4278858342,4280048277,4280050336,4279458460,4279853216,4279919777,4280050847,4280700029,4278716426,4278781706,4284635215,4286534973,4286271031,4285284657,4281941847,4281031060,4282999165,4287726207,4287793029,4287858822,4287793029,4281674538,4284242256,4283382062,4285612851,4286601025,4285352770,4285680190,4288190367,4278595942,4279917461,4280050593,4279524253,4279853216,4279918750,4280116386,4279582837,4278454028,4278715911,4284897609,4286336826,4286140215,4285218610,4280756797,4281357705,4283129722,4287594621,4288253580,4287990408,4288121994,4282002990,4284307792,4283514162,4285415472,4286272060,4285418824,4285286207,4288125603,4279122804,4279983000,4280247972,4279524253,4279721117,4279654038,4280313767,4278268524,4278521112,4278715395,4285093958,4286336315,4285877043,4284889645,4279571233,4280039266,4283193973,4287463292,4288187787,4287924615,4287990408,4282134576,4284241999,4283448884,4285415473,4285877304,4285156168,4284959039,4286217353,4278728048,4280377244,4280445351,4279392667,4279852703,4279586962,4280444842,4279321985,4278785575,4278583552,4285289795,4286336317,4285877043,4284692266,4279899166,4278192940,4283389552,4287068534,4288121994,4287990408,4288121994,4282331440,4284438608,4283383348,4284889899,4285680697,4284827455,4284434490,4285033342,4279122036,4280573597,4280576937,4279326874,4279786910,4279455117,4280050084,4280046226,4278193188,4279240456,4285748804,4286138683,4285745970,4284955438,4280424734,4278191904,4284375159,4287463292,4288121994,4288056201,4288121994,4282265647,4284635987,4283384120,4284495400,4285088560,4284497718,4283448622,4284572536,4279384695,4280573597,4280379558,4279392667,4280247204,4279783312,4279458206,4280112277,4278196792,4279108870,4286011460,4286138938,4285417775,4284692266,4280226579,4278848798,4284242797,4287594878,4288056201,4287858822,4287793029,4282003245,4284767575,4283450171,4284495916,4284825133,4284102700,4283054122,4283257448,4279055730,4280639644,4280116640,4279326874,4280707755,4279784081,4279392413,4279981461,4279975267,4278452224,4285813568,4286270781,4285220396,4284231715,4280686867,4278190090,4282005060,4287397501,4288187787,4287793029,4287727236,4282069038,4284701782,4283121722,4284628530,4284891439,4284562224,4283975485,4282139224,4279056243,4280377242,4279985054,4279261081,4280707755,4279652749,4279787941,4279981461,4280569209,4278518534,4285484603,4286008890,4285220655,4283968797,4280423435,4278518536,4284241244,4286740086,4288187787,4287924615,4287858822,4282266675,4284569942,4282793272,4284036907,4284628269,4284692527,4286277989,4281481807,4279320183,4280180890,4279787675,4279392667,4280641192,4278797697,4279985833,4279981974,4280307841,4278716685,4285156921,4285681206,4285352241,4284298019,4281738777,4280623908,4287332995,4287661190,4288056201,4287990408,4287793029,4282398260,4284504149,4282727479,4283379492,4284628269,4284430127,4287988609,4280890442,4279320696,4280378269,4279524503,4279655839,4280377507,4278206073,4280051626,4280048026,4279979651,4278191373,4285025081,4285812279,4285352241,4283771675,4284896841,4285623662,4287333249,4287858569,4287989638,4287989638,4287858567,4282398260,4284438357,4283056444,4283380007,4284956721,4284233521,4288514951,4280232512,4279518589,4280312217,4279721882,4279787423,4280311200,4278929798,4280117160,4279851676,4280374924,4278258971,4284892729,4286007863,4285482546,4283575068,4286410596,4287530376,4286806392,4287200639,4287923332,4287858052,4287990153,4282727479,4284833885,4283056444,4284104243,4285153846,4283773997,4288252549,4280232258,4279387003,4280312217,4279985054,4279853216,4279981722,4279325070,4280511148,4279786399,4280178061,4278392105,4284563766,4286204731,4285416242,4283706400,4285818718,4287003262,4287332736,4287069053,4287923843,4287857793,4287135099,4282201648,4284570713,4282990651,4285683532,4285220665,4282524446,4287660412,4280232005,4279518589,4280575389,4279853214,4280116388,4279521169,4279390863,4280116390,4279655326,4280375700,4278985274,4284367415,4286402110,4285482033,4282654225,4286805614,4287529604,4287135357,4287003260,4287660671,4287660414,4287135099,4282530613,4284702299,4282859578,4287526508,4285155901,4283841332,4287266167,4280232520,4279650690,4280838820,4279525019,4280182181,4279126411,4279851414,4279918496,4279523740,4279850385,4279973460,4283644467,4286138938,4285284654,4282983705,4285292377,4286937467,4286806391,4287266432,4287398271,4287594621,4287135097,4282332980,4284702299,4282859578,4288447869,4283907121,4288974215,4288187269,4280233036,4279584897,4280838820,4279656607,4280313767,4278929032,4280444064,4279589531,4279457945,4279587728,4280566891,4283382325,4286336317,4285219115,4282063119,4284042056,4287134330,4287069563,4287398016,4287464321,4287594367,4286938231,4282332980,4284570970,4282991678,4287856502,4285355852,4288054141,4287135095,4280168016,4279387518,4280509855,4279722400,4280642732,4278797446,4280641443,4278997137,4279260566,4279259278,4280698997,4283448892,4286533696,4285416494,4282589721,4281542694,4287134330,4286740598,4286674293,4287201663,4287265916,4286411633,4282991680,4284768349,4283255363,4287396723,4287922554,4287923584,4287989890,4280102739,4279716481,4280247453,4279590814,4280840109,4278600321,4280313248,4278798986,4279260566,4278930826,4280568443,4282923577,4286138425,4285416494,4282064149,4280424473,4287002743,4287069563,4287135099,4287005054,4287266432,4287201662,4281938992,4284505177,4283255363,4287660410,4288317826,4287134327,4287529339,4279840598,4280242825,4280313246,4279459741,4280708266,4278468735,4279852697,4278732936,4279392152,4279522963,4280239995,4282924094,4286204219,4285613619,4281802265,4279766802,4287200122,4286872438,4287200892,4286807934,4286608761,4286543732,4282400056,4284768349,4283190340,4287002993,4287134581,4287003511,4287265656,4279710554,4280506508,4280182171,4279657120,4280445094,4278666371,4279589525,4278666371,4279655578,4279654036,4280042875,4282924355,4286138683,4284890411,4280882704,4279044362,4287265915,4287004024,4287069306,4288979619,4289043615,4288385937,4282136884,4284505177,4282795582,4287793025,4287200890,4287200892,4287528828,4279777377,4280703885,4280247964,4279722913,4280313508,4278863750,4279326610,4278534015,4279918237,4280048024,4279845496,4282727752,4286139198,4284759342,4279567873,4278255618,4287134327,4286872438,4287069306,4288058517,4287531148,4288781465,4282136884,4284439384,4282268984,4291609532,4291675327,4287464321,4287594621,4280172653,4280770448,4280247966,4279525534,4279918750,4278930313,4279326611,4278796416,4280049307,4279784595,4279517044,4281676098,4285482813,4284628530,4278845440,4278190082,4287332476,4287070330,4287265915,4284966246,4283912790,4283517771,4282465849,4284570713,4282071605,4293386456,4293649117,4287135357,4287265402,4280371062,4280836241,4280116893,4279788706,4279655065,4279061899,4279458197,4279256710,4279983001,4279323790,4279188849,4281216582,4284365621,4283708974,4278846722,4278453254,4287069304,4286807158,4287068536,4286084211,4289769137,4288321173,4282531642,4284504920,4282137911,4292400331,4293254872,4287201150,4287660673,4280569472,4280836756,4280050846,4280117671,4279326098,4279259278,4279326870,4279584903,4280114586,4279455378,4279123315,4280625738,4283577907,4282657574,4278650118,4278781704,4286872438,4286741365,4287134329,4284965730,4291940819,4292071374,4282399543,4284373334,4282401083,4292597710,4293386456,4287135359,4287397501,4280504709,4280968342,4280050847,4280117671,4279457684,4279457170,4279261079,4279913611,4280245658,4279652759,4279189878,4280494930,4281803556,4280290569,4278519045,4280097050,4286938229,4287135869,4287200120,4282268215,4286809476,4291545030,4282465337,4284307541,4282664255,4292795089,4293255640,4287398531,4287069306,4280504968,4281033881,4279984800,4280380843,4279786649,4279588756,4279195286,4280176270,4279982486,4279586712,4279321721,4280101463,4280554778,4278976512,4278453511,4280622111,4286675057,4286938490,4286871155,4287465862,4284966757,4292203730,4282794302,4284504920,4282927427,4292137416,4293255640,4287398529,4286740858,4280242825,4280903067,4279853214,4280578222,4279522963,4279523477,4279063441,4280242063,4279784335,4279652759,4279453309,4280496998,4279108620,4278779904,4278190339,4279503630,4287004022,4286412400,4286871157,4291414211,4285690221,4291874765,4282991940,4284373593,4282992707,4292335565,4293057744,4287201149,4286611075,4280440717,4280969118,4279853467,4280446123,4279259537,4279655063,4279260818,4280045454,4279059329,4279652244,4279321212,4279709284,4278649099,4278978056,4278782478,4279899158,4287464573,4286543473,4286805364]; background(255, 255, 255); noStroke(); var getRGB = function(RGBValue){ RGBValue -= 2147483647; var B = RGBValue % 256; var G = ((RGBValue - B) >> 8) % 256; var R = ((RGBValue - B - G) >> 16) % 256; return [R,G,B]; }; // credit to http://stackoverflow.com/questions/596216/formula-to-determine-brightness-of-rgb-color Jive Dadson's answer for this code to determine the brightness of a color // luminance constants var rY = 0.212655; var gY = 0.715158; var bY = 0.072187; // Inverse of sRGB "gamma" function. (approx 2.2) var gam_sRGB = function(v) { if(v<=0.0031308) { v *= 12.92; } else { v = 1.055 * pow(v, 1.0/2.4) - 0.055; } return floor(v*255 + 0.5); }; // sRGB "gamma" function (approx 2.2) var inv_gam_sRGB = function(ic) { var c = ic/255.0; if (c <= 0.04045 ) { return c/12.92; } else { return pow((c+0.055)/1.055, 2.4); } }; // returns gamma-corrected brightness of an rgb value var getBrightness = function(r, g, b) { return gam_sRGB( rY*inv_gam_sRGB(r) + gY*inv_gam_sRGB(g) + bY*inv_gam_sRGB(b) ); }; var s = pictureArray[0]; // amt of pixels in picture textFont(createFont("Tahoma", 36), 36); frameRate(0); var draw = function() { var i = floor(random(1, pictureArray.length)); { var RGB = getRGB(pictureArray[i]); //var l = getBrightness(RGB[0], RGB[1], RGB[2]); fill(RGB[0],RGB[1],RGB[2], 127); var x = (i % s); var y = (i - i%s)/s; ellipse(x*13.8,y*3,20,8); } fill(127 + 127 * cos(millis()/10), 127 + 127 * sin(millis()/10), 127 - 127 * cos(millis()/10)); text("Awwwww\nYiss\nHappy\nBirthday", 10, 50); };