quine golf: make most of font 5x5, grid 67x67 4400B

This commit is contained in:
Crispy 2024-08-12 21:44:43 +02:00
parent 1b29290df2
commit 1a80acbe14
4 changed files with 11 additions and 11 deletions

View file

@ -158,7 +158,7 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
type: 3 type: 3
objectId: bab5c804-640f-445c-90c5-fda732b56ca6 objectId: bab5c804-640f-445c-90c5-fda732b56ca6
randomNum: 62965840 randomNum: 78440909
unityVersion: 2021.3.41f1 unityVersion: 2021.3.41f1
cckVersion: 3.10:132 cckVersion: 3.10:132
--- !u!114 &97266995 --- !u!114 &97266995

View file

@ -3,17 +3,17 @@ Shader"S"{SubShader{Pass{CGPROGRAM#pragma vertex a
#include"UnityCG.cginc" #include"UnityCG.cginc"
#define g const uint #define g const uint
struct A{float4 v:POSITION;float2 u:TEXCOORD0;UNITY_VERTEX_INPUT_INSTANCE_ID};struct V{float2 u:TEXCOORD0;float4 v:SV_POSITION;UNITY_VERTEX_OUTPUT_STEREO};V a(A v){V o;UNITY_SETUP_INSTANCE_ID(v);UNITY_INITIALIZE_OUTPUT(V,o);UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);o.v=UnityObjectToClipPos(v.v);o.u=v.u;return o;}float3 f(V U):SV_Target{ struct A{float4 v:POSITION;float2 u:TEXCOORD0;UNITY_VERTEX_INPUT_INSTANCE_ID};struct V{float2 u:TEXCOORD0;float4 v:SV_POSITION;UNITY_VERTEX_OUTPUT_STEREO};V a(A v){V o;UNITY_SETUP_INSTANCE_ID(v);UNITY_INITIALIZE_OUTPUT(V,o);UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);o.v=UnityObjectToClipPos(v.v);o.u=v.u;return o;}float3 f(V U):SV_Target{
g t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc251,0x22a4ccf8,0x24a26b0d,0x718915e0,0x3bdc4407,0x40a4f48d,0x5cc90e40,0x67f27ee5,0x0125aeee,0x2fded81e,0x7ba20d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7dd7e131,0x8802215d,0x793c7eb0,0x7ad99288,0x76b88a6f,0x7aea15b0,0x85a02346,0x3401d0e0,0x8bde4d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7d04286b,0x5ced1bbf,0x3025cfee,0x2fded81e,0x7ba4b2d0,0x79543a04,0x4850f4c8,0x4a92c0fb,0x79586a84,0x48664053,0x8b2a258f,0x0126f369,0x016c68a2,0x76b44093,0x80770b08,0x76b88a6f,0x7aea15b0,0x85a69ff3,0x6a865f87,0x8a33f131,0x7628343e,0x80ac7ba1,0x3e5dcba9,0x2d5f4c1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x8a7a6d41,0x8097918b,0x78689288,0x2fe6ed44,0x4b0f80f3,0x71b140db,0x62ec13de,0x1f417b36,0x790b1049,0x53c9d65b,0x5bb83ff3,0x71affbd5,0x6e9d819f,0x5d839980,0x71e21f2a,0x70a7a740,0x28e2812b,0x93ed1d08,0x77f907ff,0x5d7d89f0,0x5ec855c7,0x8f2c49f0,0x1f38af31,0x7db71b43,0xa0bace31,0x2c1a0a54,0x18b85439,0x2c021d57,0x0c5cf151,0x2c09ee45,0x11564995,0x2c09ee45,0x13afc0e7,0x2c1172aa,0x07919a91,0x2c20fa97,0x02895299,0x2c0989f7,0x05023be3,0x2c2112a9,0x0a0a9d83,0x2c09ee96,0x077a5bf5,0x2c09a2a3,0x09cccaa3,0x2c09a252,0x1618efa7,0x2c11bfd5,0x05289ca2,0x11368ce5,0x0c3e92f8,0x13a06af5,0x160292f2,0x04fa0838,0x115f1393,0x05211921,0x0c3e9527,0x0c3d1bf5,0x2c0205a2,0x0c73b252,0x0edd2fe2,0x09ebf292,0x164036a2,0x18b118f1,0x2c11bf31,0x09cbebd1,0x2c020635,0x05114631,0x2c40e992,0x13becea3,0x0c5ca799,0x113e2ea7,0x09e35b34,0x02fe1fd8,0x11372297,0x0cc21f82,0x077abff8,0x07dfec95,0x0ed5a859,0x16861fd9,0x0518fd86,0x07dfeba2,0x02affe44,0x11a4392a,0x0c5c5e28,0x11a40639,0x0c3dcd23,0x02fe0542,0x078a7952,0x04fa6af4,0x052102a4,0x16111ff5,0x2c219185,0x077bd485,0x0eb65131,0x1685ed88,0x02bfd224,0x02fdec49,0x163f6ea2,0x09eb8da9,0x163f6ea3,0x02a090e7,0x0eb5f0a4,0x04f26942,0x0a1270a6,0x1155fdf7,0x2c01ede2,0x1146dbe8,0x13c07392,0x18918e43,0x2c19d991,0x187a9c39,0x2c01ba95,0x0eb6522a,0x07e03922,0x02a7fce7,0x02fe1daa,0x0c5c76e2,0x0eae4eea,0x0ef48642,0x0eec8256,0x07a1cf62,0x04ea7ff2,0x02a02de2,0x0eed32e9,0x09cc4d62,0x0c7b6ea6,0x164031a9,0x0edccea8,0x05209956,0x0c5dd391,0x0c7b84d4,0x0299d2f1,0x18b902e8,0x079b1345,0x113708f9,0x02fdd255,0x1637b252,0x04fb32a5,0x11659e91,0x02fded39,0x13907fa3,0x0cc1eb54,0x0c8353e3,0x02fdeb56,0x11468ff6,0x11a43655,0x0ef4b799,0x1685d257,0x07919b83,0x2c19c0e8,0x051130a5,0x187a36f1,0x2c30b3e7,0x1891d902,0x13a06be6,0x05303ea2,0x09fb159a,0x1610f2aa,0x0ee49aea,0x07e03796,0x0a126d38,0x07e55a17,0x285ca196,0x075665db,0x6e9f263a,0x7db614f8,0x5cc74ac9,0x2c613342,0x83549021,0x7e36e1cd,0x6cfe84e5,0xaa42a216,0x8822663a,0x7db7b63b,0x6649db08,0xb10f7247,0x1896f357,0x24200016,0x1f27faa2,0x7db7b63b,0x2468adcd,0x9b9d6519,0x0e107dd3,0x5fb0522f,0x0141f27e,0x9bbb628c,0x21a96503,0x5fb0522f,0x006bc996,0xa08206ec,0x94c622e2,0xaf878578,0xacb8b7a6,0x092ecabc,0x948fd008,0x0516d192,0x7db95eda,0x3ff17be0,0x915242fc,0x66420843,0x09f0173d,0x9afe461b,0x10aea02e,0x3516085f,0x103887d5,0x7dca22cc,0x220d19d1,0x7cefddb9,0x04052667,0x9b9f503c,0xac99a147,0x7e274992,0x6e68b6cc,0xa63fb745,0x25ca3eb8,0x0211cd52,0xaf8783d5,0x885ae908,0x06fb13d9,0x107fc76a,0x807fee8c,0x8f64ca00,}; g t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc251,0x22a4ccf8,0x24a26b0d,0x718915e0,0x3bdc4407,0x40a4f48d,0x5cc90e40,0x67f27ee5,0x0125aeee,0x2fded81e,0x7ba20d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7dd7e131,0x8802215d,0x793c7eb0,0x7ad99288,0x76b88a6f,0x7aea15b0,0x85a02346,0x3401d0e0,0x8bde4d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7d04286b,0x5ced1bbf,0x3025cfee,0x2fded81e,0x7ba4b2d0,0x79543a04,0x4850f4c8,0x4a92c0fb,0x79586a84,0x48664053,0x8b2a258f,0x0126f369,0x016c68a2,0x76b44093,0x80770b08,0x76b88a6f,0x7aea15b0,0x85a69ff3,0x6a865f87,0x8a33f131,0x7628343e,0x80ac7ba1,0x3e5dcba9,0x2d5f4c1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x8a7a6d41,0x8097918b,0x78689288,0x2fe6ed44,0x4b0f80f3,0x71b140db,0x62ec13de,0x1f417b36,0x790b1049,0x53c9d65b,0x5bb83ff3,0x71affbd5,0x6e9d819f,0x5d839980,0x71e21f2a,0x70a7a740,0x28e2812b,0x93ed1d08,0x77f907ff,0x5d7d89f0,0x5ec855c7,0x8f2c49f0,0x1f38af31,0x7db71b43,0xa0bace31,0x2c023743,0x0c83e9a2,0x0c553be2,0x0eaf9487,0x02b7b638,0x2c312f59,0x0eecb9aa,0x13afda83,0x02fdd3e8,0x115e324a,0x2c291542,0x115e04a2,0x0ef51b9a,0x0c6d7487,0x0c4506d3,0x2c295f51,0x18a164a7,0x0edd91f4,0x1685d259,0x163f6b92,0x0530ea38,0x02fe8337,0x0ec63a62,0x114dc9a8,0x13b0d2a4,0x05217d28,0x02fe0452,0x0782ada2,0x09ecd2a5,0x13989af4,0x18f6d259,0x163f6c32,0x05310383,0x02fdd259,0x0501be91,0x2c195d33,0x18b06ea4,0x02988e41,0x2c313093,0x0509aba7,0x09e35b34,0x02fdd3e3,0x0a0b1853,0x2c021f83,0x113e8f42,0x13bf2df5,0x02c0e2a6,0x07827659,0x11a450ea,0x111f9952,0x05291943,0x0ef489a2,0x051112f9,0x04eb9344,0x04fa2184,0x2c01ee23,0x09d469a2,0x04f29be4,0x2c026a84,0x07dfec43,0x16302ea2,0x0792485a,0x11658462,0x13afc0f2,0x0c459cd6,0x09dd3435,0x078a7a37,0x2c40e992,0x111f84a6,0x1155fdf7,0x2c01ede2,0x075b7fa2,0x1685d342,0x075aeea2,0x0c7b83e4,0x13b0d343,0x113e42a6,0x11a3d4d5,0x13909856,0x2c0204a3,0x0299d2a6,0x13bf9333,0x0a50d4d2,0x0ee57a56,0x2c11a4aa,0x02b07fa2,0x16193b43,0x075c9342,0x2c028291,0x02a0c162,0x076aed57,0x0c4e3393,0x11279be7,0x2c198f35,0x1871eea2,0x02b79c92,0x0f3304f8,0x139fa522,0x2c19a923,0x027a94d4,0x18a8b343,0x2c2915ea,0x04f1bea7,0x0c4d2186,0x1685d3e8,0x115dff5a,0x2c11a4f1,0x18a272a5,0x0ed54642,0x0c8353e3,0x02fdebf4,0x11465f42,0x13a06be6,0x05303ea5,0x0789cc24,0x07e09be8,0x02a0db02,0x05209a94,0x0ebda7da,0x7db54d4e,0x1c042b22,0x9b235cc4,0x115a8748,0x6555360d,0x2d341672,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73df77,0x133f5204,0x115a8759,0x28e1076f,0x1f859519,0x09ebf31c,0x395921eb,0x663d1f0a,0x04f6a759,0x28de64d3,0x92e7c97e,0xb473e005,0x067443da,0x3fef3ce0,0x907e9ab2,0x044718b2,0x178b43da,0x3fef344f,0x913a4b99,0xab49b372,0x06eca56b,0x905068ab,0x24513e08,0x1562b145,0x94aeb41c,0xa889a76a,0x25e9aec7,0x649bd017,0x1f24d71f,0x09cc1d13,0x5fa2c321,0x66639ad3,0x28797f99,0xb696d619,0xb2651815,0xaa4b1caf,0x1605cf5a,0x9a15792a,0x60eae992,0x6f3ba76c,0xa63fbbcf,0x91190a96,0x83406663,0x5fdc92f8,0x347d9531,0x21c7a56b,0x83858446,0x94aec77b,0x839ff8f3,0x610143d6,0x42cb7c5a,};
g b=460; g b=460;
g F[]={0,490399168,140644800,243467744,243474656,311927040,504602848,202613952,511838272,244524224,211230912,210183616,34841824,6325440,277292480,211256768,421759040,9640224,134,471015648,34841888,198720,346030080,136415360,9741760,244548640,6330630,487638464,471246272,244557088,488162752,211074336,599442976,368409920,3312673,12923174,382624,567424,74516608,277096930,238880,134418880,205656512,311731392,567426,128,6595776,4194432,474091968,1044516992,591062560,4194438,504595936,581052960,106210528,588583040,480,588818560,71700544,404818304,209985728,34637280,1048710112,14694400,268706124,203491520,205656256,504595488,10627072,4657152,491520,71569472,72955190,136349824,9570592,545392672,}; g F[]={0,15324974,4395150,7608367,7608583,9747720,15768839,6331686,15994946,7641382,6600966,6568238,1088807,197670,8665390,6601774,13179970,301257,134,14719239,1088809,198720,10813440,4262980,304430,7642145,6330630,15238702,14726446,7642409,15255086,6596073,18732593,11512810,3312673,12923174,11953,17732,2328644,277096930,7465,4198532,6426766,9741606,567426,128,206118,131200,14815374,32641156,18470705,131204,15768623,18157905,3319079,18393220,31,18400580,2240642,4261956,4464900,1082415,32772191,459200,8397132,6359110,6426758,15768609,332096,145536,491520,2236546,72955190,4260932,9570592,17043521,};
float2 p=U.u*69; float2 p=U.u*67;
uint c,i,d,Y,X=p.x;Y=p.y;i=X+(68-Y)*69; uint c,i,d,Y,X=p.x;Y=p.y;i=X+(66-Y)*67;
if(i>=b&&i<3694){ if(i>=b&&i<3485){
d=(i-b)%11; d=(i-b)%11;
if(d<2)c=(d<<4)+1; if(d<2)c=(d<<4)+1;
else if(d==10)c=18; else if(d==10)c=18;
else c=(t[(i-b)/11]>>((7-((d-2)&7))*4)&15)+1; else c=(t[(i-b)/11]>>((7-((d-2)&7))*4)&15)+1;
}else{if(i>b)i-=3234; }else{if(i>b)i-=3025;
c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;} c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;}
Y=(p.y-Y)*6;X=(p.x-X)*6; Y=(p.y-Y)*6;X=(p.x-X)*6;
return F[c]>>(X+Y*5)&1*(X<5); return F[c]>>(X+Y*5)&1*(X<5);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

View file

@ -1,5 +1,5 @@
g t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc251,0x22a4ccf8,0x24a26b0d,0x718915e0,0x3bdc4407,0x40a4f48d,0x5cc90e40,0x67f27ee5,0x0125aeee,0x2fded81e,0x7ba20d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7dd7e131,0x8802215d,0x793c7eb0,0x7ad99288,0x76b88a6f,0x7aea15b0,0x85a02346,0x3401d0e0,0x8bde4d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7d04286b,0x5ced1bbf,0x3025cfee,0x2fded81e,0x7ba4b2d0,0x79543a04,0x4850f4c8,0x4a92c0fb,0x79586a84,0x48664053,0x8b2a258f,0x0126f369,0x016c68a2,0x76b44093,0x80770b08,0x76b88a6f,0x7aea15b0,0x85a69ff3,0x6a865f87,0x8a33f131,0x7628343e,0x80ac7ba1,0x3e5dcba9,0x2d5f4c1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x8a7a6d41,0x8097918b,0x78689288,0x2fe6ed44,0x4b0f80f3,0x71b140db,0x62ec13de,0x1f417b36,0x790b1049,0x53c9d65b,0x5bb83ff3,0x71affbd5,0x6e9d819f,0x5d839980,0x71e21f2a,0x70a7a740,0x28e2812b,0x93ed1d08,0x77f907ff,0x5d7d89f0,0x5ec855c7,0x8f2c49f0,0x1f38af31,0x7db71b43,0xa0bace31,0x2c1a0a54,0x18b85439,0x2c021d57,0x0c5cf151,0x2c09ee45,0x11564995,0x2c09ee45,0x13afc0e7,0x2c1172aa,0x07919a91,0x2c20fa97,0x02895299,0x2c0989f7,0x05023be3,0x2c2112a9,0x0a0a9d83,0x2c09ee96,0x077a5bf5,0x2c09a2a3,0x09cccaa3,0x2c09a252,0x1618efa7,0x2c11bfd5,0x05289ca2,0x11368ce5,0x0c3e92f8,0x13a06af5,0x160292f2,0x04fa0838,0x115f1393,0x05211921,0x0c3e9527,0x0c3d1bf5,0x2c0205a2,0x0c73b252,0x0edd2fe2,0x09ebf292,0x164036a2,0x18b118f1,0x2c11bf31,0x09cbebd1,0x2c020635,0x05114631,0x2c40e992,0x13becea3,0x0c5ca799,0x113e2ea7,0x09e35b34,0x02fe1fd8,0x11372297,0x0cc21f82,0x077abff8,0x07dfec95,0x0ed5a859,0x16861fd9,0x0518fd86,0x07dfeba2,0x02affe44,0x11a4392a,0x0c5c5e28,0x11a40639,0x0c3dcd23,0x02fe0542,0x078a7952,0x04fa6af4,0x052102a4,0x16111ff5,0x2c219185,0x077bd485,0x0eb65131,0x1685ed88,0x02bfd224,0x02fdec49,0x163f6ea2,0x09eb8da9,0x163f6ea3,0x02a090e7,0x0eb5f0a4,0x04f26942,0x0a1270a6,0x1155fdf7,0x2c01ede2,0x1146dbe8,0x13c07392,0x18918e43,0x2c19d991,0x187a9c39,0x2c01ba95,0x0eb6522a,0x07e03922,0x02a7fce7,0x02fe1daa,0x0c5c76e2,0x0eae4eea,0x0ef48642,0x0eec8256,0x07a1cf62,0x04ea7ff2,0x02a02de2,0x0eed32e9,0x09cc4d62,0x0c7b6ea6,0x164031a9,0x0edccea8,0x05209956,0x0c5dd391,0x0c7b84d4,0x0299d2f1,0x18b902e8,0x079b1345,0x113708f9,0x02fdd255,0x1637b252,0x04fb32a5,0x11659e91,0x02fded39,0x13907fa3,0x0cc1eb54,0x0c8353e3,0x02fdeb56,0x11468ff6,0x11a43655,0x0ef4b799,0x1685d257,0x07919b83,0x2c19c0e8,0x051130a5,0x187a36f1,0x2c30b3e7,0x1891d902,0x13a06be6,0x05303ea2,0x09fb159a,0x1610f2aa,0x0ee49aea,0x07e03796,0x0a126d38,0x07e55a17,0x285ca196,0x075665db,0x6e9f263a,0x7db614f8,0x5cc74ac9,0x2c613342,0x83549021,0x7e36e1cd,0x6cfe84e5,0xaa42a216,0x8822663a,0x7db7b63b,0x6649db08,0xb10f7247,0x1896f357,0x24200016,0x1f27faa2,0x7db7b63b,0x2468adcd,0x9b9d6519,0x0e107dd3,0x5fb0522f,0x0141f27e,0x9bbb628c,0x21a96503,0x5fb0522f,0x006bc996,0xa08206ec,0x94c622e2,0xaf878578,0xacb8b7a6,0x092ecabc,0x948fd008,0x0516d192,0x7db95eda,0x3ff17be0,0x915242fc,0x66420843,0x09f0173d,0x9afe461b,0x10aea02e,0x3516085f,0x103887d5,0x7dca22cc,0x220d19d1,0x7cefddb9,0x04052667,0x9b9f503c,0xac99a147,0x7e274992,0x6e68b6cc,0xa63fb745,0x25ca3eb8,0x0211cd52,0xaf8783d5,0x885ae908,0x06fb13d9,0x107fc76a,0x807fee8c,0x8f64ca00,}; g t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc251,0x22a4ccf8,0x24a26b0d,0x718915e0,0x3bdc4407,0x40a4f48d,0x5cc90e40,0x67f27ee5,0x0125aeee,0x2fded81e,0x7ba20d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7dd7e131,0x8802215d,0x793c7eb0,0x7ad99288,0x76b88a6f,0x7aea15b0,0x85a02346,0x3401d0e0,0x8bde4d4e,0x1c042b18,0x7442f4ab,0x4a2b45e1,0x7d04286b,0x5ced1bbf,0x3025cfee,0x2fded81e,0x7ba4b2d0,0x79543a04,0x4850f4c8,0x4a92c0fb,0x79586a84,0x48664053,0x8b2a258f,0x0126f369,0x016c68a2,0x76b44093,0x80770b08,0x76b88a6f,0x7aea15b0,0x85a69ff3,0x6a865f87,0x8a33f131,0x7628343e,0x80ac7ba1,0x3e5dcba9,0x2d5f4c1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x8a7a6d41,0x8097918b,0x78689288,0x2fe6ed44,0x4b0f80f3,0x71b140db,0x62ec13de,0x1f417b36,0x790b1049,0x53c9d65b,0x5bb83ff3,0x71affbd5,0x6e9d819f,0x5d839980,0x71e21f2a,0x70a7a740,0x28e2812b,0x93ed1d08,0x77f907ff,0x5d7d89f0,0x5ec855c7,0x8f2c49f0,0x1f38af31,0x7db71b43,0xa0bace31,0x2c023743,0x0c83e9a2,0x0c553be2,0x0eaf9487,0x02b7b638,0x2c312f59,0x0eecb9aa,0x13afda83,0x02fdd3e8,0x115e324a,0x2c291542,0x115e04a2,0x0ef51b9a,0x0c6d7487,0x0c4506d3,0x2c295f51,0x18a164a7,0x0edd91f4,0x1685d259,0x163f6b92,0x0530ea38,0x02fe8337,0x0ec63a62,0x114dc9a8,0x13b0d2a4,0x05217d28,0x02fe0452,0x0782ada2,0x09ecd2a5,0x13989af4,0x18f6d259,0x163f6c32,0x05310383,0x02fdd259,0x0501be91,0x2c195d33,0x18b06ea4,0x02988e41,0x2c313093,0x0509aba7,0x09e35b34,0x02fdd3e3,0x0a0b1853,0x2c021f83,0x113e8f42,0x13bf2df5,0x02c0e2a6,0x07827659,0x11a450ea,0x111f9952,0x05291943,0x0ef489a2,0x051112f9,0x04eb9344,0x04fa2184,0x2c01ee23,0x09d469a2,0x04f29be4,0x2c026a84,0x07dfec43,0x16302ea2,0x0792485a,0x11658462,0x13afc0f2,0x0c459cd6,0x09dd3435,0x078a7a37,0x2c40e992,0x111f84a6,0x1155fdf7,0x2c01ede2,0x075b7fa2,0x1685d342,0x075aeea2,0x0c7b83e4,0x13b0d343,0x113e42a6,0x11a3d4d5,0x13909856,0x2c0204a3,0x0299d2a6,0x13bf9333,0x0a50d4d2,0x0ee57a56,0x2c11a4aa,0x02b07fa2,0x16193b43,0x075c9342,0x2c028291,0x02a0c162,0x076aed57,0x0c4e3393,0x11279be7,0x2c198f35,0x1871eea2,0x02b79c92,0x0f3304f8,0x139fa522,0x2c19a923,0x027a94d4,0x18a8b343,0x2c2915ea,0x04f1bea7,0x0c4d2186,0x1685d3e8,0x115dff5a,0x2c11a4f1,0x18a272a5,0x0ed54642,0x0c8353e3,0x02fdebf4,0x11465f42,0x13a06be6,0x05303ea5,0x0789cc24,0x07e09be8,0x02a0db02,0x05209a94,0x0ebda7da,0x7db54d4e,0x1c042b22,0x9b235cc4,0x115a8748,0x6555360d,0x2d341672,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73df77,0x133f5204,0x115a8759,0x28e1076f,0x1f859519,0x09ebf31c,0x395921eb,0x663d1f0a,0x04f6a759,0x28de64d3,0x92e7c97e,0xb473e005,0x067443da,0x3fef3ce0,0x907e9ab2,0x044718b2,0x178b43da,0x3fef344f,0x913a4b99,0xab49b372,0x06eca56b,0x905068ab,0x24513e08,0x1562b145,0x94aeb41c,0xa889a76a,0x25e9aec7,0x649bd017,0x1f24d71f,0x09cc1d13,0x5fa2c321,0x66639ad3,0x28797f99,0xb696d619,0xb2651815,0xaa4b1caf,0x1605cf5a,0x9a15792a,0x60eae992,0x6f3ba76c,0xa63fbbcf,0x91190a96,0x83406663,0x5fdc92f8,0x347d9531,0x21c7a56b,0x83858446,0x94aec77b,0x839ff8f3,0x610143d6,0x42cb7c5a,};
g b=460; g b=460;
uint magic_number_L_plus_b= 3694; uint magic_number_L_plus_b= 3485;
uint magic_number_L= 3234; uint magic_number_L= 3025;
g F[]={0,490399168,140644800,243467744,243474656,311927040,504602848,202613952,511838272,244524224,211230912,210183616,34841824,6325440,277292480,211256768,421759040,9640224,134,471015648,34841888,198720,346030080,136415360,9741760,244548640,6330630,487638464,471246272,244557088,488162752,211074336,599442976,368409920,3312673,12923174,382624,567424,74516608,277096930,238880,134418880,205656512,311731392,567426,128,6595776,4194432,474091968,1044516992,591062560,4194438,504595936,581052960,106210528,588583040,480,588818560,71700544,404818304,209985728,34637280,1048710112,14694400,268706124,203491520,205656256,504595488,10627072,4657152,491520,71569472,72955190,136349824,9570592,545392672,}; g F[]={0,15324974,4395150,7608367,7608583,9747720,15768839,6331686,15994946,7641382,6600966,6568238,1088807,197670,8665390,6601774,13179970,301257,134,14719239,1088809,198720,10813440,4262980,304430,7642145,6330630,15238702,14726446,7642409,15255086,6596073,18732593,11512810,3312673,12923174,11953,17732,2328644,277096930,7465,4198532,6426766,9741606,567426,128,206118,131200,14815374,32641156,18470705,131204,15768623,18157905,3319079,18393220,31,18400580,2240642,4261956,4464900,1082415,32772191,459200,8397132,6359110,6426758,15768609,332096,145536,491520,2236546,72955190,4260932,9570592,17043521,};