From 33e97fc07b971d3f6dae7d2a76d6d8b83da1d764 Mon Sep 17 00:00:00 2001 From: CrispyPin Date: Tue, 13 Aug 2024 17:39:42 +0200 Subject: [PATCH 1/4] quine shader cleanup and shorten to 100x200, 19484B --- Assets/test/TestProps.unity | 164 ++++++++++++++++++++++++++++++- Assets/test/quine.shader | 189 ++++++++++++++++-------------------- text_shader/out.h | 9 +- text_shader/src/main.rs | 24 +++-- 4 files changed, 257 insertions(+), 129 deletions(-) diff --git a/Assets/test/TestProps.unity b/Assets/test/TestProps.unity index 4183ed0..a111406 100644 --- a/Assets/test/TestProps.unity +++ b/Assets/test/TestProps.unity @@ -158,7 +158,7 @@ MonoBehaviour: m_EditorClassIdentifier: type: 3 objectId: bab5c804-640f-445c-90c5-fda732b56ca6 - randomNum: 78440909 + randomNum: 87404118 unityVersion: 2021.3.41f1 cckVersion: 3.10:132 --- !u!114 &97266995 @@ -1367,14 +1367,170 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1500710831} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1, z: -10} + m_LocalRotation: {x: 0, y: 1, z: 0, w: 0} + m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} +--- !u!1 &1557152369 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1557152376} + - component: {fileID: 1557152375} + - component: {fileID: 1557152374} + - component: {fileID: 1557152373} + - component: {fileID: 1557152372} + - component: {fileID: 1557152371} + - component: {fileID: 1557152370} + m_Layer: 0 + m_Name: QuineGolfSurface + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1557152370 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1557152369} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 990f6f4efb7f4ec98ad99f6dff1bc6f6, type: 3} + m_Name: + m_EditorClassIdentifier: + type: 3 + objectId: bab5c804-640f-445c-90c5-fda732b56ca6 + randomNum: 87404118 + unityVersion: 2021.3.41f1 + cckVersion: 3.10:132 +--- !u!114 &1557152371 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1557152369} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a37fd8d654d5c2840a0ab3a5ad65a5ae, type: 3} + m_Name: + m_EditorClassIdentifier: + spawnHeight: 0 + useAdditionalValues: 0 + syncValues: [] + propPrivacy: 1 + subSyncs: [] + spawnableType: 0 + preGeneratedInstanceId: +--- !u!114 &1557152372 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1557152369} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 12974925555b471580cacf5d2d5fa9e3, type: 3} + m_Name: + m_EditorClassIdentifier: + gripType: 1 + gripOrigin: {fileID: 0} + disallowTheft: 0 + maximumGrabDistance: 0 + snappingReferences: [] + autoHold: 0 + updateWithPhysics: 1 + ikReference: {fileID: 0} +--- !u!65 &1557152373 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1557152369} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 0.05} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1557152374 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1557152369} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a912cfd0d29b182919c919ffe9311039, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1557152375 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1557152369} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1557152376 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1557152369} + m_LocalRotation: {x: 0, y: 1, z: 0, w: 0} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 11 + m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} --- !u!1001 &2026983552 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Assets/test/quine.shader b/Assets/test/quine.shader index e78c28c..e94681b 100644 --- a/Assets/test/quine.shader +++ b/Assets/test/quine.shader @@ -1,112 +1,87 @@ Shader "CrispyPin/Quine" { // https://git.crispypin.cc/CrispyPin/cvr-props/src/branch/main/Assets/test/quine.shader - Properties {} - SubShader { - Tags { "RenderType" = "Opaque" } - LOD 100 - Pass { - CGPROGRAM - #pragma vertex vert - #pragma fragment frag +SubShader { Pass { +CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #include "UnityCG.cginc" + #define ROWS 100 + #define COLS ROWS*2 - #include "UnityCG.cginc" + struct appdata { + float4 vertex : POSITION; + float2 uv : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + struct v2f { + float2 uv : TEXCOORD0; + float4 vertex : SV_POSITION; + UNITY_VERTEX_OUTPUT_STEREO + }; - #define ROWS 104 - #define COLS ROWS*2 - - struct appdata { - float4 vertex : POSITION; - float2 uv : TEXCOORD0; - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - struct v2f { - float2 uv : TEXCOORD0; - float4 vertex : SV_POSITION; - UNITY_VERTEX_OUTPUT_STEREO - }; - - v2f vert (appdata v) { - v2f o; - UNITY_SETUP_INSTANCE_ID(v); - UNITY_INITIALIZE_OUTPUT(v2f, o); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); - o.vertex = UnityObjectToClipPos(v.vertex); - o.uv = v.uv; - return o; - } - - float3 bg(uint charx, uint chary) { - return ((charx + chary) & 1) * 0.03 + 0.03; - } - - float3 frag (v2f i) : SV_Target { - // write as 'const uint text[] = {?};' before export - const uint text[] = {0x33484144,0x45520002,0x23524953,0x50593049,0x4e0f3155,0x494e4502,0x005b5f0f,0x0f004854,0x5450531a,0x0f0f4749,0x540e4352,0x49535059,0x50494e0e,0x43430f23,0x52495350,0x5930494e,0x0f435652,0x0d50524f,0x50530f53,0x52430f42,0x52414e43,0x480f4d41,0x494e0f21,0x53534554,0x530f5445,0x53540f51,0x55494e45,0x0e534841,0x4445525f,0x6030524f,0x50455254,0x49455300,0x5b5d5f60,0x33554233,0x48414445,0x52005b5f,0x60603441,0x4753005b,0x00023245,0x4e444552,0x34595045,0x02001d00,0x022f5041,0x51554502,0x005d5f60,0x602c2f24,0x00111010,0x5f606030,0x41535300,0x5b5f6060,0x60232730,0x322f2732,0x212d5f60,0x60600350,0x5241474d,0x41005645,0x52544558,0x00564552,0x545f6060,0x60035052,0x41474d41,0x00465241,0x474d454e,0x54004652,0x41475f5f,0x60606003,0x494e434c,0x55444500,0x02354e49,0x54592327,0x0e434749,0x4e43025f,0x5f606060,0x03444546,0x494e4500,0x322f3733,0x00111014,0x5f606060,0x03444546,0x494e4500,0x232f2c33,0x00322f37,0x330a125f,0x5f606060,0x53545255,0x43540041,0x50504441,0x5441005b,0x5f606060,0x60464c4f,0x41541400,0x56455254,0x4558001a,0x00302f33,0x2934292f,0x2e1b5f60,0x60606046,0x4c4f4154,0x12005556,0x001a0034,0x2538232f,0x2f322410,0x1b5f6060,0x6060352e,0x2934393f,0x36253234,0x25383f29,0x2e303534,0x3f292e33,0x34212e23,0x253f2924,0x5f606060,0x5d1b5f5f,0x60606053,0x54525543,0x54005612,0x46005b5f,0x60606060,0x464c4f41,0x54120055,0x56001a00,0x34253823,0x2f2f3224,0x101b5f60,0x60606046,0x4c4f4154,0x14005645,0x52544558,0x001a0033,0x363f302f,0x33293429,0x2f2e1b5f,0x60606060,0x352e2934,0x393f3625,0x32342538,0x3f2f3534,0x3035343f,0x33342532,0x252f5f60,0x60605d1b,0x5f5f6060,0x60561246,0x00564552,0x54000841,0x50504441,0x54410056,0x09005b5f,0x60606060,0x56124600,0x4f1b5f60,0x60606035,0x2e293439,0x3f332534,0x35303f29,0x2e333421,0x2e23253f,0x29240856,0x091b5f60,0x60606035,0x2e293439,0x3f292e29,0x3429212c,0x293a253f,0x2f353430,0x35340856,0x12460c00,0x4f091b5f,0x60606060,0x352e2934,0x393f292e,0x29342921,0x2c293a25,0x3f362532,0x3425383f,0x2f353430,0x35343f33,0x34253225,0x2f084f09,0x1b5f6060,0x60604f0e,0x56455254,0x4558001d,0x00354e49,0x54592f42,0x4a454354,0x344f234c,0x4950304f,0x5308560e,0x56455254,0x4558091b,0x5f606060,0x604f0e55,0x56001d00,0x560e5556,0x1b5f6060,0x60605245,0x5455524e,0x004f1b5f,0x6060605d,0x5f5f6060,0x60464c4f,0x41541300,0x42470855,0x494e5400,0x43484152,0x580c0055,0x494e5400,0x43484152,0x5909005b,0x5f606060,0x60524554,0x55524e00,0x08084348,0x41525800,0x0b004348,0x41525909,0x00060011,0x09000a00,0x100e1013,0x000b0010,0x0e10131b,0x5f606060,0x5d5f5f60,0x6060464c,0x4f415413,0x00465241,0x47000856,0x12460049,0x09001a00,0x33363f34,0x41524745,0x54005b5f,0x60606060,0x0f0f0057,0x52495445,0x00415300,0x07434f4e,0x53540055,0x494e5400,0x54455854,0x3b3d001d,0x005b1f5d,0x1b070042,0x45464f52,0x45004558,0x504f5254,0x5f606060,0x60434f4e,0x53540055,0x494e5400,0x54455854,0x3b3d001d,0x005b1f5d,0x1b5f6060,0x6060434f,0x4e535400,0x55494e54,0x00544558,0x543f4c45,0x4e001d00,0x11141412,0x1b5f6060,0x6060434f,0x4e535400,0x55494e54,0x00424c4f,0x423f5354,0x41525400,0x1d001110,0x11141b5f,0x5f606060,0x60434f4e,0x53540055,0x494e5400,0x464f4e54,0x3f413b14,0x183d3b14,0x3d001d00,0x5b5b100c,0x100c100c,0x105d0c5b,0x100c1410,0x12161519,0x1315120c,0x11101110,0x15171112,0x18180c16,0x1210145d,0x0c5b100c,0x100c1610,0x13191719,0x1717160c,0x16171110,0x1818165d,0x0c5b100c,0x19111413,0x10161611,0x140c1911,0x14131016,0x1611140c,0x15145d0c,0x5b141014,0x12121610,0x14180c11,0x16111619,0x19151113,0x140c1111,0x12141218,0x16101418,0x0c141014,0x12141210,0x11195d0c,0x5b100c12,0x10111714,0x15121419,0x0c111113,0x10151713,0x1814180c,0x105d0c5b,0x100c1815,0x18191913,0x1511180c,0x19101718,0x13121819,0x110c1712,0x12125d0c,0x5b100c10,0x0c111010,0x16161312,0x19160c17,0x18191511,0x165d0c5b,0x100c1210,0x12111119,0x1211160c,0x12101211,0x11161110,0x180c1112,0x1311125d,0x0c5b100c,0x18101814,0x15181215,0x120c1810,0x18141614,0x1413120c,0x13101916,0x5d0c5b10,0x0c111011,0x13131117,0x1613120c,0x16171010,0x1218170c,0x105d0c5b,0x100c1410,0x14121216,0x1014180c,0x11151719,0x1113140c,0x105d0c5b,0x12101113,0x12161519,0x120c1115,0x17191013,0x120c100c,0x105d0c5b,0x100c100c,0x1112170c,0x105d0c5b,0x100c1611,0x16180c10,0x0c105d0c,0x5b100c12,0x10111712,0x10151717,0x0c111018,0x10101415,0x1519120c,0x105d0c5b,0x100c1116,0x16171414,0x16131010,0x0c111616,0x17141519,0x1914170c,0x17121212,0x5d0c5b10,0x0c141014,0x12131213,0x11180c15,0x10141819,0x15151112,0x0c161117,0x125d0c5b,0x100c1110,0x10181815,0x1317150c,0x11161113,0x17161416,0x12100c11,0x15191711,0x5d0c5b10,0x0c111611,0x16191219,0x1519180c,0x11161116,0x19111916,0x14180c11,0x15191711,0x5d0c5b10,0x0c181018,0x14161415,0x10140c11,0x10111011,0x18151018,0x170c1112,0x1314145d,0x0c5b100c,0x11161116,0x19121915,0x19180c15,0x10151414,0x1418100c,0x13121511,0x155d0c5b,0x100c1116,0x16171415,0x17181514,0x0c151015,0x14141418,0x130c1711,0x17145d0c,0x5b100c12,0x10121111,0x16111018,0x0c111611,0x16191116,0x1510140c,0x13121611,0x115d0c5b,0x100c1116,0x16171415,0x17181514,0x0c111616,0x17141418,0x1411190c,0x11151917,0x115d0c5b,0x100c1116,0x11161911,0x16151110,0x0c111616,0x17141614,0x1810100c,0x11151917,0x115d0c5b,0x100c1115,0x17191010,0x180c1410,0x14121216,0x1014180c,0x105d0c5b,0x100c1115,0x17191012,0x100c1410,0x14121216,0x1014180c,0x105d0c5b,0x100c1210,0x12191111,0x1814100c,0x18101618,0x18121311,0x100c1916,0x5d0c5b10,0x0c121111,0x13191219,0x1211160c,0x18121517,0x1513160c,0x105d0c5b,0x100c1810,0x16181812,0x1311100c,0x12101219,0x11111814,0x100c165d,0x0c5b100c,0x14101216,0x15191315,0x120c1116,0x16141019,0x16121810,0x0c111519,0x17115d0c,0x5b100c12,0x10161714,0x16151012,0x120c1116,0x16171416,0x14101519,0x0c16125d,0x0c5b100c,0x11161617,0x14151718,0x19110c19,0x11121418,0x13111919,0x0c121017,0x165d0c5b,0x100c1117,0x11171918,0x16181719,0x0c111711,0x17191716,0x1617180c,0x11161213,0x105d0c5b,0x100c1514,0x17141817,0x13120c11,0x11121412,0x17101815,0x110c1115,0x1416125d,0x0c5b100c,0x11171117,0x19171415,0x15190c11,0x17111719,0x18161911,0x180c1719,0x19105d0c,0x5b100c11,0x10151217,0x17101515,0x0c111117,0x15181514,0x1611140c,0x13121611,0x145d0c5b,0x100c1110,0x11101518,0x1016130c,0x11111715,0x18151416,0x11140c13,0x12161114,0x5d0c5b10,0x0c111616,0x17141518,0x1615120c,0x11111214,0x12171019,0x17110c11,0x15141612,0x5d0c5b10,0x0c111616,0x17141517,0x1819110c,0x11161617,0x14161510,0x15190c12,0x15141413,0x5d0c5b10,0x0c141014,0x12131212,0x15120c14,0x10141213,0x12121116,0x0c111513,0x18145d0c,0x5b100c18,0x15181919,0x13141318,0x0c181018,0x14161414,0x13120c13,0x10171618,0x5d0c5b10,0x0c191112,0x16181015,0x15110c11,0x17111418,0x12121618,0x160c1216,0x1417105d,0x0c5b100c,0x11101512,0x17171015,0x150c1110,0x11101518,0x1015140c,0x13181416,0x5d0c5b10,0x0c111616,0x17141517,0x1819110c,0x12111319,0x10151619,0x19150c12,0x15141613,0x5d0c5b10,0x0c111616,0x17141517,0x1819110c,0x11181710,0x16121516,0x15110c12,0x15141417,0x5d0c5b10,0x0c111616,0x17141517,0x1815140c,0x11161617,0x14151718,0x19110c11,0x15191711,0x5d0c5d1b,0x5f606060,0x60434f4e,0x53540055,0x494e5400,0x464f4e54,0x3f423b14,0x193d3b14,0x3d001d00,0x5b5b100c,0x11101110,0x15181016,0x130c1117,0x11171917,0x16151812,0x0c111612,0x13105d0c,0x5b181112,0x16141614,0x10100c11,0x16161719,0x18181218,0x160c1116,0x16171415,0x17181911,0x0c111519,0x17115d0c,0x5b100c11,0x17111719,0x18161911,0x190c1117,0x11171917,0x16161310,0x0c111612,0x13105d0c,0x5b100c11,0x16111711,0x12161210,0x160c1116,0x16111314,0x14181116,0x0c111519,0x17115d0c,0x5b100c14,0x10141213,0x12121512,0x0c111511,0x11151218,0x1417120c,0x13121318,0x125d0c5b,0x100c1116,0x16171415,0x17181514,0x0c111616,0x17141517,0x1819110c,0x12151414,0x135d0c5b,0x100c1116,0x16141419,0x10151014,0x0c111616,0x17141517,0x1819110c,0x12151414,0x135d0c5b,0x100c1118,0x10131511,0x15171012,0x0c111616,0x17141519,0x1914170c,0x12151414,0x135d0c5b,0x100c1110,0x14131715,0x11171719,0x0c191110,0x10141010,0x19120c12,0x15141413,0x5d0c5b10,0x0c141014,0x12131212,0x15120c11,0x17111719,0x17161018,0x180c1216,0x1211145d,0x0c5b100c,0x11101510,0x17191617,0x190c1116,0x13101514,0x11181316,0x0c131216,0x11115d0c,0x0f0a0052,0x45414400,0x49460043,0x55544500,0x0a0f5b10,0x0c121012,0x11111611,0x15160c12,0x10121111,0x16111018,0x0c111513,0x17125d0c,0x5b100c19,0x14161818,0x18171618,0x0c151017,0x19141011,0x120c115d,0x0c5b100c,0x18101814,0x16141414,0x140c1810,0x18141614,0x1413120c,0x11151410,0x185d0c5b,0x100c100c,0x100c1113,0x16101616,0x1615195d,0x0c5b1116,0x17111116,0x18100c10,0x0c100c10,0x5d0c5b10,0x0c100c10,0x0c121012,0x11111911,0x16185d0c,0x5b100c18,0x15181919,0x13151118,0x0c111917,0x18141310,0x0c105d0c,0x5b100c11,0x17111719,0x18161817,0x180c1110,0x12161413,0x1310120c,0x11171918,0x5d0c5b10,0x0c151015,0x15131616,0x120c1410,0x18181517,0x190c105d,0x0c5b100c,0x18151819,0x19131511,0x180c1810,0x19121512,0x1410130c,0x11141318,0x145d0c5b,0x100c1510,0x15151316,0x16120c14,0x10181817,0x10130c10,0x5d0c5b10,0x0c111011,0x10151810,0x16130c16,0x13171913,0x11121710,0x0c171212,0x125d0c5b,0x18101816,0x15161318,0x140c1815,0x18191913,0x1417100c,0x17121212,0x1016170c,0x105d0c5b,0x100c1117,0x11171918,0x16191119,0x0c111014,0x12131015,0x10120c11,0x1719185d,0x0c5b100c,0x14101412,0x13121215,0x120c1118,0x14111117,0x160c1611,0x16185d0c,0x5b111711,0x17191716,0x1016140c,0x11161116,0x19121818,0x16140c17,0x13161417,0x10140c12,0x14161712,0x5d0c5b10,0x0c151016,0x18181116,0x13190c11,0x10171316,0x11181212,0x0c111719,0x185d0c5b,0x100c1410,0x14121312,0x1215120c,0x14101412,0x13121211,0x160c1711,0x19125d0c,0x5b100c11,0x18101212,0x10111915,0x150c1316,0x13171019,0x190c105d,0x0c5b100c,0x11171117,0x19181619,0x11180c13,0x18191218,0x13180c10,0x5d0c5b10,0x0c111616,0x17141517,0x1815140c,0x14101818,0x1617150c,0x105d0c5b,0x11101110,0x16101315,0x120c1117,0x11171918,0x16181718,0x0c131819,0x12181318,0x0c105d0c,0x5b181018,0x14181218,0x11160c18,0x15181919,0x13141710,0x0c171212,0x12101617,0x0c105d0c,0x5b100c11,0x10111015,0x18101613,0x0c131819,0x14181816,0x0c105d0c,0x5b100c14,0x17121913,0x13111812,0x0c141018,0x18151812,0x0c105d0c,0x5b100c12,0x10121114,0x10171218,0x0c121015,0x14151814,0x14140c12,0x1016105d,0x0c5b100c,0x18151819,0x19131511,0x180c1313,0x15151414,0x130c105d,0x0c5b100c,0x11171117,0x19171610,0x18180c16,0x17111018,0x18160c10,0x5d0c5b10,0x0c111810,0x12121017,0x1013100c,0x16151113,0x1511150c,0x105d0c5b,0x100c1417,0x11161110,0x1917190c,0x16151011,0x1911160c,0x105d0c5b,0x11161113,0x17161614,0x10100c11,0x16161714,0x15171911,0x180c1615,0x11131510,0x170c105d,0x0c5b100c,0x12101117,0x14151217,0x190c1813,0x13161115,0x120c105d,0x0c5b100c,0x14101412,0x13121310,0x140c1410,0x14121219,0x1615160c,0x12181619,0x165d0c5b,0x100c1410,0x14121312,0x1211160c,0x14101412,0x12161017,0x120c1611,0x16185d0c,0x5b100c14,0x10141213,0x12121016,0x0c141014,0x12151417,0x14140c13,0x1610185d,0x0c5b100c,0x100c100c,0x12181211,0x195d0c5b,0x12111311,0x11101016,0x17120c11,0x16111711,0x19121517,0x150c1116,0x11161912,0x18181614,0x0c19165d,0x0c5b1110,0x17131714,0x11181214,0x0c121113,0x16141912,0x1019160c,0x11101718,0x14181310,0x17110c16,0x145d0c5d,0x1b5f5f60,0x60606046,0x4c4f4154,0x00505800,0x1d00490e,0x55560e58,0x000a0023,0x2f2c331b,0x5f606060,0x60464c4f,0x41540050,0x59001d00,0x490e5556,0x0e59000a,0x00322f37,0x331b5f60,0x60606055,0x494e5400,0x43484152,0x58001d00,0x50581b5f,0x60606060,0x55494e54,0x00434841,0x5259001d,0x0050591b,0x5f5f6060,0x60605549,0x4e540043,0x4841523f,0x494e4445,0x58001d00,0x08434841,0x5258000b,0x0008322f,0x3733000d,0x0011000d,0x00434841,0x52590900,0x0a00232f,0x2c33091b,0x5f606060,0x6055494e,0x54004348,0x41521b5f,0x60606060,0x464c4f41,0x54130043,0x4f4c4f52,0x001d0010,0x0e181b5f,0x60606060,0x49460008,0x43484152,0x3f494e44,0x4558001e,0x1d00424c,0x4f423f53,0x54415254,0x00060600,0x43484152,0x3f494e44,0x4558001c,0x0008424c,0x4f423f53,0x54415254,0x000b0054,0x4558543f,0x4c454e00,0x0a001111,0x0909005b,0x5f606060,0x60605549,0x4e540042,0x4c4f423f,0x494e4445,0x58001d00,0x43484152,0x3f494e44,0x4558000d,0x00424c4f,0x423f5354,0x4152541b,0x5f606060,0x60605549,0x4e54004e,0x554d4245,0x523f494e,0x44455800,0x1d00424c,0x4f423f49,0x4e444558,0x000f0011,0x111b5f60,0x60606060,0x55494e54,0x00444947,0x49543f4f,0x46465345,0x54001d00,0x424c4f42,0x3f494e44,0x45580005,0x0011111b,0x5f606060,0x60604946,0x00084449,0x4749543f,0x4f464653,0x4554001d,0x1d001009,0x005b5f60,0x60606060,0x60434841,0x52001d00,0x11161b00,0x0f0f0007,0x10075f60,0x60606060,0x60434f4c,0x4f52001d,0x00464c4f,0x41541308,0x110c0010,0x0e130c00,0x100e1509,0x1b5f6060,0x6060605d,0x00454c53,0x45004946,0x00084449,0x4749543f,0x4f464653,0x4554001d,0x1d001109,0x005b5f60,0x60606060,0x60434841,0x52001d00,0x18181b00,0x0f0f0007,0x58075f60,0x60606060,0x60434f4c,0x4f52001d,0x00464c4f,0x41541308,0x110c0010,0x0e130c00,0x100e1509,0x1b5f6060,0x6060605d,0x00454c53,0x45004946,0x00084449,0x4749543f,0x4f464653,0x4554001d,0x1d001110,0x09005b5f,0x60606060,0x60604348,0x4152001d,0x0011121b,0x000f0f00,0x070c075f,0x60606060,0x605d0045,0x4c534500,0x5b5f6060,0x60606060,0x55494e54,0x004e554d,0x42455200,0x1d005445,0x58543b4e,0x554d4245,0x523f494e,0x4445583d,0x1b5f6060,0x60606060,0x55494e54,0x004e4942,0x424c453f,0x4f464653,0x4554001d,0x00084449,0x4749543f,0x4f464653,0x4554000d,0x00120900,0x0600171b,0x5f606060,0x60606055,0x494e5400,0x4e494242,0x4c45001d,0x00084e55,0x4d424552,0x001e1e00,0x08081700,0x0d004e49,0x42424c45,0x3f4f4646,0x53455409,0x000a0014,0x09090006,0x0011151b,0x5f606060,0x60606043,0x4f4e5354,0x0055494e,0x54004845,0x583f4348,0x4152533b,0x11163d00,0x1d005b11,0x160c0011,0x170c0011,0x180c0011,0x190c0012,0x100c0012,0x110c0012,0x120c0012,0x130c0012,0x140c0012,0x150c0016,0x150c0016,0x160c0016,0x170c0016,0x180c0016,0x190c0017,0x105d1b5f,0x60606060,0x60604348,0x4152001d,0x00484558,0x3f434841,0x52533b4e,0x4942424c,0x453d1b5f,0x60606060,0x6060434f,0x4c4f5200,0x1d00464c,0x4f415413,0x08100e12,0x0c00100e,0x18150c00,0x11091b5f,0x60606060,0x605d5f60,0x6060605d,0x00454c53,0x45005b5f,0x60606060,0x60494600,0x08434841,0x523f494e,0x44455800,0x1e00424c,0x4f423f53,0x54415254,0x09005b00,0x43484152,0x3f494e44,0x4558000d,0x1d005445,0x58543f4c,0x454e000a,0x00111100,0x0d00111b,0x005d5f60,0x60606060,0x55494e54,0x00544558,0x543f494e,0x44455800,0x1d004348,0x41523f49,0x4e444558,0x001e1e00,0x121b5f60,0x60606060,0x49460008,0x54455854,0x3f494e44,0x4558001e,0x00544558,0x543f4c45,0x4e09005b,0x00524554,0x55524e00,0x42470843,0x48415258,0x0c004348,0x41525909,0x1b005d5f,0x60606060,0x60434841,0x52001d00,0x54455854,0x3b544558,0x543f494e,0x4445583d,0x1b5f6060,0x60606055,0x494e5400,0x42595445,0x3f494e44,0x4558001d,0x00084348,0x41523f49,0x4e444558,0x00060013,0x091b5f60,0x60606060,0x49460008,0x42595445,0x3f494e44,0x4558001d,0x1d001009,0x005b0043,0x48415200,0x1e1e1d00,0x12141b5d,0x5f606060,0x6060454c,0x53450049,0x46000842,0x5954453f,0x494e4445,0x58001d1d,0x00110900,0x5b004348,0x4152001e,0x1e1d0011,0x161b5d5f,0x60606060,0x60454c53,0x45004946,0x00084259,0x54453f49,0x4e444558,0x001d1d00,0x1209005b,0x00434841,0x52001e1e,0x1d00181b,0x5d5f6060,0x60605d5f,0x5f606060,0x60434841,0x5200061d,0x00105846,0x461b5f60,0x60606055,0x494e5400,0x5458001d,0x00085058,0x000d0043,0x48415258,0x09000a00,0x181b5f60,0x60606055,0x494e5400,0x5459001d,0x00085059,0x000d0043,0x48415259,0x09000a00,0x11161b5f,0x5f606060,0x6055494e,0x54005345,0x4354494f,0x4e3f494e,0x44455800,0x1d005459,0x001e1e00,0x121b5f60,0x60606055,0x494e5400,0x4f464653,0x4554001d,0x00545800,0x0b000808,0x54590006,0x00130900,0x1c1c0013,0x091b5f60,0x60606046,0x4c4f4154,0x00504958,0x454c001d,0x00101b5f,0x60606060,0x49460008,0x43484152,0x001c0014,0x18095b5f,0x60606060,0x60504958,0x454c001d,0x0008464f,0x4e543f41,0x3b434841,0x523d3b53,0x45435449,0x4f4e3f49,0x4e444558,0x3d001e1e,0x004f4646,0x53455409,0x00060011,0x1b5f6060,0x60605d00,0x454c5345,0x005b5f60,0x60606060,0x50495845,0x4c001d00,0x08464f4e,0x543f423b,0x43484152,0x000d0014,0x183d3b53,0x45435449,0x4f4e3f49,0x4e444558,0x3d001e1e,0x004f4646,0x53455409,0x00060011,0x1b5f6060,0x60605d5f,0x60606060,0x49460008,0x50495845,0x4c09005b,0x5f606060,0x60605245,0x5455524e,0x00434f4c,0x4f521b5f,0x60606060,0x5d00454c,0x5345005b,0x5f606060,0x60605245,0x5455524e,0x00424708,0x43484152,0x580c0043,0x48415259,0x091b5f60,0x6060605d,0x5f606060,0x5d5f6060,0x60252e24,0x23275f60,0x605d5f60,0x5d5f5d5f,}; - const uint text_len = 1442; - const uint blob_start = 1014; - - const uint font_a[48][4] = {{0,0,0,0},{0,402659352,1010571288,6204},{0,0,603979776,6710886},{0,914306614,914306614,54},{404226048,1616995134,1124286048,404242019},{0,201745249,1130573848,0},{0,858993518,907832891,7222},{0,0,100663296,789516},{0,202119216,202116108,12312},{0,808458252,808464432,3096},{0,1013317632,6700287,0},{0,404226048,1579134,0},{201326592,1579032,0,0},{0,0,127,0},{0,6168,0,0},{0,201720577,1080045592,0},{0,1667446300,1667459947,7222},{0,404232318,504895512,6172},{0,100885375,1613764620,15971},{0,1616929598,1616919648,15971},{0,808464504,1010185087,12344},{0,1616929598,50544480,32515},{0,1667457854,50544483,7174},{0,202116108,1616916504,32611},{0,1667457854,1667448419,15971},{0,1616916510,1667464800,15971},{0,1579008,404226048,0},{0,1579020,404226048,0},{0,202911840,806882310,96},{0,2113929216,8257536,0},{0,806882310,202911840,6},{0,402659352,1664096280,15971},{0,2067465022,1667464059,62},{0,1667457891,912483199,2076},{0,1717986879,1717976678,16230},{0,54748732,1124270851,15462},{0,1717974559,1717986918,7990},{0,105277055,1175854614,32614},{0,101058063,1175854614,32614},{0,1667458652,1124270971,15462},{0,1667457891,1667465059,25443},{0,404232252,404232216,15384},{0,858993438,808464432,30768},{0,912680551,1714822686,26470},{0,105277055,101058054,3846},{0,1667457891,2139056995,25463},{0,1667457891,1870625651,25447},{0,1667457854,1667457891,15971},}; - const uint font_b[49][4] = {{0,101058063,1717976582,16230},{812646400,1667988286,1667457891,15971},{0,1717986919,1717976630,16230},{0,1617126206,1661344816,15971},{0,404232252,1511528472,32382},{0,1667457854,1667457891,25443},{0,1664490504,1667457891,25443},{0,1803515702,1667459947,25443},{0,1043751779,910040092,25443},{0,404232252,1717976088,26214},{0,105079679,1630541836,32611},/* read if cute */{0,202116156,202116108,15372},{0,946888768,50794012,1},{0,808464444,808464432,15408},{0,0,0,136066659},{16711680,0,0,0},{0,0,0,202119168},{0,858993518,1978430,0},{0,1717986878,102643302,1798},{0,50553662,4088579,0},{0,858993518,809252403,14384},{0,50553662,4088703,0},{0,101058063,637931270,7222},{808656384,858993470,7222067,0},{0,1717986919,104230502,1798},{0,404232252,1841176,6168},{1717976064,1616928864,7364704,24672},{0,506881639,107361822,1798},{0,404232252,404232216,7192},{0,1802201955,3637099,0},{0,1717986918,3892838,0},{0,1667457854,4088675,0},{101060352,1717986878,3892838,0},{808482816,858993470,7222067,0},{0,101058063,3894886,0},{0,472933182,4088582,0},{0,202140728,205458444,2060},{0,858993518,3355443,0},{0,1717976088,6710886,0},{0,1802207030,6513515,0},{0,471610979,6501916,0},{1613766400,1667457918,6513507,0},{0,201745279,8336152,0},{0,404232304,404229656,28696},{0,404232216,404226072,6168},{0,404232206,404254744,3608},{0,0,0,28219},{2131100672,1617192575,1616928864,96},{1073741824,2136492096,1078483071,64},}; - - float px = i.uv.x * COLS; - float py = i.uv.y * ROWS; - uint charx = px; - uint chary = py; - - uint char_index = (charx + (ROWS - 1 - chary) * COLS); - uint char; - float3 color = 0.8; - if (char_index >= blob_start && char_index < (blob_start + text_len * 11)) { - uint blob_index = char_index - blob_start; - uint number_index = blob_index / 11; - uint digit_offset = blob_index % 11; - if (digit_offset == 0) { - char = 16; // '0' - color = float3(1, 0.3, 0.5); - } else if (digit_offset == 1) { - char = 88; // 'x' - color = float3(1, 0.3, 0.5); - } else if (digit_offset == 10) { - char = 12; // ',' - } else { - uint number = text[number_index]; - uint nibble_offset = (digit_offset - 2) & 7; - uint nibble = (number >> ((7 - nibble_offset) * 4)) & 15; - const uint hex_chars[16] = {16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 65, 66, 67, 68, 69, 70}; - char = hex_chars[nibble]; - color = float3(0.2, 0.85, 1); - } - } else { - if (char_index > blob_start) { char_index -= text_len * 11 - 1; } - uint text_index = char_index >> 2; - if (text_index > text_len) { return bg(charx, chary); } - char = text[text_index]; - uint byte_index = (char_index & 3); - if (byte_index == 0) { char >>= 24;} - else if (byte_index == 1) { char >>= 16;} - else if (byte_index == 2) { char >>= 8;} - } - - char &= 0xff; - uint tx = (px - charx) * 8; - uint ty = (py - chary) * 16; - - uint section_index = ty >> 2; - uint offset = tx + ((ty & 3) << 3); - float pixel = 0; - if (char < 48){ - pixel = (font_a[char][section_index] >> offset) & 1; - } else { - pixel = (font_b[char - 48][section_index] >> offset) & 1; - } - if (pixel) { - return color; - } else { - return bg(charx, chary); - } - } - ENDCG - } + v2f vert (appdata v) { + v2f o; + UNITY_SETUP_INSTANCE_ID(v); + UNITY_INITIALIZE_OUTPUT(v2f, o); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); + o.vertex = UnityObjectToClipPos(v.vertex); + o.uv = v.uv; + return o; } -} + + float3 frag (v2f i) : SV_Target { + // write as 'const uint text[] = {?};' before export + const uint text[] = {0x33484144,0x45520002,0x23524953,0x50593049,0x4e0f3155,0x494e4502,0x005b5f0f,0x0f004854,0x5450531a,0x0f0f4749,0x540e4352,0x49535059,0x50494e0e,0x43430f23,0x52495350,0x5930494e,0x0f435652,0x0d50524f,0x50530f53,0x52430f42,0x52414e43,0x480f4d41,0x494e0f21,0x53534554,0x530f5445,0x53540f51,0x55494e45,0x0e534841,0x4445525f,0x33554233,0x48414445,0x52005b00,0x30415353,0x005b5f23,0x2730322f,0x2732212d,0x5f600350,0x5241474d,0x41005645,0x52544558,0x00564552,0x545f6003,0x50524147,0x4d410046,0x5241474d,0x454e5400,0x46524147,0x5f600349,0x4e434c55,0x44450002,0x354e4954,0x5923270e,0x4347494e,0x43025f60,0x03444546,0x494e4500,0x322f3733,0x00111010,0x5f600344,0x4546494e,0x4500232f,0x2c330032,0x2f37330a,0x125f5f60,0x53545255,0x43540041,0x50504441,0x5441005b,0x5f606046,0x4c4f4154,0x14005645,0x52544558,0x001a0030,0x2f332934,0x292f2e1b,0x5f606046,0x4c4f4154,0x12005556,0x001a0034,0x2538232f,0x2f322410,0x1b5f6060,0x352e2934,0x393f3625,0x32342538,0x3f292e30,0x35343f29,0x2e333421,0x2e23253f,0x29245f60,0x5d1b5f60,0x53545255,0x43540056,0x1246005b,0x5f606046,0x4c4f4154,0x12005556,0x001a0034,0x2538232f,0x2f322410,0x1b5f6060,0x464c4f41,0x54140056,0x45525445,0x58001a00,0x33363f30,0x2f332934,0x292f2e1b,0x5f606035,0x2e293439,0x3f362532,0x3425383f,0x2f353430,0x35343f33,0x34253225,0x2f5f605d,0x1b5f5f60,0x56124600,0x56455254,0x00084150,0x50444154,0x41005609,0x005b5f60,0x60561246,0x004f1b5f,0x6060352e,0x2934393f,0x33253435,0x303f292e,0x3334212e,0x23253f29,0x24085609,0x1b5f6060,0x352e2934,0x393f292e,0x29342921,0x2c293a25,0x3f2f3534,0x30353408,0x5612460c,0x004f091b,0x5f606035,0x2e293439,0x3f292e29,0x3429212c,0x293a253f,0x36253234,0x25383f2f,0x35343035,0x343f3334,0x2532252f,0x084f091b,0x5f60604f,0x0e564552,0x54455800,0x1d00354e,0x4954592f,0x424a4543,0x54344f23,0x4c495030,0x4f530856,0x0e564552,0x54455809,0x1b5f6060,0x4f0e5556,0x001d0056,0x0e55561b,0x5f606052,0x45545552,0x4e004f1b,0x5f605d5f,0x5f60464c,0x4f415413,0x00465241,0x47000856,0x12460049,0x09001a00,0x33363f34,0x41524745,0x54005b5f,0x60600f0f,0x00575249,0x54450041,0x53000743,0x4f4e5354,0x0055494e,0x54005445,0x58543b3d,0x001d005b,0x1f5d1b07,0x00424546,0x4f524500,0x4558504f,0x52545f60,0x60434f4e,0x53540055,0x494e5400,0x54455854,0x3b3d001d,0x005b1f5d,0x1b5f6060,0x434f4e53,0x54005549,0x4e540054,0x4558543f,0x4c454e00,0x1d001112,0x19191b5f,0x6060434f,0x4e535400,0x55494e54,0x00424c4f,0x423f5354,0x41525400,0x1d001719,0x181b5f60,0x60434f4e,0x53540055,0x494e5400,0x464f4e54,0x3b19173d,0x3b143d00,0x1d005b5b,0x100c100c,0x100c105d,0x0c5b100c,0x14101216,0x15191315,0x120c1110,0x11101517,0x11121818,0x0c161210,0x145d0c5b,0x100c100c,0x16101319,0x17191717,0x160c1617,0x11101818,0x165d0c5b,0x100c1911,0x14131016,0x1611140c,0x19111413,0x10161611,0x140c1514,0x5d0c5b14,0x10141212,0x16101418,0x0c111611,0x16191915,0x1113140c,0x11111214,0x12181610,0x14180c14,0x10141214,0x12101119,0x5d0c5b10,0x0c121011,0x17141512,0x14190c11,0x11131015,0x17131814,0x180c105d,0x0c5b100c,0x18151819,0x19131511,0x180c1910,0x17181312,0x1819110c,0x17121212,0x5d0c5b10,0x0c100c11,0x10101616,0x13121916,0x0c171819,0x1511165d,0x0c5b100c,0x12101211,0x11191211,0x160c1210,0x12111116,0x1110180c,0x11121311,0x125d0c5b,0x100c1810,0x18141518,0x1215120c,0x18101814,0x16141413,0x120c1310,0x19165d0c,0x5b100c11,0x10111313,0x11171613,0x120c1617,0x10101218,0x170c105d,0x0c5b100c,0x14101412,0x12161014,0x180c1115,0x17191113,0x140c105d,0x0c5b1210,0x11131216,0x1519120c,0x11151719,0x1013120c,0x100c105d,0x0c5b100c,0x100c1112,0x170c105d,0x0c5b100c,0x16111618,0x0c100c10,0x5d0c5b10,0x0c121011,0x17121015,0x17170c11,0x10181010,0x14151519,0x120c105d,0x0c5b100c,0x11161617,0x14141613,0x10100c11,0x16161714,0x15191914,0x170c1712,0x12125d0c,0x5b100c14,0x10141213,0x12131118,0x0c151014,0x18191515,0x11120c16,0x1117125d,0x0c5b100c,0x11101018,0x18151317,0x150c1116,0x11131716,0x14161210,0x0c111519,0x17115d0c,0x5b100c11,0x16111619,0x12191519,0x180c1116,0x11161911,0x19161418,0x0c111519,0x17115d0c,0x5b100c18,0x10181416,0x14151014,0x0c111011,0x10111815,0x1018170c,0x11121314,0x145d0c5b,0x100c1116,0x11161912,0x19151918,0x0c151015,0x14141418,0x100c1312,0x1511155d,0x0c5b100c,0x11161617,0x14151718,0x15140c15,0x10151414,0x1418130c,0x17111714,0x5d0c5b10,0x0c121012,0x11111611,0x10180c11,0x16111619,0x11161510,0x140c1312,0x1611115d,0x0c5b100c,0x11161617,0x14151718,0x15140c11,0x16161714,0x14181411,0x190c1115,0x1917115d,0x0c5b100c,0x11161116,0x19111615,0x11100c11,0x16161714,0x16141810,0x100c1115,0x1917115d,0x0c5b100c,0x11151719,0x1010180c,0x14101412,0x12161014,0x180c105d,0x0c5b100c,0x11151719,0x1012100c,0x14101412,0x12161014,0x180c105d,0x0c5b100c,0x12101219,0x11111814,0x100c1810,0x16181812,0x1311100c,0x19165d0c,0x5b100c12,0x11111319,0x12191211,0x160c1812,0x15171513,0x160c105d,0x0c5b100c,0x18101618,0x18121311,0x100c1210,0x12191111,0x1814100c,0x165d0c5b,0x100c1410,0x12161519,0x1315120c,0x11161614,0x10191612,0x18100c11,0x15191711,0x5d0c5b10,0x0c121016,0x17141615,0x1012120c,0x11161617,0x14161410,0x15190c16,0x125d0c5b,0x100c1116,0x16171415,0x17181911,0x0c191112,0x14181311,0x19190c12,0x1017165d,0x0c5b100c,0x11171117,0x19181618,0x17190c11,0x17111719,0x17161617,0x180c1116,0x1213105d,0x0c5b100c,0x15141714,0x18171312,0x0c111112,0x14121710,0x1815110c,0x11151416,0x125d0c5b,0x100c1117,0x11171917,0x14151519,0x0c111711,0x17191816,0x1911180c,0x17191910,0x5d0c5b10,0x0c111015,0x12171710,0x15150c11,0x11171518,0x15141611,0x140c1312,0x1611145d,0x0c5b100c,0x11101110,0x15181016,0x130c1111,0x17151815,0x14161114,0x0c131216,0x11145d0c,0x5b100c11,0x16161714,0x15181615,0x120c1111,0x12141217,0x10191711,0x0c111514,0x16125d0c,0x5b100c11,0x16161714,0x15171819,0x110c1116,0x16171416,0x15101519,0x0c121514,0x14135d0c,0x5b100c14,0x10141213,0x12121512,0x0c141014,0x12131212,0x11160c11,0x15131814,0x5d0c5b10,0x0c181518,0x19191314,0x13180c18,0x10181416,0x14141312,0x0c131017,0x16185d0c,0x5b100c19,0x11121618,0x10151511,0x0c111711,0x14181212,0x1618160c,0x12161417,0x105d0c5b,0x100c1110,0x15121717,0x1015150c,0x11101110,0x15181015,0x140c1318,0x14165d0c,0x5b100c11,0x16161714,0x15171819,0x110c1211,0x13191015,0x16191915,0x0c121514,0x16135d0c,0x5b100c11,0x16161714,0x15171819,0x110c1118,0x17101612,0x15161511,0x0c121514,0x14175d0c,0x5b100c11,0x16161714,0x15171815,0x140c1116,0x16171415,0x17181911,0x0c111519,0x17115d0c,0x5b100c11,0x10111015,0x18101613,0x0c111711,0x17191716,0x1518120c,0x11161213,0x105d0c5b,0x18111216,0x14161410,0x100c1116,0x16171918,0x18121816,0x0c111616,0x17141517,0x1819110c,0x11151917,0x115d0c5b,0x100c1117,0x11171918,0x16191119,0x0c111711,0x17191716,0x1613100c,0x11161213,0x105d0c5b,0x100c1116,0x11171112,0x16121016,0x0c111616,0x11131414,0x1811160c,0x11151917,0x115d0c5b,0x100c1410,0x14121312,0x1215120c,0x11151111,0x15121814,0x17120c13,0x12131812,0x5d0c5b10,0x0c111616,0x17141517,0x1815140c,0x11161617,0x14151718,0x19110c12,0x15141413,0x5d0c5b10,0x0c111616,0x14141910,0x1510140c,0x11161617,0x14151718,0x19110c12,0x15141413,0x5d0c5b10,0x0c111810,0x13151115,0x1710120c,0x11161617,0x14151919,0x14170c12,0x15141413,0x5d0c5b10,0x0c111014,0x13171511,0x1717190c,0x19111010,0x14101019,0x120c1215,0x1414135d,0x0c5b100c,0x14101412,0x13121215,0x120c1117,0x11171917,0x16101818,0x0c121612,0x11145d0c,0x5b100c11,0x10151017,0x19161719,0x0c111613,0x10151411,0x1813160c,0x13121611,0x115d0c0f,0x0a005245,0x41440049,0x46004355,0x5445000a,0x0f5b100c,0x12101211,0x11161115,0x160c1210,0x12111116,0x1110180c,0x11151317,0x125d0c5b,0x100c1914,0x16181818,0x1716180c,0x15101719,0x14101112,0x0c115d0c,0x5b100c18,0x10181416,0x14141414,0x0c181018,0x14161414,0x13120c11,0x15141018,0x5d0c5b10,0x0c100c10,0x0c111316,0x10161616,0x15195d0c,0x5b111617,0x11111618,0x100c100c,0x100c105d,0x0c5b100c,0x100c100c,0x12101211,0x11191116,0x185d0c5b,0x100c1815,0x18191913,0x1511180c,0x11191718,0x1413100c,0x105d0c5b,0x100c1117,0x11171918,0x16181718,0x0c111012,0x16141313,0x10120c11,0x1719185d,0x0c5b100c,0x15101515,0x13161612,0x0c141018,0x18151719,0x0c105d0c,0x5b100c18,0x15181919,0x13151118,0x0c181019,0x12151214,0x10130c11,0x14131814,0x5d0c5b10,0x0c151015,0x15131616,0x120c1410,0x18181710,0x130c105d,0x0c5b100c,0x11101110,0x15181016,0x130c1613,0x17191311,0x1217100c,0x17121212,0x5d0c5b18,0x10181615,0x16131814,0x0c181518,0x19191314,0x17100c17,0x12121210,0x16170c10,0x5d0c5b10,0x0c111711,0x17191816,0x1911190c,0x11101412,0x13101510,0x120c1117,0x19185d0c,0x5b100c14,0x10141213,0x12121512,0x0c111814,0x11111716,0x0c161116,0x185d0c5b,0x11171117,0x19171610,0x16140c11,0x16111619,0x12181816,0x140c1713,0x16141710,0x140c1214,0x1617125d,0x0c5b100c,0x15101618,0x18111613,0x190c1110,0x17131611,0x1812120c,0x11171918,0x5d0c5b10,0x0c141014,0x12131212,0x15120c14,0x10141213,0x12121116,0x0c171119,0x125d0c5b,0x100c1118,0x10121210,0x11191515,0x0c131613,0x17101919,0x0c105d0c,0x5b100c11,0x17111719,0x18161911,0x180c1318,0x19121813,0x180c105d,0x0c5b100c,0x11161617,0x14151718,0x15140c14,0x10181816,0x17150c10,0x5d0c5b11,0x10111016,0x10131512,0x0c111711,0x17191816,0x1817180c,0x13181912,0x1813180c,0x105d0c5b,0x18101814,0x18121811,0x160c1815,0x18191913,0x1417100c,0x17121212,0x1016170c,0x105d0c5b,0x100c1110,0x11101518,0x1016130c,0x13181914,0x1818160c,0x105d0c5b,0x100c1417,0x12191313,0x1118120c,0x14101818,0x1518120c,0x105d0c5b,0x100c1210,0x12111410,0x1712180c,0x12101514,0x15181414,0x140c1210,0x16105d0c,0x5b100c18,0x15181919,0x13151118,0x0c131315,0x15141413,0x0c105d0c,0x5b100c11,0x17111719,0x17161018,0x180c1617,0x11101818,0x160c105d,0x0c5b100c,0x11181012,0x12101710,0x13100c16,0x15111315,0x11150c10,0x5d0c5b10,0x0c141711,0x16111019,0x17190c16,0x15101119,0x11160c10,0x5d0c5b11,0x16111317,0x16161410,0x100c1116,0x16171415,0x17191118,0x0c161511,0x13151017,0x0c105d0c,0x5b100c12,0x10111714,0x15121719,0x0c181313,0x16111512,0x0c105d0c,0x5b100c14,0x10141213,0x12131014,0x0c141014,0x12121916,0x15160c12,0x18161916,0x5d0c5b10,0x0c141014,0x12131212,0x11160c14,0x10141212,0x16101712,0x0c161116,0x185d0c5b,0x100c1410,0x14121312,0x1210160c,0x14101412,0x15141714,0x140c1316,0x10185d0c,0x5b100c10,0x0c100c12,0x18121119,0x5d0c5b12,0x11131111,0x10101617,0x120c1116,0x11171119,0x12151715,0x0c111611,0x16191218,0x1816140c,0x19165d0c,0x5b111017,0x13171411,0x1812140c,0x12111316,0x14191210,0x19160c11,0x10171814,0x18131017,0x110c1614,0x5d5d1b5f,0x5f606046,0x4c4f4154,0x00505800,0x1d00490e,0x55560e58,0x000a0023,0x2f2c331b,0x5f606046,0x4c4f4154,0x00505900,0x1d00490e,0x55560e59,0x000a0032,0x2f37331b,0x5f606055,0x494e5400,0x43484152,0x58001d00,0x50581b5f,0x60605549,0x4e540043,0x48415259,0x001d0050,0x591b5f5f,0x60605549,0x4e540043,0x4841523f,0x494e4445,0x58001d00,0x08434841,0x5258000b,0x0008322f,0x3733000d,0x0011000d,0x00434841,0x52590900,0x0a00232f,0x2c33091b,0x5f606055,0x494e5400,0x43484152,0x1b5f6060,0x464c4f41,0x54130043,0x4f4c4f52,0x001d0010,0x0e181b5f,0x60604946,0x00084348,0x41523f49,0x4e444558,0x001e1d00,0x424c4f42,0x3f535441,0x52540006,0x06004348,0x41523f49,0x4e444558,0x001c0008,0x424c4f42,0x3f535441,0x5254000b,0x00544558,0x543f4c45,0x4e000a00,0x11110909,0x005b5f60,0x60605549,0x4e540042,0x4c4f423f,0x494e4445,0x58001d00,0x43484152,0x3f494e44,0x4558000d,0x00424c4f,0x423f5354,0x4152541b,0x5f606060,0x55494e54,0x004e554d,0x4245523f,0x494e4445,0x58001d00,0x424c4f42,0x3f494e44,0x4558000f,0x0011111b,0x5f606060,0x55494e54,0x00444947,0x49543f42,0x49543f4f,0x46465345,0x54001d00,0x424c4f42,0x3f494e44,0x45580005,0x0011111b,0x5f606060,0x49460008,0x44494749,0x543f4249,0x543f4f46,0x46534554,0x001d1d00,0x1009005b,0x5f606060,0x60434841,0x52001d00,0x11161b00,0x0f0f0007,0x10075f60,0x60606043,0x4f4c4f52,0x001d0046,0x4c4f4154,0x1308110c,0x00100e13,0x0c00100e,0x15091b5f,0x6060605d,0x00454c53,0x45004946,0x00084449,0x4749543f,0x4249543f,0x4f464653,0x4554001d,0x1d001109,0x005b5f60,0x60606043,0x48415200,0x1d001818,0x1b000f0f,0x00075807,0x5f606060,0x60434f4c,0x4f52001d,0x00464c4f,0x41541308,0x110c0010,0x0e130c00,0x100e1509,0x1b5f6060,0x605d0045,0x4c534500,0x49460008,0x44494749,0x543f4249,0x543f4f46,0x46534554,0x001d1d00,0x11100900,0x5b5f6060,0x60604348,0x4152001d,0x0011121b,0x000f0f00,0x070c075f,0x6060605d,0x00454c53,0x45005b5f,0x60606060,0x55494e54,0x004e554d,0x42455200,0x1d005445,0x58543b4e,0x554d4245,0x523f494e,0x4445583d,0x1b5f6060,0x60605549,0x4e54004e,0x4942424c,0x453f4249,0x543f4f46,0x46534554,0x001d0008,0x44494749,0x543f4249,0x543f4f46,0x46534554,0x000d0012,0x09000600,0x171b5f60,0x60606055,0x494e5400,0x4e494242,0x4c45001d,0x00084e55,0x4d424552,0x001e1e00,0x08081700,0x0d004e49,0x42424c45,0x3f424954,0x3f4f4646,0x53455409,0x000a0014,0x09090006,0x0011151b,0x5f606060,0x60434f4e,0x53540055,0x494e5400,0x4845583f,0x43484152,0x533b1116,0x3d001d00,0x5b11160c,0x0011170c,0x0011180c,0x0011190c,0x0012100c,0x0012110c,0x0012120c,0x0012130c,0x0012140c,0x0012150c,0x0016150c,0x0016160c,0x0016170c,0x0016180c,0x0016190c,0x0017105d,0x1b5f6060,0x60604348,0x4152001d,0x00484558,0x3f434841,0x52533b4e,0x4942424c,0x453d1b5f,0x60606060,0x434f4c4f,0x52001d00,0x464c4f41,0x54130810,0x0e120c00,0x100e1815,0x0c001109,0x1b5f6060,0x605d5f60,0x605d0045,0x4c534500,0x5b5f6060,0x60494600,0x08434841,0x523f494e,0x44455800,0x1e00424c,0x4f423f53,0x54415254,0x09005b00,0x43484152,0x3f494e44,0x4558000d,0x1d005445,0x58543f4c,0x454e000a,0x00111100,0x0d00111b,0x005d5f60,0x60605549,0x4e540054,0x4558543f,0x494e4445,0x58001d00,0x43484152,0x3f494e44,0x4558001e,0x1e00121b,0x5f606060,0x43484152,0x001d0054,0x4558543b,0x54455854,0x3f494e44,0x45583d1b,0x5f606060,0x55494e54,0x00425954,0x453f494e,0x44455800,0x1d000843,0x4841523f,0x494e4445,0x58000600,0x13091b5f,0x60606043,0x48415200,0x1e1e1d00,0x0813000d,0x00425954,0x453f494e,0x44455809,0x001c1c00,0x131b5f60,0x60604946,0x00085445,0x58543f49,0x4e444558,0x001e1d00,0x54455854,0x3f4c454e,0x09005b00,0x43484152,0x001d0010,0x1b005d5f,0x60605d5f,0x5f606043,0x48415200,0x061d0010,0x5846461b,0x5f606055,0x494e5400,0x5458001d,0x00085058,0x000d0043,0x48415258,0x09000a00,0x181b5f60,0x6055494e,0x54005459,0x001d0008,0x5059000d,0x00434841,0x52590900,0x0a001116,0x1b5f5f60,0x6055494e,0x54005155,0x41525445,0x52001d00,0x5459000f,0x00141b5f,0x60605549,0x4e540042,0x49543f4f,0x46465345,0x54001d00,0x5458000b,0x00080854,0x59000600,0x1309001c,0x1c001309,0x1b5f6060,0x55494e54,0x00504958,0x454c001d,0x0008464f,0x4e543b43,0x4841523d,0x3b515541,0x52544552,0x3d001e1e,0x00424954,0x3f4f4646,0x53455409,0x00060011,0x1b5f6060,0x49460008,0x01504958,0x454c0900,0x5b00434f,0x4c4f5200,0x1d000808,0x43484152,0x58000b00,0x43484152,0x59090006,0x00110900,0x0a000e10,0x13000b00,0x0e10131b,0x005d5f60,0x60524554,0x55524e00,0x434f4c4f,0x521b5f60,0x5d5f252e,0x2423275f,0x5d5d5d5f,}; + const uint text_len = 1299; + const uint blob_start = 798; + const uint font[97][4] = {{0,0,0,0},{0,402659352,1010571288,6204},{0,0,603979776,6710886},{0,914306614,914306614,54},{404226048,1616995134,1124286048,404242019},{0,201745249,1130573848,0},{0,858993518,907832891,7222},{0,0,100663296,789516},{0,202119216,202116108,12312},{0,808458252,808464432,3096},{0,1013317632,6700287,0},{0,404226048,1579134,0},{201326592,1579032,0,0},{0,0,127,0},{0,6168,0,0},{0,201720577,1080045592,0},{0,1667446300,1667459947,7222},{0,404232318,504895512,6172},{0,100885375,1613764620,15971},{0,1616929598,1616919648,15971},{0,808464504,1010185087,12344},{0,1616929598,50544480,32515},{0,1667457854,50544483,7174},{0,202116108,1616916504,32611},{0,1667457854,1667448419,15971},{0,1616916510,1667464800,15971},{0,1579008,404226048,0},{0,1579020,404226048,0},{0,202911840,806882310,96},{0,2113929216,8257536,0},{0,806882310,202911840,6},{0,402659352,1664096280,15971},{0,2067465022,1667464059,62},{0,1667457891,912483199,2076},{0,1717986879,1717976678,16230},{0,54748732,1124270851,15462},{0,1717974559,1717986918,7990},{0,105277055,1175854614,32614},{0,101058063,1175854614,32614},{0,1667458652,1124270971,15462},{0,1667457891,1667465059,25443},{0,404232252,404232216,15384},{0,858993438,808464432,30768},{0,912680551,1714822686,26470},{0,105277055,101058054,3846},{0,1667457891,2139056995,25463},{0,1667457891,1870625651,25447},{0,1667457854,1667457891,15971},{0,101058063,1717976582,16230},{812646400,1667988286,1667457891,15971},{0,1717986919,1717976630,16230},{0,1617126206,1661344816,15971},{0,404232252,1511528472,32382},{0,1667457854,1667457891,25443},{0,1664490504,1667457891,25443},{0,1803515702,1667459947,25443},{0,1043751779,910040092,25443},{0,404232252,1717976088,26214},{0,105079679,1630541836,32611},/* read if cute */{0,202116156,202116108,15372},{0,946888768,50794012,1},{0,808464444,808464432,15408},{0,0,0,136066659},{16711680,0,0,0},{0,0,0,202119168},{0,858993518,1978430,0},{0,1717986878,102643302,1798},{0,50553662,4088579,0},{0,858993518,809252403,14384},{0,50553662,4088703,0},{0,101058063,637931270,7222},{808656384,858993470,7222067,0},{0,1717986919,104230502,1798},{0,404232252,1841176,6168},{1717976064,1616928864,7364704,24672},{0,506881639,107361822,1798},{0,404232252,404232216,7192},{0,1802201955,3637099,0},{0,1717986918,3892838,0},{0,1667457854,4088675,0},{101060352,1717986878,3892838,0},{808482816,858993470,7222067,0},{0,101058063,3894886,0},{0,472933182,4088582,0},{0,202140728,205458444,2060},{0,858993518,3355443,0},{0,1717976088,6710886,0},{0,1802207030,6513515,0},{0,471610979,6501916,0},{1613766400,1667457918,6513507,0},{0,201745279,8336152,0},{0,404232304,404229656,28696},{0,404232216,404226072,6168},{0,404232206,404254744,3608},{0,0,0,28219},{2131100672,1617192575,1616928864,96},{1073741824,2136492096,1078483071,64}}; + + float px = i.uv.x * COLS; + float py = i.uv.y * ROWS; + uint charx = px; + uint chary = py; + + uint char_index = (charx + (ROWS - 1 - chary) * COLS); + uint char; + float3 color = 0.8; + if (char_index >= blob_start && char_index < (blob_start + text_len * 11)) { + uint blob_index = char_index - blob_start; + uint number_index = blob_index / 11; + uint digit_bit_offset = blob_index % 11; + if (digit_bit_offset == 0) { + char = 16; // '0' + color = float3(1, 0.3, 0.5); + } else if (digit_bit_offset == 1) { + char = 88; // 'x' + color = float3(1, 0.3, 0.5); + } else if (digit_bit_offset == 10) { + char = 12; // ',' + } else { + uint number = text[number_index]; + uint nibble_bit_offset = (digit_bit_offset - 2) & 7; + uint nibble = (number >> ((7 - nibble_bit_offset) * 4)) & 15; + const uint hex_chars[16] = {16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 65, 66, 67, 68, 69, 70}; + char = hex_chars[nibble]; + color = float3(0.2, 0.85, 1); + } + } else { + if (char_index > blob_start) { char_index -= text_len * 11 - 1; } + uint text_index = char_index >> 2; + char = text[text_index]; + uint byte_index = (char_index & 3); + char >>= (3 - byte_index) << 3; + if (text_index >= text_len) { char = 0; } + } + + char &= 0xff; + uint tx = (px - charx) * 8; + uint ty = (py - chary) * 16; + + uint quarter = ty / 4; + uint bit_offset = tx + ((ty & 3) << 3); + uint pixel = (font[char][quarter] >> bit_offset) & 1; + if (!pixel) { color = ((charx + chary) & 1) * .03 + .03; } + return color; + } +ENDCG +}}} diff --git a/text_shader/out.h b/text_shader/out.h index c4f8f33..1910fad 100644 --- a/text_shader/out.h +++ b/text_shader/out.h @@ -1,6 +1,5 @@ - const uint text[] = {0x33484144,0x45520002,0x23524953,0x50593049,0x4e0f3155,0x494e4502,0x005b5f0f,0x0f004854,0x5450531a,0x0f0f4749,0x540e4352,0x49535059,0x50494e0e,0x43430f23,0x52495350,0x5930494e,0x0f435652,0x0d50524f,0x50530f53,0x52430f42,0x52414e43,0x480f4d41,0x494e0f21,0x53534554,0x530f5445,0x53540f51,0x55494e45,0x0e534841,0x4445525f,0x6030524f,0x50455254,0x49455300,0x5b5d5f60,0x33554233,0x48414445,0x52005b5f,0x60603441,0x4753005b,0x00023245,0x4e444552,0x34595045,0x02001d00,0x022f5041,0x51554502,0x005d5f60,0x602c2f24,0x00111010,0x5f606030,0x41535300,0x5b5f6060,0x60232730,0x322f2732,0x212d5f60,0x60600350,0x5241474d,0x41005645,0x52544558,0x00564552,0x545f6060,0x60035052,0x41474d41,0x00465241,0x474d454e,0x54004652,0x41475f5f,0x60606003,0x494e434c,0x55444500,0x02354e49,0x54592327,0x0e434749,0x4e43025f,0x5f606060,0x03444546,0x494e4500,0x322f3733,0x00111014,0x5f606060,0x03444546,0x494e4500,0x232f2c33,0x00322f37,0x330a125f,0x5f606060,0x53545255,0x43540041,0x50504441,0x5441005b,0x5f606060,0x60464c4f,0x41541400,0x56455254,0x4558001a,0x00302f33,0x2934292f,0x2e1b5f60,0x60606046,0x4c4f4154,0x12005556,0x001a0034,0x2538232f,0x2f322410,0x1b5f6060,0x6060352e,0x2934393f,0x36253234,0x25383f29,0x2e303534,0x3f292e33,0x34212e23,0x253f2924,0x5f606060,0x5d1b5f5f,0x60606053,0x54525543,0x54005612,0x46005b5f,0x60606060,0x464c4f41,0x54120055,0x56001a00,0x34253823,0x2f2f3224,0x101b5f60,0x60606046,0x4c4f4154,0x14005645,0x52544558,0x001a0033,0x363f302f,0x33293429,0x2f2e1b5f,0x60606060,0x352e2934,0x393f3625,0x32342538,0x3f2f3534,0x3035343f,0x33342532,0x252f5f60,0x60605d1b,0x5f5f6060,0x60561246,0x00564552,0x54000841,0x50504441,0x54410056,0x09005b5f,0x60606060,0x56124600,0x4f1b5f60,0x60606035,0x2e293439,0x3f332534,0x35303f29,0x2e333421,0x2e23253f,0x29240856,0x091b5f60,0x60606035,0x2e293439,0x3f292e29,0x3429212c,0x293a253f,0x2f353430,0x35340856,0x12460c00,0x4f091b5f,0x60606060,0x352e2934,0x393f292e,0x29342921,0x2c293a25,0x3f362532,0x3425383f,0x2f353430,0x35343f33,0x34253225,0x2f084f09,0x1b5f6060,0x60604f0e,0x56455254,0x4558001d,0x00354e49,0x54592f42,0x4a454354,0x344f234c,0x4950304f,0x5308560e,0x56455254,0x4558091b,0x5f606060,0x604f0e55,0x56001d00,0x560e5556,0x1b5f6060,0x60605245,0x5455524e,0x004f1b5f,0x6060605d,0x5f5f6060,0x60464c4f,0x41541300,0x42470855,0x494e5400,0x43484152,0x580c0055,0x494e5400,0x43484152,0x5909005b,0x5f606060,0x60524554,0x55524e00,0x08084348,0x41525800,0x0b004348,0x41525909,0x00060011,0x09000a00,0x100e1013,0x000b0010,0x0e10131b,0x5f606060,0x5d5f5f60,0x6060464c,0x4f415413,0x00465241,0x47000856,0x12460049,0x09001a00,0x33363f34,0x41524745,0x54005b5f,0x60606060,0x0f0f0057,0x52495445,0x00415300,0x07434f4e,0x53540055,0x494e5400,0x54455854,0x3b3d001d,0x005b1f5d,0x1b070042,0x45464f52,0x45004558,0x504f5254,0x5f606060,0x60434f4e,0x53540055,0x494e5400,0x54455854,0x3b3d001d,0x005b1058,0x13131418,0x14111414,0x0c105814,0x15151210,0x1010120c,0x10581213,0x15121419,0x15130c10,0x58151015,0x19131014,0x190c1058,0x14451046,0x13111515,0x0c105814,0x19144514,0x1510120c,0x10581010,0x15421546,0x10460c10,0x58104610,0x10141815,0x140c1058,0x15141510,0x15131141,0x0c105810,0x46104614,0x1714190c,0x10581514,0x10451413,0x15120c10,0x58141915,0x13151015,0x190c1058,0x15101419,0x14451045,0x0c105814,0x13141310,0x4612130c,0x10581512,0x14191513,0x15100c10,0x58151913,0x10141914,0x450c1058,0x10461413,0x15161512,0x0c105810,0x44151015,0x1214460c,0x10581510,0x15131046,0x15130c10,0x58151214,0x13104614,0x120c1058,0x15121411,0x14451413,0x0c105814,0x18104614,0x4414110c,0x10581419,0x14451046,0x12110c10,0x58151315,0x13141515,0x140c1058,0x15131046,0x15141415,0x0c105815,0x13151410,0x4615110c,0x10581515,0x14191445,0x14150c10,0x58104515,0x13141814,0x110c1058,0x14141415,0x15121546,0x0c105816,0x10131015,0x1214460c,0x10581510,0x14151512,0x15140c10,0x58141914,0x15151310,0x100c1058,0x15421544,0x15461610,0x0c105813,0x13151514,0x1213130c,0x10581418,0x14111414,0x14150c10,0x58151210,0x10154215,0x460c1058,0x16101610,0x13141411,0x0c105814,0x17151310,0x1015420c,0x10581010,0x10121312,0x14150c10,0x58144514,0x14141515,0x120c1058,0x13141519,0x15101415,0x0c105810,0x12101011,0x4410100c,0x10581012,0x12461510,0x14110c10,0x58151115,0x15141510,0x120c1058,0x10101544,0x15461610,0x0c105816,0x10124312,0x4612140c,0x10581010,0x11111110,0x11100c10,0x58154616,0x10161013,0x100c1058,0x14111513,0x15131010,0x0c105815,0x42154616,0x1016100c,0x10581610,0x12131217,0x13100c10,0x58131212,0x46121713,0x120c1058,0x12111244,0x15461610,0x0c105816,0x10161010,0x1315100c,0x10581512,0x14111417,0x14440c10,0x58141110,0x10151614,0x150c1058,0x15121514,0x14151518,0x0c105810,0x10151614,0x1515120c,0x10581514,0x15461610,0x16100c10,0x58161010,0x13151015,0x120c1058,0x14111417,0x14441411,0x0c105810,0x10141615,0x1214110c,0x10581417,0x14441415,0x14450c10,0x58151410,0x10141615,0x120c1058,0x14111417,0x15461546,0x0c105816,0x10161016,0x1010130c,0x10581419,0x14451413,0x14430c10,0x58151514,0x14141510,0x100c1058,0x10121315,0x14451419,0x0c105815,0x14151912,0x1312170c,0x10581045,0x14131417,0x14190c10,0x58144514,0x13101215,0x460c1058,0x15461610,0x16101610,0x0c105810,0x13141414,0x1514160c,0x10581419,0x14451415,0x10100c10,0x58131212,0x46131713,0x130c1058,0x10101111,0x11101114,0x0c105815,0x46161016,0x1016100c,0x10581013,0x14141415,0x14160c10,0x58141914,0x45141510,0x100c1058,0x12131246,0x12431313,0x0c105810,0x10131212,0x4613170c,0x10581313,0x10411112,0x15460c10,0x58154616,0x10161016,0x100c1058,0x15131514,0x15121515,0x0c105814,0x13151410,0x1014110c,0x10581510,0x15101414,0x14110c10,0x58151414,0x11101015,0x420c1058,0x15461610,0x16101610,0x0c105816,0x10141614,0x4314460c,0x10581411,0x15141114,0x10100c10,0x58151614,0x15151215,0x140c1058,0x14151518,0x10101141,0x0c105810,0x10131012,0x4613130c,0x10581219,0x13141219,0x12460c10,0x58124511,0x42154616,0x100c1058,0x16101610,0x16101416,0x0c105814,0x43144614,0x1115140c,0x10581112,0x10101515,0x15160c10,0x58101011,0x41101013,0x140c1058,0x12151318,0x12131246,0x0c105812,0x46131212,0x1411100c,0x10581142,0x15461610,0x16100c10,0x58161016,0x10131512,0x450c1058,0x12191314,0x13191346,0x0c105813,0x16121513,0x1213140c,0x10581215,0x13181346,0x12190c10,0x58124513,0x10131513,0x140c1058,0x13461219,0x12451313,0x0c105813,0x14121112,0x4512130c,0x10581215,0x13461219,0x12140c10,0x58154616,0x10161016,0x100c1058,0x15441142,0x15461546,0x0c105816,0x10161016,0x1015130c,0x10581514,0x15121515,0x14130c10,0x58151410,0x10151611,0x120c1058,0x14161010,0x15421546,0x0c105816,0x10161016,0x1016100c,0x10581416,0x14431446,0x14110c10,0x58151411,0x12101015,0x150c1058,0x15161010,0x11411010,0x0c105813,0x14121513,0x1812130c,0x10581246,0x12461312,0x12140c10,0x58111011,0x42154616,0x100c1058,0x16101610,0x16101416,0x0c105814,0x43144614,0x1115140c,0x10581114,0x10101516,0x14150c10,0x58151215,0x14141515,0x180c1058,0x10101141,0x10101313,0x0c105813,0x16134613,0x1012460c,0x10581313,0x12191314,0x12190c10,0x58124612,0x45114215,0x460c1058,0x16101610,0x16101610,0x0c105813,0x15124512,0x1913140c,0x10581319,0x13461316,0x12150c10,0x58131213,0x14121513,0x180c1058,0x13461246,0x13151314,0x0c105813,0x10131513,0x1413460c,0x10581313,0x13141215,0x13120c10,0x58121512,0x46154616,0x100c1058,0x16101610,0x15441142,0x0c105815,0x46154616,0x1016100c,0x10581610,0x15161112,0x14160c10,0x58101015,0x16141515,0x120c1058,0x15141010,0x10181411,0x0c105815,0x10151014,0x1414110c,0x10581514,0x14111010,0x15160c10,0x58101910,0x10154215,0x460c1058,0x16101610,0x16101610,0x0c105815,0x16111214,0x1610100c,0x10581446,0x11421546,0x16100c10,0x58161016,0x10161013,0x150c1058,0x12451219,0x13141319,0x0c105813,0x46131312,0x1513140c,0x10581315,0x13101346,0x12190c10,0x58124513,0x13131412,0x110c1058,0x12451213,0x12151346,0x0c105812,0x19121410,0x1815160c,0x10581019,0x11421546,0x16100c10,0x58161016,0x10161013,0x150c1058,0x12451219,0x13141319,0x0c105813,0x46121912,0x4512190c,0x10581314,0x12191211,0x12430c10,0x58121913,0x41121513,0x460c1058,0x12461315,0x13141310,0x0c105813,0x15131410,0x1815160c,0x10581112,0x14161043,0x10100c10,0x58144610,0x19114215,0x460c1058,0x16101610,0x16101610,0x0c105813,0x15124512,0x1913140c,0x10581319,0x13461219,0x12450c10,0x58121913,0x14121912,0x110c1058,0x12431219,0x13411215,0x0c105813,0x46131612,0x1513120c,0x10581314,0x12151318,0x13460c10,0x58124613,0x15131413,0x100c1058,0x13151314,0x13461313,0x0c105813,0x14121513,0x1212150c,0x10581246,0x10181446,0x10190c10,0x58114215,0x46161016,0x100c1058,0x16101610,0x14461045,0x0c105815,0x16141515,0x1215140c,0x10581415,0x15181010,0x11440c10,0x58101013,0x15144514,0x190c1058,0x15141519,0x12461412,0x0c105814,0x41141514,0x1315140c,0x10581314,0x14461213,0x14430c10,0x58141915,0x10131014,0x460c1058,0x15131018,0x15161045,0x0c105815,0x16141515,0x1215140c,0x10581415,0x15181019,0x11420c10,0x58154616,0x10161016,0x100c1058,0x16101446,0x10451515,0x0c105815,0x16101011,0x4410100c,0x10581516,0x10451515,0x15160c10,0x58114215,0x46161016,0x100c1058,0x16101610,0x15121415,0x0c105815,0x14151515,0x1214450c,0x10581010,0x14461142,0x15460c10,0x58161016,0x10161015,0x440c1058,0x15461546,0x16101610,0x0c105816,0x10141614,0x4314460c,0x10581411,0x15141113,0x10100c10,0x58141214,0x17101815,0x150c1058,0x14191445,0x15141010,0x0c105814,0x13141814,0x1115120c,0x10581518,0x10431010,0x15150c10,0x58141914,0x45151410,0x100c1058,0x14131418,0x14111512,0x0c105815,0x19101910,0x1015420c,0x10581546,0x16101610,0x16100c10,0x58161015,0x12141515,0x140c1058,0x15151512,0x14451010,0x0c105810,0x18101814,0x1314180c,0x10581411,0x15121518,0x10100c10,0x58104210,0x10141314,0x180c1058,0x14111512,0x15191019,0x0c105810,0x10101610,0x1011110c,0x10581019,0x10101041,0x10100c10,0x58111010,0x45111011,0x130c1058,0x10101042,0x10101110,0x0c105810,0x45111011,0x1311420c,0x10581546,0x16101610,0x16100c10,0x58154415,0x46154616,0x100c1058,0x16101610,0x14161443,0x0c105814,0x46141115,0x1411130c,0x10581010,0x14161512,0x14110c10,0x58141710,0x10101815,0x160c1058,0x11121416,0x10101419,0x0c105810,0x19101011,0x4110100c,0x10581313,0x13161346,0x13140c10,0x58141115,0x12141714,0x150c1058,0x15141010,0x15421546,0x0c105816,0x10161016,0x1016100c,0x10581046,0x10461010,0x15170c10,0x58151214,0x19151414,0x150c1058,0x10101411,0x15131010,0x0c105810,0x17141314,0x4614450c,0x10581513,0x15141010,0x15150c10,0x58141914,0x45151410,0x100c1058,0x15141415,0x15181514,0x0c105813,0x42134410,0x1011440c,0x10581010,0x15421146,0x15440c10,0x58114210,0x17101014,0x120c1058,0x14151416,0x14461512,0x0c105814,0x15101014,0x1515180c,0x10581510,0x14461512,0x15140c10,0x58154616,0x10161016,0x100c1058,0x16101413,0x14461445,0x0c105815,0x13151410,0x1015150c,0x10581419,0x14451514,0x10100c10,0x58151414,0x15151815,0x140c1058,0x13421344,0x10101144,0x0c105810,0x10154211,0x4615440c,0x10581142,0x15461610,0x16100c10,0x58161016,0x10141314,0x460c1058,0x14451513,0x15141010,0x0c105815,0x15141914,0x4515140c,0x10581010,0x15141415,0x15180c10,0x58151413,0x46144314,0x150c1058,0x14451010,0x11441010,0x0c105811,0x11111411,0x1411120c,0x10581142,0x15461610,0x16100c10,0x58161016,0x10141314,0x460c1058,0x14451513,0x15141010,0x0c105815,0x15141914,0x4515140c,0x10581010,0x14121443,0x14460c10,0x58141213,0x46151315,0x140c1058,0x14111512,0x15141010,0x0c105811,0x44101011,0x1111100c,0x10581111,0x11141142,0x15460c10,0x58154616,0x10161016,0x100c1058,0x16101413,0x14461445,0x0c105815,0x13151410,0x1015150c,0x10581419,0x14451514,0x10100c10,0x58141614,0x46144515,0x140c1058,0x13461411,0x13421114,0x0c105811,0x18134413,0x4211140c,0x10581344,0x10101144,0x10100c10,0x58154215,0x42111010,0x430c1058,0x11101043,0x11101043,0x0c105811,0x10154410,0x4315420c,0x10581110,0x10431114,0x11100c10,0x58111211,0x16111511,0x190c1058,0x11131115,0x11121043,0x0c105811,0x11111011,0x1111100c,0x10581115,0x11171111,0x11120c10,0x58111811,0x18104311,0x160c1058,0x11121110,0x11141544,0x0c105810,0x43154211,0x1010430c,0x10581110,0x10431116,0x11100c10,0x58111311,0x19111711,0x190c1058,0x11171117,0x11161043,0x0c105811,0x16111711,0x1111100c,0x10581118,0x11181116,0x15440c10,0x58104315,0x42111010,0x430c1058,0x11191111,0x11141113,0x0c105811,0x10111611,0x1611110c,0x10581114,0x10431119,0x11110c10,0x58111411,0x13111011,0x160c1058,0x11161111,0x11141043,0x0c105811,0x15111415,0x4410430c,0x10581542,0x11141110,0x11140c10,0x58111211,0x12111611,0x100c1058,0x11141118,0x10431111,0x0c105811,0x16111111,0x1611190c,0x10581119,0x11151111,0x11130c10,0x58111410,0x43111111,0x110c1058,0x11121114,0x11121118,0x0c105811,0x16111011,0x1411180c,0x10581043,0x11141110,0x11140c10,0x58111211,0x14111211,0x100c1058,0x11111119,0x15441043,0x0c105815,0x42111010,0x4311120c,0x10581110,0x11111117,0x11140c10,0x58111511,0x12111411,0x190c1058,0x10431111,0x11111113,0x0c105811,0x10111511,0x1711130c,0x10581118,0x11141118,0x10430c10,0x58111015,0x44104315,0x420c1058,0x11101043,0x11181115,0x0c105811,0x18111911,0x1911130c,0x10581115,0x11111118,0x10430c10,0x58111911,0x10111711,0x180c1058,0x11131112,0x11181119,0x0c105811,0x11104311,0x1711120c,0x10581112,0x11121544,0x10430c10,0x58154211,0x10104311,0x100c1058,0x10431111,0x11101110,0x0c105811,0x16111611,0x1311120c,0x10581119,0x11161043,0x11170c10,0x58111811,0x19111511,0x110c1058,0x11161544,0x10431542,0x0c105811,0x10104311,0x1211100c,0x10581112,0x11111111,0x11190c10,0x58111211,0x11111610,0x430c1058,0x11121110,0x11121111,0x0c105811,0x11111611,0x1111100c,0x10581118,0x10431111,0x11120c10,0x58111311,0x11111215,0x440c1058,0x10431542,0x11101043,0x0c105811,0x18111011,0x1811140c,0x10581115,0x11181112,0x11150c10,0x58111210,0x43111811,0x100c1058,0x11181114,0x11161114,0x0c105811,0x14111311,0x1210430c,0x10581113,0x11101119,0x11160c10,0x58154410,0x43154211,0x100c1058,0x10431111,0x11101111,0x0c105811,0x13111311,0x1111170c,0x10581116,0x11131112,0x10430c10,0x58111611,0x17111011,0x100c1058,0x11121118,0x11171043,0x0c105811,0x10154410,0x4315420c,0x10581110,0x10431114,0x11100c10,0x58111411,0x12111211,0x160c1058,0x11101114,0x11181043,0x0c105811,0x11111511,0x1711190c,0x10581111,0x11131114,0x10430c10,0x58111015,0x44104315,0x420c1058,0x11121110,0x11111113,0x0c105811,0x12111611,0x1511190c,0x10581112,0x10431111,0x11150c10,0x58111711,0x19111011,0x130c1058,0x11121043,0x11101043,0x0c105811,0x10154410,0x4315420c,0x10581110,0x10431110,0x10430c10,0x58111111,0x12111710,0x430c1058,0x11101544,0x10431542,0x0c105811,0x10104311,0x1611110c,0x10581116,0x11181043,0x11100c10,0x58104311,0x10154410,0x430c1058,0x15421110,0x10431112,0x0c105811,0x10111111,0x1711120c,0x10581110,0x11151117,0x11170c10,0x58104311,0x11111011,0x180c1058,0x11101110,0x11141115,0x0c105811,0x15111911,0x1210430c,0x10581110,0x15441043,0x15420c10,0x58111010,0x43111111,0x160c1058,0x11161117,0x11141114,0x0c105811,0x16111311,0x1011100c,0x10581043,0x11111116,0x11160c10,0x58111711,0x14111511,0x190c1058,0x11191114,0x11171043,0x0c105811,0x17111211,0x1211120c,0x10581544,0x10431542,0x11100c10,0x58104311,0x14111011,0x140c1058,0x11121113,0x11121113,0x0c105811,0x11111810,0x4311150c,0x10581110,0x11141118,0x11190c10,0x58111511,0x15111111,0x120c1058,0x10431116,0x11111117,0x0c105811,0x12154410,0x4315420c,0x10581110,0x10431111,0x11100c10,0x58111011,0x18111811,0x150c1058,0x11131117,0x11151043,0x0c105811,0x11111611,0x1111130c,0x10581117,0x11161114,0x11160c10,0x58111211,0x10104311,0x110c1058,0x11151119,0x11171111,0x0c105815,0x44104315,0x4211100c,0x10581043,0x11111116,0x11110c10,0x58111611,0x19111211,0x190c1058,0x11151119,0x11181043,0x0c105811,0x11111611,0x1111160c,0x10581119,0x11111119,0x11160c10,0x58111411,0x18104311,0x110c1058,0x11151119,0x11171111,0x0c105815,0x44104315,0x4211100c,0x10581043,0x11181110,0x11180c10,0x58111411,0x16111411,0x150c1058,0x11101114,0x10431111,0x0c105811,0x10111111,0x1011110c,0x10581118,0x11151110,0x11180c10,0x58111710,0x43111111,0x120c1058,0x11131114,0x11141544,0x0c105810,0x43154211,0x1010430c,0x10581111,0x11161111,0x11160c10,0x58111911,0x12111911,0x150c1058,0x11191118,0x10431115,0x0c105811,0x10111511,0x1411140c,0x10581114,0x11181110,0x10430c10,0x58111311,0x12111511,0x110c1058,0x11151544,0x10431542,0x0c105811,0x10104311,0x1111160c,0x10581116,0x11171114,0x11150c10,0x58111711,0x18111511,0x140c1058,0x10431115,0x11101115,0x0c105811,0x14111411,0x1411180c,0x10581113,0x10431117,0x11110c10,0x58111711,0x14154410,0x430c1058,0x15421110,0x10431112,0x0c105811,0x10111211,0x1111110c,0x10581116,0x11111110,0x11180c10,0x58104311,0x11111611,0x110c1058,0x11161119,0x11111116,0x0c105811,0x15111011,0x1410430c,0x10581113,0x11121116,0x11110c10,0x58111115,0x44104315,0x420c1058,0x11101043,0x11111116,0x0c105811,0x16111711,0x1411150c,0x10581117,0x11181115,0x11140c10,0x58104311,0x11111611,0x160c1058,0x11171114,0x11141118,0x0c105811,0x14111111,0x1910430c,0x10581111,0x11151119,0x11170c10,0x58111115,0x44104315,0x420c1058,0x11101043,0x11111116,0x0c105811,0x11111611,0x1911110c,0x10581116,0x11151111,0x11100c10,0x58104311,0x11111611,0x160c1058,0x11171114,0x11161114,0x0c105811,0x18111011,0x1010430c,0x10581111,0x11151119,0x11170c10,0x58111115,0x44104315,0x420c1058,0x11101043,0x11111115,0x0c105811,0x17111911,0x1011100c,0x10581118,0x10431114,0x11100c10,0x58111411,0x12111211,0x160c1058,0x11101114,0x11181043,0x0c105811,0x10154410,0x4315420c,0x10581110,0x10431111,0x11150c10,0x58111711,0x19111011,0x120c1058,0x11101043,0x11141110,0x0c105811,0x14111211,0x1211160c,0x10581110,0x11141118,0x10430c10,0x58111015,0x44104315,0x420c1058,0x11101043,0x11121110,0x0c105811,0x12111911,0x1111110c,0x10581118,0x11141110,0x10430c10,0x58111811,0x10111611,0x180c1058,0x11181112,0x11131111,0x0c105811,0x10104311,0x1911160c,0x10581544,0x10431542,0x11100c10,0x58104311,0x12111111,0x110c1058,0x11131119,0x11121119,0x0c105811,0x12111111,0x1610430c,0x10581118,0x11121115,0x11170c10,0x58111511,0x13111610,0x430c1058,0x11101544,0x10431542,0x0c105811,0x10104311,0x1811100c,0x10581116,0x11181118,0x11120c10,0x58111311,0x11111010,0x430c1058,0x11121110,0x11121119,0x0c105811,0x11111111,0x1811140c,0x10581110,0x10431116,0x15440c10,0x58104315,0x42111010,0x430c1058,0x11141110,0x11121116,0x0c105811,0x15111911,0x1311150c,0x10581112,0x10431111,0x11160c10,0x58111611,0x14111011,0x190c1058,0x11161112,0x11181110,0x0c105810,0x43111111,0x1511190c,0x10581117,0x11111544,0x10430c10,0x58154211,0x10104311,0x120c1058,0x11101116,0x11171114,0x0c105811,0x16111511,0x1011120c,0x10581112,0x10431111,0x11160c10,0x58111611,0x17111411,0x160c1058,0x11141110,0x11151119,0x0c105810,0x43111611,0x1215440c,0x10581043,0x15421110,0x10430c10,0x58111111,0x16111611,0x170c1058,0x11141115,0x11171118,0x0c105811,0x19111110,0x4311190c,0x10581111,0x11121114,0x11180c10,0x58111311,0x11111911,0x190c1058,0x10431112,0x11101117,0x0c105811,0x16154410,0x4315420c,0x10581110,0x10431111,0x11170c10,0x58111111,0x17111911,0x180c1058,0x11161118,0x11171119,0x0c105810,0x43111111,0x1711110c,0x10581117,0x11191117,0x11160c10,0x58111611,0x17111810,0x430c1058,0x11111116,0x11121113,0x0c105811,0x10154410,0x4315420c,0x10581110,0x10431115,0x11140c10,0x58111711,0x14111811,0x170c1058,0x11131112,0x10431111,0x0c105811,0x11111211,0x1411120c,0x10581117,0x11101118,0x11150c10,0x58111110,0x43111111,0x150c1058,0x11141116,0x11121544,0x0c105810,0x43154211,0x1010430c,0x10581111,0x11171111,0x11170c10,0x58111911,0x17111411,0x150c1058,0x11151119,0x10431111,0x0c105811,0x17111111,0x1711190c,0x10581118,0x11161119,0x11110c10,0x58111810,0x43111711,0x190c1058,0x11191110,0x15441043,0x0c105815,0x42111010,0x4311110c,0x10581110,0x11151112,0x11170c10,0x58111711,0x10111511,0x150c1058,0x10431111,0x11111117,0x0c105811,0x15111811,0x1511140c,0x10581116,0x11111114,0x10430c10,0x58111311,0x12111611,0x110c1058,0x11141544,0x10431542,0x0c105811,0x10104311,0x1111100c,0x10581111,0x11101115,0x11180c10,0x58111011,0x16111310,0x430c1058,0x11111111,0x11171115,0x0c105811,0x18111511,0x1411160c,0x10581111,0x11141043,0x11130c10,0x58111211,0x16111111,0x140c1058,0x15441043,0x15421110,0x0c105810,0x43111111,0x1611160c,0x10581117,0x11141115,0x11180c10,0x58111611,0x15111210,0x430c1058,0x11111111,0x11121114,0x0c105811,0x12111711,0x1011190c,0x10581117,0x11111043,0x11110c10,0x58111511,0x14111611,0x120c1058,0x15441043,0x15421110,0x0c105810,0x43111111,0x1611160c,0x10581117,0x11141115,0x11170c10,0x58111811,0x19111110,0x430c1058,0x11111116,0x11161117,0x0c105811,0x14111611,0x1511100c,0x10581115,0x11191043,0x11120c10,0x58111511,0x14111411,0x130c1058,0x15441043,0x15421110,0x0c105810,0x43111411,0x1011140c,0x10581112,0x11131112,0x11120c10,0x58111511,0x12104311,0x140c1058,0x11101114,0x11121113,0x0c105811,0x12111211,0x1111160c,0x10581043,0x11111115,0x11130c10,0x58111811,0x14154410,0x430c1058,0x15421110,0x10431118,0x0c105811,0x15111811,0x1911190c,0x10581113,0x11141113,0x11180c10,0x58104311,0x18111011,0x180c1058,0x11141116,0x11141114,0x0c105811,0x13111210,0x4311130c,0x10581110,0x11171116,0x11180c10,0x58154410,0x43154211,0x100c1058,0x10431119,0x11111112,0x0c105811,0x16111811,0x1011150c,0x10581115,0x11111043,0x11110c10,0x58111711,0x11111411,0x180c1058,0x11121112,0x11161118,0x0c105811,0x16104311,0x1211160c,0x10581114,0x11171110,0x15440c10,0x58104315,0x42111010,0x430c1058,0x11111110,0x11151112,0x0c105811,0x17111711,0x1011150c,0x10581115,0x10431111,0x11100c10,0x58111111,0x10111511,0x180c1058,0x11101115,0x11141043,0x0c105811,0x13111811,0x1411160c,0x10581544,0x10431542,0x11100c10,0x58104311,0x11111611,0x160c1058,0x11171114,0x11151117,0x0c105811,0x18111911,0x1110430c,0x10581112,0x11111113,0x11190c10,0x58111011,0x15111611,0x190c1058,0x11191115,0x10431112,0x0c105811,0x15111411,0x1611130c,0x10581544,0x10431542,0x11100c10,0x58104311,0x11111611,0x160c1058,0x11171114,0x11151117,0x0c105811,0x18111911,0x1110430c,0x10581111,0x11181117,0x11100c10,0x58111611,0x12111511,0x160c1058,0x11151111,0x10431112,0x0c105811,0x15111411,0x1411170c,0x10581544,0x10431542,0x11100c10,0x58104311,0x11111611,0x160c1058,0x11171114,0x11151117,0x0c105811,0x18111511,0x1410430c,0x10581111,0x11161116,0x11170c10,0x58111411,0x15111711,0x180c1058,0x11191111,0x10431111,0x0c105811,0x15111911,0x1711110c,0x10581544,0x10431544,0x11420c10,0x58154616,0x10161016,0x100c1058,0x16101413,0x14461445,0x0c105815,0x13151410,0x1015150c,0x10581419,0x14451514,0x10100c10,0x58141614,0x46144515,0x140c1058,0x13461412,0x13421114,0x0c105811,0x19134413,0x4211140c,0x10581344,0x10101144,0x10100c10,0x58154215,0x42111010,0x430c1058,0x11111110,0x11111110,0x0c105811,0x15111811,0x1011160c,0x10581113,0x10431111,0x11170c10,0x58111111,0x17111911,0x170c1058,0x11161115,0x11181112,0x0c105810,0x43111111,0x1611120c,0x10581113,0x11101544,0x10430c10,0x58154211,0x18111111,0x120c1058,0x11161114,0x11161114,0x0c105811,0x10111010,0x4311110c,0x10581116,0x11161117,0x11190c10,0x58111811,0x18111211,0x180c1058,0x11161043,0x11111116,0x0c105811,0x16111711,0x1411150c,0x10581117,0x11181119,0x11110c10,0x58104311,0x11111511,0x190c1058,0x11171111,0x15441043,0x0c105815,0x42111010,0x4311110c,0x10581117,0x11111117,0x11190c10,0x58111811,0x16111911,0x110c1058,0x11191043,0x11111117,0x0c105811,0x11111711,0x1911170c,0x10581116,0x11161113,0x11100c10,0x58104311,0x11111611,0x120c1058,0x11131110,0x15441043,0x0c105815,0x42111010,0x4311110c,0x10581116,0x11111117,0x11110c10,0x58111211,0x16111211,0x100c1058,0x11161043,0x11111116,0x0c105811,0x16111111,0x1311140c,0x10581114,0x11181111,0x11160c10,0x58104311,0x11111511,0x190c1058,0x11171111,0x15441043,0x0c105815,0x42111010,0x4311140c,0x10581110,0x11141112,0x11130c10,0x58111211,0x12111511,0x120c1058,0x10431111,0x11151111,0x0c105811,0x11111511,0x1211180c,0x10581114,0x11171112,0x10430c10,0x58111311,0x12111311,0x180c1058,0x11121544,0x10431542,0x0c105811,0x10104311,0x1111160c,0x10581116,0x11171114,0x11150c10,0x58111711,0x18111511,0x140c1058,0x10431111,0x11161116,0x0c105811,0x17111411,0x1511170c,0x10581118,0x11191111,0x10430c10,0x58111211,0x15111411,0x140c1058,0x11131544,0x10431542,0x0c105811,0x10104311,0x1111160c,0x10581116,0x11141114,0x11190c10,0x58111011,0x15111011,0x140c1058,0x10431111,0x11161116,0x0c105811,0x17111411,0x1511170c,0x10581118,0x11191111,0x10430c10,0x58111211,0x15111411,0x140c1058,0x11131544,0x10431542,0x0c105811,0x10104311,0x1111180c,0x10581110,0x11131115,0x11110c10,0x58111511,0x17111011,0x120c1058,0x10431111,0x11161116,0x0c105811,0x17111411,0x1511190c,0x10581119,0x11141117,0x10430c10,0x58111211,0x15111411,0x140c1058,0x11131544,0x10431542,0x0c105811,0x10104311,0x1111100c,0x10581114,0x11131117,0x11150c10,0x58111111,0x17111711,0x190c1058,0x10431119,0x11111110,0x0c105811,0x10111411,0x1011100c,0x10581119,0x11121043,0x11120c10,0x58111511,0x14111411,0x130c1058,0x15441043,0x15421110,0x0c105810,0x43111411,0x1011140c,0x10581112,0x11131112,0x11120c10,0x58111511,0x12104311,0x110c1058,0x11171111,0x11171119,0x0c105811,0x17111611,0x1011180c,0x10581118,0x10431112,0x11160c10,0x58111211,0x11111415,0x440c1058,0x10431542,0x11101043,0x0c105811,0x11111011,0x1511100c,0x10581117,0x11191116,0x11170c10,0x58111910,0x43111111,0x160c1058,0x11131110,0x11151114,0x0c105811,0x11111811,0x1311160c,0x10581043,0x11131112,0x11160c10,0x58111111,0x11154410,0x430c1058,0x10461041,0x10101512,0x0c105814,0x15141114,0x1410100c,0x10581419,0x14161010,0x14130c10,0x58151515,0x14141510,0x100c1058,0x10411046,0x15421110,0x0c105810,0x43111211,0x1011120c,0x10581111,0x11111116,0x11110c10,0x58111511,0x16104311,0x120c1058,0x11101112,0x11111111,0x0c105811,0x16111111,0x1011180c,0x10581043,0x11111115,0x11130c10,0x58111711,0x12154410,0x430c1058,0x15421110,0x10431119,0x0c105811,0x14111611,0x1811180c,0x10581118,0x11171116,0x11180c10,0x58104311,0x15111011,0x170c1058,0x11191114,0x11101111,0x0c105811,0x12104311,0x1115440c,0x10581043,0x15421110,0x10430c10,0x58111811,0x10111811,0x140c1058,0x11161114,0x11141114,0x0c105811,0x14104311,0x1811100c,0x10581118,0x11141116,0x11140c10,0x58111411,0x13111210,0x430c1058,0x11111115,0x11141110,0x0c105811,0x18154410,0x4315420c,0x10581110,0x10431110,0x10430c10,0x58111010,0x43111111,0x130c1058,0x11161110,0x11161116,0x0c105811,0x16111511,0x1915440c,0x10581043,0x15421111,0x11160c10,0x58111711,0x11111111,0x160c1058,0x11181110,0x10431110,0x0c105810,0x43111010,0x4311100c,0x10581544,0x10431542,0x11100c10,0x58104311,0x10104311,0x100c1058,0x10431112,0x11101112,0x0c105811,0x11111111,0x1911110c,0x10581116,0x11181544,0x10430c10,0x58154211,0x10104311,0x180c1058,0x11151118,0x11191119,0x0c105811,0x13111511,0x1111180c,0x10581043,0x11111119,0x11170c10,0x58111811,0x14111311,0x100c1058,0x10431110,0x15441043,0x0c105815,0x42111010,0x4311110c,0x10581117,0x11111117,0x11190c10,0x58111811,0x16111811,0x170c1058,0x11181043,0x11111110,0x0c105811,0x12111611,0x1411130c,0x10581113,0x11101112,0x10430c10,0x58111111,0x17111911,0x180c1058,0x15441043,0x15421110,0x0c105810,0x43111511,0x1011150c,0x10581115,0x11131116,0x11160c10,0x58111210,0x43111411,0x100c1058,0x11181118,0x11151117,0x0c105811,0x19104311,0x1015440c,0x10581043,0x15421110,0x10430c10,0x58111811,0x15111811,0x190c1058,0x11191113,0x11151111,0x0c105811,0x18104311,0x1811100c,0x10581119,0x11121115,0x11120c10,0x58111411,0x10111310,0x430c1058,0x11111114,0x11131118,0x0c105811,0x14154410,0x4315420c,0x10581110,0x10431115,0x11100c10,0x58111511,0x15111311,0x160c1058,0x11161112,0x10431114,0x0c105811,0x10111811,0x1811170c,0x10581110,0x11131043,0x11100c10,0x58154410,0x43154211,0x100c1058,0x10431111,0x11101111,0x0c105811,0x10111511,0x1811100c,0x10581116,0x11131043,0x11160c10,0x58111311,0x17111911,0x130c1058,0x11111112,0x11171110,0x0c105810,0x43111711,0x1211120c,0x10581112,0x15441043,0x15420c10,0x58111811,0x10111811,0x160c1058,0x11151116,0x11131118,0x0c105811,0x14104311,0x1811150c,0x10581118,0x11191119,0x11130c10,0x58111411,0x17111010,0x430c1058,0x11171112,0x11121112,0x0c105811,0x10111611,0x1710430c,0x10581110,0x15441043,0x15420c10,0x58111010,0x43111111,0x170c1058,0x11111117,0x11191118,0x0c105811,0x16111911,0x1111190c,0x10581043,0x11111110,0x11140c10,0x58111211,0x13111011,0x150c1058,0x11101112,0x10431111,0x0c105811,0x17111911,0x1815440c,0x10581043,0x15421110,0x10430c10,0x58111411,0x10111411,0x120c1058,0x11131112,0x11121115,0x0c105811,0x12104311,0x1111180c,0x10581114,0x11111111,0x11170c10,0x58111610,0x43111611,0x110c1058,0x11161118,0x15441043,0x0c105815,0x42111111,0x1711110c,0x10581117,0x11191117,0x11160c10,0x58111011,0x16111410,0x430c1058,0x11111116,0x11111116,0x0c105811,0x19111211,0x1811180c,0x10581116,0x11141043,0x11170c10,0x58111311,0x16111411,0x170c1058,0x11101114,0x10431112,0x0c105811,0x14111611,0x1711120c,0x10581544,0x10431542,0x11100c10,0x58104311,0x15111011,0x160c1058,0x11181118,0x11111116,0x0c105811,0x13111910,0x4311110c,0x10581110,0x11171113,0x11160c10,0x58111111,0x18111211,0x120c1058,0x10431111,0x11171119,0x0c105811,0x18154410,0x4315420c,0x10581110,0x10431114,0x11100c10,0x58111411,0x12111311,0x120c1058,0x11121115,0x11121043,0x0c105811,0x14111011,0x1411120c,0x10581113,0x11121112,0x11110c10,0x58111610,0x43111711,0x110c1058,0x11191112,0x15441043,0x0c105815,0x42111010,0x4311110c,0x10581118,0x11101112,0x11120c10,0x58111011,0x11111911,0x150c1058,0x11151043,0x11131116,0x0c105811,0x13111711,0x1011190c,0x10581119,0x10431110,0x15440c10,0x58104315,0x42111010,0x430c1058,0x11111117,0x11111117,0x0c105811,0x19111811,0x1611190c,0x10581111,0x11181043,0x11130c10,0x58111811,0x19111211,0x180c1058,0x11131118,0x10431110,0x0c105815,0x44104315,0x4211100c,0x10581043,0x11111116,0x11160c10,0x58111711,0x14111511,0x170c1058,0x11181115,0x11141043,0x0c105811,0x14111011,0x1811180c,0x10581116,0x11171115,0x10430c10,0x58111015,0x44104315,0x420c1058,0x11111110,0x11111110,0x0c105811,0x16111011,0x1311150c,0x10581112,0x10431111,0x11170c10,0x58111111,0x17111911,0x180c1058,0x11161118,0x11171118,0x0c105810,0x43111311,0x1811190c,0x10581112,0x11181113,0x11180c10,0x58104311,0x10154410,0x430c1058,0x15421118,0x11101118,0x0c105811,0x14111811,0x1211180c,0x10581111,0x11161043,0x11180c10,0x58111511,0x18111911,0x190c1058,0x11131114,0x11171110,0x0c105810,0x43111711,0x1211120c,0x10581112,0x11101116,0x11170c10,0x58104311,0x10154410,0x430c1058,0x15421110,0x10431111,0x0c105811,0x10111111,0x1011150c,0x10581118,0x11101116,0x11130c10,0x58104311,0x13111811,0x190c1058,0x11141118,0x11181116,0x0c105810,0x43111015,0x4410430c,0x10581542,0x11101043,0x11140c10,0x58111711,0x12111911,0x130c1058,0x11131111,0x11181112,0x0c105810,0x43111411,0x1011180c,0x10581118,0x11151118,0x11120c10,0x58104311,0x10154410,0x430c1058,0x15421110,0x10431112,0x0c105811,0x10111211,0x1111140c,0x10581110,0x11171112,0x11180c10,0x58104311,0x12111011,0x150c1058,0x11141115,0x11181114,0x0c105811,0x14111410,0x4311120c,0x10581110,0x11161110,0x15440c10,0x58104315,0x42111010,0x430c1058,0x11181115,0x11181119,0x0c105811,0x19111311,0x1511110c,0x10581118,0x10431113,0x11130c10,0x58111511,0x15111411,0x140c1058,0x11131043,0x11101544,0x0c105810,0x43154211,0x1010430c,0x10581111,0x11171111,0x11170c10,0x58111911,0x17111611,0x100c1058,0x11181118,0x10431116,0x0c105811,0x17111111,0x1011180c,0x10581118,0x11161043,0x11100c10,0x58154410,0x43154211,0x100c1058,0x10431111,0x11181110,0x0c105811,0x12111211,0x1011170c,0x10581110,0x11131110,0x10430c10,0x58111611,0x15111111,0x130c1058,0x11151111,0x11151043,0x0c105811,0x10154410,0x4315420c,0x10581110,0x10431114,0x11170c10,0x58111111,0x16111111,0x100c1058,0x11191117,0x11191043,0x0c105811,0x16111511,0x1011110c,0x10581119,0x11111116,0x10430c10,0x58111015,0x44104315,0x420c1058,0x11111116,0x11111113,0x0c105811,0x17111611,0x1611140c,0x10581110,0x11101043,0x11110c10,0x58111611,0x16111711,0x140c1058,0x11151117,0x11191111,0x0c105811,0x18104311,0x1611150c,0x10581111,0x11131115,0x11100c10,0x58111710,0x43111015,0x440c1058,0x10431542,0x11101043,0x0c105811,0x12111011,0x1111170c,0x10581114,0x11151112,0x11170c10,0x58111910,0x43111811,0x130c1058,0x11131116,0x11111115,0x0c105811,0x12104311,0x1015440c,0x10581043,0x15421110,0x10430c10,0x58111411,0x10111411,0x120c1058,0x11131112,0x11131110,0x0c105811,0x14104311,0x1411100c,0x10581114,0x11121112,0x11190c10,0x58111611,0x15111610,0x430c1058,0x11121118,0x11161119,0x0c105811,0x16154410,0x4315420c,0x10581110,0x10431114,0x11100c10,0x58111411,0x12111311,0x120c1058,0x11121111,0x11161043,0x0c105811,0x14111011,0x1411120c,0x10581112,0x11161110,0x11170c10,0x58111210,0x43111611,0x110c1058,0x11161118,0x15441043,0x0c105815,0x42111010,0x4311140c,0x10581110,0x11141112,0x11130c10,0x58111211,0x12111011,0x160c1058,0x10431114,0x11101114,0x0c105811,0x12111511,0x1411170c,0x10581114,0x11141043,0x11130c10,0x58111611,0x10111815,0x440c1058,0x10431542,0x11101043,0x0c105811,0x10104311,0x1010430c,0x10581112,0x11181112,0x11110c10,0x58111915,0x44104315,0x420c1058,0x11121111,0x11131111,0x0c105811,0x11111011,0x1011160c,0x10581117,0x11121043,0x11110c10,0x58111611,0x11111711,0x110c1058,0x11191112,0x11151117,0x0c105811,0x15104311,0x1111160c,0x10581111,0x11161119,0x11120c10,0x58111811,0x18111611,0x140c1058,0x10431119,0x11161544,0x0c105810,0x43154211,0x1111100c,0x10581117,0x11131117,0x11140c10,0x58111111,0x18111211,0x140c1058,0x10431112,0x11111113,0x0c105811,0x16111411,0x1911120c,0x10581110,0x11191116,0x10430c10,0x58111111,0x10111711,0x180c1058,0x11141118,0x11131110,0x0c105811,0x17111110,0x4311160c,0x10581114,0x15441043,0x15440c10,0x58114215,0x46154616,0x100c1058,0x16101610,0x16101416,0x0c105814,0x43144614,0x1115140c,0x10581010,0x15101518,0x10100c10,0x58114410,0x10141910,0x450c1058,0x15151516,0x10451518,0x0c105810,0x10104110,0x1012130c,0x10581246,0x12431313,0x11420c10,0x58154616,0x10161016,0x100c1058,0x16101416,0x14431446,0x0c105814,0x11151410,0x1015100c,0x10581519,0x10101144,0x10100c10,0x58141910,0x45151515,0x160c1058,0x10451519,0x10101041,0x0c105810,0x10131212,0x4613170c,0x10581313,0x11421546,0x16100c10,0x58161016,0x10161015,0x150c1058,0x14191445,0x15141010,0x0c105814,0x13141814,0x1115120c,0x10581518,0x10101144,0x10100c10,0x58151015,0x18114215,0x460c1058,0x16101610,0x16101610,0x0c105815,0x15141914,0x4515140c,0x10581010,0x14131418,0x14110c10,0x58151215,0x19101011,0x440c1058,0x10101510,0x15191142,0x0c105815,0x46154616,0x1016100c,0x10581610,0x16101515,0x14190c10,0x58144515,0x14101014,0x130c1058,0x14181411,0x15121346,0x0c105814,0x19144514,0x1414150c,0x10581518,0x10101144,0x10100c10,0x58101814,0x13141814,0x110c1058,0x15121518,0x10101042,0x0c105810,0x10101813,0x1212460c,0x10581317,0x13131010,0x10440c10,0x58101011,0x11101010,0x440c1058,0x10101413,0x14181411,0x0c105815,0x12151910,0x1910100c,0x10581041,0x10101213,0x12460c10,0x58124313,0x13101911,0x420c1058,0x15461610,0x16101610,0x0c105816,0x10151514,0x1914450c,0x10581514,0x10101413,0x14180c10,0x58141115,0x12114215,0x460c1058,0x16101610,0x16101610,0x0c105814,0x16144314,0x4614110c,0x10581514,0x11131010,0x14130c10,0x58144614,0x43144615,0x120c1058,0x10101144,0x10101110,0x0c105810,0x45111811,0x4215460c,0x10581610,0x16101610,0x16100c10,0x58141914,0x16101010,0x180c1058,0x14131418,0x14111512,0x0c105813,0x46141914,0x4514140c,0x10581415,0x15181010,0x11450c10,0x58114410,0x10141214,0x430c1058,0x14461412,0x13461513,0x0c105815,0x14141115,0x1215140c,0x10581010,0x10161016,0x10100c10,0x58141314,0x18141115,0x120c1058,0x13461419,0x14451414,0x0c105814,0x15151810,0x1011430c,0x10581010,0x10181412,0x14430c10,0x58144614,0x12134615,0x130c1058,0x15141411,0x15121514,0x0c105810,0x10104210,0x1015140c,0x10581415,0x15181514,0x13460c10,0x58144314,0x15144510,0x100c1058,0x10411010,0x11111111,0x0c105810,0x19101910,0x1015420c,0x10581546,0x16101610,0x16100c10,0x58161016,0x10151514,0x190c1058,0x14451514,0x10101412,0x0c105814,0x43144614,0x1213460c,0x10581419,0x14451414,0x14150c10,0x58151810,0x10114410,0x100c1058,0x14131418,0x14111512,0x0c105813,0x46141914,0x4514140c,0x10581415,0x15181010,0x10440c10,0x58101014,0x12144314,0x460c1058,0x14121346,0x15131514,0x0c105814,0x11151215,0x1411420c,0x10581546,0x16101610,0x16100c10,0x58161016,0x10151514,0x190c1058,0x14451514,0x10101445,0x0c105815,0x15144414,0x1214150c,0x10581512,0x13461419,0x14450c10,0x58141414,0x15151810,0x100c1058,0x11441010,0x14121443,0x0c105814,0x46141213,0x4614190c,0x10581445,0x14141415,0x15180c10,0x58101010,0x46101011,0x110c1058,0x11111142,0x15461610,0x0c105816,0x10161016,0x1016100c,0x10581515,0x14191445,0x15140c10,0x58101014,0x14141914,0x170c1058,0x14191514,0x13461446,0x0c105814,0x16141615,0x1314150c,0x10581514,0x10101144,0x10100c10,0x58141214,0x43144614,0x120c1058,0x13461419,0x14451414,0x0c105814,0x15151810,0x1010150c,0x10581010,0x11111111,0x11420c10,0x58154616,0x10161016,0x100c1058,0x16101610,0x14191416,0x0c105810,0x10101814,0x1414190c,0x10581417,0x14191514,0x13460c10,0x58144614,0x16141615,0x130c1058,0x14151514,0x10101144,0x0c105811,0x44101011,0x1010190c,0x10581010,0x15421546,0x16100c10,0x58161016,0x10161016,0x100c1058,0x16101413,0x14181411,0x0c105815,0x12101011,0x4410100c,0x10581111,0x11161142,0x10100c10,0x58104610,0x46101010,0x170c1058,0x11101017,0x15461610,0x0c105816,0x10161016,0x1016100c,0x10581610,0x14131446,0x14430c10,0x58144615,0x12101011,0x440c1058,0x10101416,0x14431446,0x0c105814,0x11151411,0x1310180c,0x10581111,0x10431010,0x11100c10,0x58104511,0x13104310,0x100c1058,0x11101045,0x11151019,0x0c105811,0x42154616,0x1016100c,0x10581610,0x16101610,0x15440c10,0x58101014,0x15144315,0x130c1058,0x14151010,0x14191416,0x0c105810,0x10101814,0x1414190c,0x10581417,0x14191514,0x13460c10,0x58144614,0x16141615,0x130c1058,0x14151514,0x10101144,0x0c105811,0x44101011,0x1110190c,0x10581010,0x15421546,0x16100c10,0x58161016,0x10161016,0x100c1058,0x16101413,0x14181411,0x0c105815,0x12101011,0x4410100c,0x10581118,0x11181142,0x10100c10,0x58104610,0x46101010,0x170c1058,0x15181017,0x15461610,0x0c105816,0x10161016,0x1016100c,0x10581610,0x14131446,0x14430c10,0x58144615,0x12101011,0x440c1058,0x10101416,0x14431446,0x0c105814,0x11151411,0x1310180c,0x10581111,0x10431010,0x11100c10,0x58104511,0x13104310,0x100c1058,0x11101045,0x11151019,0x0c105811,0x42154616,0x1016100c,0x10581610,0x16101610,0x15440c10,0x58101014,0x15144315,0x130c1058,0x14151010,0x14191416,0x0c105810,0x10101814,0x1414190c,0x10581417,0x14191514,0x13460c10,0x58144614,0x16141615,0x130c1058,0x14151514,0x10101144,0x0c105811,0x44101011,0x1111100c,0x10581019,0x10101542,0x15460c10,0x58161016,0x10161016,0x100c1058,0x16101610,0x14131418,0x0c105814,0x11151210,0x1011440c,0x10581010,0x11111112,0x11420c10,0x58101010,0x46104610,0x100c1058,0x10171043,0x10171546,0x0c105816,0x10161016,0x1016100c,0x10581610,0x15441010,0x14150c10,0x58144315,0x13141510,0x100c1058,0x15421546,0x16101610,0x0c105816,0x10161016,0x1016100c,0x10581515,0x14191445,0x15140c10,0x58101014,0x45151514,0x440c1058,0x14121415,0x15121010,0x0c105811,0x44101015,0x1414150c,0x10581518,0x15141342,0x14450c10,0x58151514,0x44141214,0x150c1058,0x15121346,0x14191445,0x0c105814,0x14141515,0x1813440c,0x10581142,0x15461610,0x16100c10,0x58161016,0x10161016,0x100c1058,0x15151419,0x14451514,0x0c105810,0x10144514,0x1914120c,0x10581412,0x14431415,0x13460c10,0x58144614,0x16141615,0x130c1058,0x14151514,0x10101144,0x0c105810,0x10101814,0x1414190c,0x10581417,0x14191514,0x13460c10,0x58144614,0x16141615,0x130c1058,0x14151514,0x10101044,0x0c105810,0x10111210,0x1910100c,0x10581016,0x10101117,0x11420c10,0x58154616,0x10161016,0x100c1058,0x16101610,0x16101515,0x0c105814,0x19144515,0x1410100c,0x10581445,0x14191412,0x14120c10,0x58144314,0x15101011,0x440c1058,0x10101018,0x14451515,0x0c105814,0x44141214,0x1515120c,0x10581010,0x11451145,0x10100c10,0x58101810,0x18111710,0x100c1058,0x10441010,0x14451419,0x0c105814,0x12141214,0x4314150c,0x10581346,0x14461416,0x14160c10,0x58151314,0x15151410,0x190c1058,0x10101041,0x10101114,0x0c105810,0x19101910,0x1010160c,0x10581010,0x11111115,0x11420c10,0x58154616,0x10161016,0x100c1058,0x16101610,0x16101413,0x0c105814,0x46144515,0x1315140c,0x10581010,0x15151419,0x14450c10,0x58151410,0x10141814,0x150c1058,0x15181346,0x14131418,0x0c105814,0x11151215,0x1313420c,0x10581111,0x11161344,0x10100c10,0x58114410,0x10154211,0x110c1058,0x11161043,0x10101111,0x0c105811,0x17104310,0x1011110c,0x10581118,0x10431010,0x11110c10,0x58111910,0x43101011,0x120c1058,0x11101043,0x10101112,0x0c105811,0x11104310,0x1011120c,0x10581112,0x10431010,0x11120c10,0x58111310,0x43101011,0x120c1058,0x11141043,0x10101112,0x0c105811,0x15104310,0x1011160c,0x10581115,0x10431010,0x11160c10,0x58111610,0x43101011,0x160c1058,0x11171043,0x10101116,0x0c105811,0x18104310,0x1011160c,0x10581119,0x10431010,0x11170c10,0x58111015,0x44114215,0x460c1058,0x16101610,0x16101610,0x0c105816,0x10161014,0x1314180c,0x10581411,0x15121010,0x11440c10,0x58101014,0x18141515,0x180c1058,0x13461413,0x14181411,0x0c105815,0x12151313,0x4214450c,0x10581419,0x14121412,0x14430c10,0x58141513,0x44114215,0x460c1058,0x16101610,0x16101610,0x0c105816,0x10161014,0x1314460c,0x10581443,0x14461512,0x10100c10,0x58114410,0x10141614,0x430c1058,0x14461411,0x15141113,0x0c105810,0x18111010,0x4511120c,0x10581043,0x10101110,0x10450c10,0x58111811,0x15104310,0x100c1058,0x11111019,0x11421546,0x0c105816,0x10161016,0x1016100c,0x10581610,0x15441546,0x16100c10,0x58161016,0x10161015,0x440c1058,0x10101415,0x14431513,0x0c105814,0x15101015,0x4215460c,0x10581610,0x16101610,0x16100c10,0x58161014,0x19141610,0x100c1058,0x10181413,0x14181411,0x0c105815,0x12134614,0x1914450c,0x10581414,0x14151518,0x10100c10,0x58114510,0x10141214,0x430c1058,0x14461412,0x13461513,0x0c105815,0x14141115,0x1215140c,0x10581019,0x10101542,0x10100c10,0x58141314,0x18141115,0x120c1058,0x13461419,0x14451414,0x0c105814,0x15151810,0x1010440c,0x10581144,0x10101514,0x14150c10,0x58151815,0x14134614,0x430c1058,0x14151445,0x10101041,0x0c105810,0x10111111,0x1110100c,0x10581044,0x10101111,0x11420c10,0x58101015,0x44154616,0x100c1058,0x16101610,0x16101610,0x0c105815,0x15141914,0x4515140c,0x10581010,0x15141415,0x15180c10,0x58151413,0x46141914,0x450c1058,0x14141415,0x15181010,0x0c105811,0x44101014,0x1314180c,0x10581411,0x15121346,0x14190c10,0x58144514,0x14141515,0x180c1058,0x10101145,0x11451010,0x0c105811,0x12114215,0x4616100c,0x10581610,0x16101610,0x16100c10,0x58141914,0x16101010,0x180c1058,0x15141415,0x15181514,0x0c105813,0x46141914,0x4514140c,0x10581415,0x15181010,0x11450c10,0x58101015,0x14141515,0x180c1058,0x15141346,0x14431415,0x0c105814,0x45101910,0x1015420c,0x10581010,0x15121415,0x15140c10,0x58151515,0x12144510,0x100c1058,0x14121417,0x10181413,0x0c105814,0x18141115,0x1215180c,0x10581043,0x10101413,0x14180c10,0x58141115,0x12151910,0x190c1058,0x11421010,0x15441546,0x0c105816,0x10161016,0x1016100c,0x10581610,0x14131418,0x14110c10,0x58151210,0x10114410,0x100c1058,0x15141415,0x15181514,0x0c105813,0x42151414,0x1515180c,0x10581514,0x13461419,0x14450c10,0x58141414,0x15151813,0x440c1058,0x11421546,0x16101610,0x0c105816,0x10161016,0x1015150c,0x10581419,0x14451514,0x10100c10,0x58141215,0x19151414,0x150c1058,0x13461419,0x14451414,0x0c105814,0x15151810,0x1011440c,0x10581010,0x10181413,0x14180c10,0x58141115,0x12134614,0x190c1058,0x14451414,0x14151518,0x0c105810,0x10101610,0x1011130c,0x10581019,0x11421546,0x16100c10,0x58161016,0x10161016,0x100c1058,0x14191416,0x10101018,0x0c105814,0x12151915,0x1414150c,0x10581346,0x14191445,0x14140c10,0x58141515,0x18101011,0x440c1058,0x11441010,0x11101019,0x0c105810,0x10154210,0x1014130c,0x10581418,0x14111512,0x10100c10,0x58114511,0x45114410,0x100c1058,0x11121114,0x11421544,0x0c105815,0x46161016,0x1016100c,0x10581610,0x16101415,0x14430c10,0x58151314,0x15101014,0x190c1058,0x14161010,0x10181412,0x0c105815,0x19151414,0x1513460c,0x10581419,0x14451414,0x14150c10,0x58151810,0x10114411,0x440c1058,0x10101111,0x10191010,0x0c105815,0x42101014,0x1314180c,0x10581411,0x15121010,0x11450c10,0x58114511,0x44101011,0x110c1058,0x11161142,0x15441546,0x0c105816,0x10161016,0x1016100c,0x10581610,0x14151443,0x15130c10,0x58141510,0x10141914,0x160c1058,0x10101018,0x14121519,0x0c105815,0x14141513,0x4614190c,0x10581445,0x14141415,0x15180c10,0x58101011,0x44114410,0x100c1058,0x11121019,0x10101542,0x0c105810,0x10141314,0x1814110c,0x10581512,0x10101145,0x11450c10,0x58114410,0x10111811,0x420c1058,0x15441546,0x16101610,0x0c105816,0x10161015,0x4415460c,0x10581546,0x16101610,0x16100c10,0x58161014,0x13141814,0x110c1058,0x15121010,0x10161144,0x0c105810,0x10111015,0x1814160c,0x10581416,0x11421546,0x16100c10,0x58161016,0x10161015,0x150c1058,0x14191445,0x15141010,0x0c105815,0x14151810,0x1011440c,0x10581010,0x10181510,0x15180c10,0x58101010,0x44101014,0x130c1058,0x14181411,0x15121518,0x0c105810,0x19101010,0x4110100c,0x10581118,0x11421546,0x16100c10,0x58161016,0x10161015,0x150c1058,0x14191445,0x15141010,0x0c105815,0x14151910,0x1011440c,0x10581010,0x10181510,0x15190c10,0x58101010,0x44101014,0x130c1058,0x14181411,0x15121519,0x0c105810,0x19101010,0x4110100c,0x10581111,0x11161142,0x15460c10,0x58154616,0x10161016,0x100c1058,0x16101515,0x14191445,0x0c105815,0x14101015,0x1314150c,0x10581413,0x15141419,0x14460c10,0x58144513,0x46141914,0x450c1058,0x14141415,0x15181010,0x0c105811,0x44101015,0x1415190c,0x10581010,0x11451145,0x10100c10,0x58111211,0x42154616,0x100c1058,0x16101610,0x16101515,0x0c105814,0x19144515,0x1410100c,0x10581446,0x14161416,0x15130c10,0x58141515,0x14101011,0x440c1058,0x10101514,0x15181010,0x0c105810,0x42101010,0x1810180c,0x10581514,0x15191010,0x10160c10,0x58101011,0x13101910,0x100c1058,0x11431143,0x10101113,0x0c105810,0x19114215,0x4616100c,0x10581610,0x16101610,0x14160c10,0x58144314,0x46141115,0x140c1058,0x10101510,0x14191518,0x0c105814,0x15144310,0x1011440c,0x10581010,0x11101142,0x15460c10,0x58161016,0x10161016,0x100c1058,0x14191416,0x10101018,0x0c105814,0x13141814,0x1115120c,0x10581010,0x11431010,0x11140c10,0x58111810,0x19154215,0x460c1058,0x16101610,0x16101610,0x0c105816,0x10151014,0x1915180c,0x10581415,0x14431010,0x11440c10,0x58101010,0x18141614,0x460c1058,0x14451514,0x13461411,0x0c105813,0x42141314,0x1814110c,0x10581512,0x13441342,0x15130c10,0x58141514,0x13151414,0x190c1058,0x14461445,0x13461419,0x0c105814,0x45141414,0x1515180c,0x10581344,0x10101145,0x11450c10,0x58101014,0x46141614,0x160c1058,0x15131415,0x15141019,0x0c105810,0x10101610,0x1011110c,0x10581142,0x15461610,0x16100c10,0x58161016,0x10154410,0x100c1058,0x14151443,0x15131415,0x0c105810,0x10154215,0x4616100c,0x10581610,0x16101610,0x16100c10,0x58151014,0x19151814,0x150c1058,0x14431010,0x11441010,0x0c105810,0x18141614,0x4614450c,0x10581514,0x13461412,0x13420c10,0x58141314,0x18141115,0x120c1058,0x10101044,0x10101114,0x0c105811,0x18134413,0x4215130c,0x10581415,0x14131514,0x14190c10,0x58144614,0x45134614,0x190c1058,0x14451414,0x14151518,0x0c105813,0x44101011,0x4511450c,0x10581010,0x14461416,0x14160c10,0x58151314,0x15151410,0x190c1058,0x10101016,0x10101111,0x0c105811,0x42154616,0x1016100c,0x10581610,0x16101544,0x15460c10,0x58161016,0x10161016,0x100c1058,0x14191416,0x10101018,0x0c105815,0x10141915,0x1814150c,0x10581443,0x10191010,0x15420c10,0x58154616,0x10161016,0x100c1058,0x16101610,0x15121415,0x0c105815,0x14151515,0x1214450c,0x10581010,0x14131446,0x14430c10,0x58144615,0x12114215,0x460c1058,0x16101610,0x16101610,0x0c105815,0x44101014,0x1514430c,0x10581513,0x14151010,0x15420c10,0x58154616,0x10161016,0x100c1058,0x16101610,0x15121415,0x0c105815,0x14151515,0x1214450c,0x10581010,0x14121417,0x10180c10,0x58141314,0x18141115,0x120c1058,0x15181043,0x10101413,0x0c105814,0x18141115,0x1215190c,0x10581019,0x11421546,0x16100c10,0x58161016,0x10161015,0x440c1058,0x15461610,0x16101610,0x0c105815,0x44154616,0x1016100c,0x10581610,0x12151245,0x12140c10,0x58121312,0x17154616,0x100c1058,0x16101544,0x15461610,0x0c105815,0x44154615,0x4415460c,0x5d1b5f60,0x60606043,0x4f4e5354,0x0055494e,0x54005445,0x58543f4c,0x454e001d,0x00111414,0x121b5f60,0x60606043,0x4f4e5354,0x0055494e,0x5400424c,0x4f423f53,0x54415254,0x001d0011,0x1011141b,0x5f5f6060,0x6060434f,0x4e535400,0x55494e54,0x00464f4e,0x543f413b,0x14183d3b,0x143d001d,0x005b5b10,0x0c100c10,0x0c105d0c,0x5b100c14,0x10121615,0x19131512,0x0c111011,0x10151711,0x1218180c,0x16121014,0x5d0c5b10,0x0c100c16,0x10131917,0x19171716,0x0c161711,0x10181816,0x5d0c5b10,0x0c191114,0x13101616,0x11140c19,0x11141310,0x16161114,0x0c15145d,0x0c5b1410,0x14121216,0x1014180c,0x11161116,0x19191511,0x13140c11,0x11121412,0x18161014,0x180c1410,0x14121412,0x1011195d,0x0c5b100c,0x12101117,0x14151214,0x190c1111,0x13101517,0x13181418,0x0c105d0c,0x5b100c18,0x15181919,0x13151118,0x0c191017,0x18131218,0x19110c17,0x1212125d,0x0c5b100c,0x100c1110,0x10161613,0x1219160c,0x17181915,0x11165d0c,0x5b100c12,0x10121111,0x19121116,0x0c121012,0x11111611,0x10180c11,0x12131112,0x5d0c5b10,0x0c181018,0x14151812,0x15120c18,0x10181416,0x14141312,0x0c131019,0x165d0c5b,0x100c1110,0x11131311,0x17161312,0x0c161710,0x10121817,0x0c105d0c,0x5b100c14,0x10141212,0x16101418,0x0c111517,0x19111314,0x0c105d0c,0x5b121011,0x13121615,0x19120c11,0x15171910,0x13120c10,0x0c105d0c,0x5b100c10,0x0c111217,0x0c105d0c,0x5b100c16,0x1116180c,0x100c105d,0x0c5b100c,0x12101117,0x12101517,0x170c1110,0x18101014,0x15151912,0x0c105d0c,0x5b100c11,0x16161714,0x14161310,0x100c1116,0x16171415,0x19191417,0x0c171212,0x125d0c5b,0x100c1410,0x14121312,0x1311180c,0x15101418,0x19151511,0x120c1611,0x17125d0c,0x5b100c11,0x10101818,0x15131715,0x0c111611,0x13171614,0x1612100c,0x11151917,0x115d0c5b,0x100c1116,0x11161912,0x19151918,0x0c111611,0x16191119,0x1614180c,0x11151917,0x115d0c5b,0x100c1810,0x18141614,0x1510140c,0x11101110,0x11181510,0x18170c11,0x12131414,0x5d0c5b10,0x0c111611,0x16191219,0x1519180c,0x15101514,0x14141810,0x0c131215,0x11155d0c,0x5b100c11,0x16161714,0x15171815,0x140c1510,0x15141414,0x18130c17,0x1117145d,0x0c5b100c,0x12101211,0x11161110,0x180c1116,0x11161911,0x16151014,0x0c131216,0x11115d0c,0x5b100c11,0x16161714,0x15171815,0x140c1116,0x16171414,0x18141119,0x0c111519,0x17115d0c,0x5b100c11,0x16111619,0x11161511,0x100c1116,0x16171416,0x14181010,0x0c111519,0x17115d0c,0x5b100c11,0x15171910,0x10180c14,0x10141212,0x16101418,0x0c105d0c,0x5b100c11,0x15171910,0x12100c14,0x10141212,0x16101418,0x0c105d0c,0x5b100c12,0x10121911,0x11181410,0x0c181016,0x18181213,0x11100c19,0x165d0c5b,0x100c1211,0x11131912,0x19121116,0x0c181215,0x17151316,0x0c105d0c,0x5b100c18,0x10161818,0x12131110,0x0c121012,0x19111118,0x14100c16,0x5d0c5b10,0x0c141012,0x16151913,0x15120c11,0x16161410,0x19161218,0x100c1115,0x1917115d,0x0c5b100c,0x12101617,0x14161510,0x12120c11,0x16161714,0x16141015,0x190c1612,0x5d0c5b10,0x0c111616,0x17141517,0x1819110c,0x19111214,0x18131119,0x190c1210,0x17165d0c,0x5b100c11,0x17111719,0x18161817,0x190c1117,0x11171917,0x16161718,0x0c111612,0x13105d0c,0x5b100c15,0x14171418,0x1713120c,0x11111214,0x12171018,0x15110c11,0x15141612,0x5d0c5b10,0x0c111711,0x17191714,0x1515190c,0x11171117,0x19181619,0x11180c17,0x1919105d,0x0c5b100c,0x11101512,0x17171015,0x150c1111,0x17151815,0x14161114,0x0c131216,0x11145d0c,0x5b100c11,0x10111015,0x18101613,0x0c111117,0x15181514,0x1611140c,0x13121611,0x145d0c5b,0x100c1116,0x16171415,0x18161512,0x0c111112,0x14121710,0x1917110c,0x11151416,0x125d0c5b,0x100c1116,0x16171415,0x17181911,0x0c111616,0x17141615,0x1015190c,0x12151414,0x135d0c5b,0x100c1410,0x14121312,0x1215120c,0x14101412,0x13121211,0x160c1115,0x1318145d,0x0c5b100c,0x18151819,0x19131413,0x180c1810,0x18141614,0x1413120c,0x13101716,0x185d0c5b,0x100c1911,0x12161810,0x1515110c,0x11171114,0x18121216,0x18160c12,0x16141710,0x5d0c5b10,0x0c111015,0x12171710,0x15150c11,0x10111015,0x18101514,0x0c131814,0x165d0c5b,0x100c1116,0x16171415,0x17181911,0x0c121113,0x19101516,0x1919150c,0x12151416,0x135d0c5b,0x100c1116,0x16171415,0x17181911,0x0c111817,0x10161215,0x1615110c,0x12151414,0x175d0c5b,0x100c1116,0x16171415,0x17181514,0x0c111616,0x17141517,0x1819110c,0x11151917,0x115d0c5d,0x1b5f6060,0x6060434f,0x4e535400,0x55494e54,0x00464f4e,0x543f423b,0x14193d3b,0x143d001d,0x005b5b10,0x0c111011,0x10151810,0x16130c11,0x17111719,0x17161518,0x120c1116,0x1213105d,0x0c5b1811,0x12161416,0x1410100c,0x11161617,0x19181812,0x18160c11,0x16161714,0x15171819,0x110c1115,0x1917115d,0x0c5b100c,0x11171117,0x19181619,0x11190c11,0x17111719,0x17161613,0x100c1116,0x1213105d,0x0c5b100c,0x11161117,0x11121612,0x10160c11,0x16161113,0x14141811,0x160c1115,0x1917115d,0x0c5b100c,0x14101412,0x13121215,0x120c1115,0x11111512,0x18141712,0x0c131213,0x18125d0c,0x5b100c11,0x16161714,0x15171815,0x140c1116,0x16171415,0x17181911,0x0c121514,0x14135d0c,0x5b100c11,0x16161414,0x19101510,0x140c1116,0x16171415,0x17181911,0x0c121514,0x14135d0c,0x5b100c11,0x18101315,0x11151710,0x120c1116,0x16171415,0x19191417,0x0c121514,0x14135d0c,0x5b100c11,0x10141317,0x15111717,0x190c1911,0x10101410,0x1019120c,0x12151414,0x135d0c5b,0x100c1410,0x14121312,0x1215120c,0x11171117,0x19171610,0x18180c12,0x16121114,0x5d0c5b10,0x0c111015,0x10171916,0x17190c11,0x16131015,0x14111813,0x160c1312,0x1611115d,0x0c0f0a00,0x52454144,0x00494600,0x43555445,0x000a0f5b,0x100c1210,0x12111116,0x1115160c,0x12101211,0x11161110,0x180c1115,0x1317125d,0x0c5b100c,0x19141618,0x18181716,0x180c1510,0x17191410,0x11120c11,0x5d0c5b10,0x0c181018,0x14161414,0x14140c18,0x10181416,0x14141312,0x0c111514,0x10185d0c,0x5b100c10,0x0c100c11,0x13161016,0x16161519,0x5d0c5b11,0x16171111,0x1618100c,0x100c100c,0x105d0c5b,0x100c100c,0x100c1210,0x12111119,0x1116185d,0x0c5b100c,0x18151819,0x19131511,0x180c1119,0x17181413,0x100c105d,0x0c5b100c,0x11171117,0x19181618,0x17180c11,0x10121614,0x13131012,0x0c111719,0x185d0c5b,0x100c1510,0x15151316,0x16120c14,0x10181815,0x17190c10,0x5d0c5b10,0x0c181518,0x19191315,0x11180c18,0x10191215,0x12141013,0x0c111413,0x18145d0c,0x5b100c15,0x10151513,0x1616120c,0x14101818,0x1710130c,0x105d0c5b,0x100c1110,0x11101518,0x1016130c,0x16131719,0x13111217,0x100c1712,0x12125d0c,0x5b181018,0x16151613,0x18140c18,0x15181919,0x13141710,0x0c171212,0x12101617,0x0c105d0c,0x5b100c11,0x17111719,0x18161911,0x190c1110,0x14121310,0x1510120c,0x11171918,0x5d0c5b10,0x0c141014,0x12131212,0x15120c11,0x18141111,0x17160c16,0x1116185d,0x0c5b1117,0x11171917,0x16101614,0x0c111611,0x16191218,0x1816140c,0x17131614,0x1710140c,0x12141617,0x125d0c5b,0x100c1510,0x16181811,0x1613190c,0x11101713,0x16111812,0x120c1117,0x19185d0c,0x5b100c14,0x10141213,0x12121512,0x0c141014,0x12131212,0x11160c17,0x1119125d,0x0c5b100c,0x11181012,0x12101119,0x15150c13,0x16131710,0x19190c10,0x5d0c5b10,0x0c111711,0x17191816,0x1911180c,0x13181912,0x1813180c,0x105d0c5b,0x100c1116,0x16171415,0x17181514,0x0c141018,0x18161715,0x0c105d0c,0x5b111011,0x10161013,0x15120c11,0x17111719,0x18161817,0x180c1318,0x19121813,0x180c105d,0x0c5b1810,0x18141812,0x1811160c,0x18151819,0x19131417,0x100c1712,0x12121016,0x170c105d,0x0c5b100c,0x11101110,0x15181016,0x130c1318,0x19141818,0x160c105d,0x0c5b100c,0x14171219,0x13131118,0x120c1410,0x18181518,0x120c105d,0x0c5b100c,0x12101211,0x14101712,0x180c1210,0x15141518,0x1414140c,0x12101610,0x5d0c5b10,0x0c181518,0x19191315,0x11180c13,0x13151514,0x14130c10,0x5d0c5b10,0x0c111711,0x17191716,0x1018180c,0x16171110,0x1818160c,0x105d0c5b,0x100c1118,0x10121210,0x17101310,0x0c161511,0x13151115,0x0c105d0c,0x5b100c14,0x17111611,0x10191719,0x0c161510,0x11191116,0x0c105d0c,0x5b111611,0x13171616,0x1410100c,0x11161617,0x14151719,0x11180c16,0x15111315,0x10170c10,0x5d0c5b10,0x0c121011,0x17141512,0x17190c18,0x13131611,0x15120c10,0x5d0c5b10,0x0c141014,0x12131213,0x10140c14,0x10141212,0x19161516,0x0c121816,0x19165d0c,0x5b100c14,0x10141213,0x12121116,0x0c141014,0x12121610,0x17120c16,0x1116185d,0x0c5b100c,0x14101412,0x13121210,0x160c1410,0x14121514,0x1714140c,0x13161018,0x5d0c5b10,0x0c100c10,0x0c121812,0x11195d0c,0x5b121113,0x11111010,0x1617120c,0x11161117,0x11191215,0x17150c11,0x16111619,0x12181816,0x140c1916,0x5d0c5b11,0x10171317,0x14111812,0x140c1211,0x13161419,0x12101916,0x0c111017,0x18141813,0x1017110c,0x16145d0c,0x5d1b5f5f,0x60606060,0x464c4f41,0x54005058,0x001d0049,0x0e55560e,0x58000a00,0x232f2c33,0x1b5f6060,0x6060464c,0x4f415400,0x5059001d,0x00490e55,0x560e5900,0x0a00322f,0x37331b5f,0x60606060,0x55494e54,0x00434841,0x5258001d,0x0050581b,0x5f606060,0x6055494e,0x54004348,0x41525900,0x1d005059,0x1b5f5f60,0x60606055,0x494e5400,0x43484152,0x3f494e44,0x4558001d,0x00084348,0x41525800,0x0b000832,0x2f373300,0x0d001100,0x0d004348,0x41525909,0x000a0023,0x2f2c3309,0x1b5f6060,0x60605549,0x4e540043,0x4841521b,0x5f606060,0x60464c4f,0x41541300,0x434f4c4f,0x52001d00,0x100e181b,0x5f606060,0x60494600,0x08434841,0x523f494e,0x44455800,0x1e1d0042,0x4c4f423f,0x53544152,0x54000606,0x00434841,0x523f494e,0x44455800,0x1c000842,0x4c4f423f,0x53544152,0x54000b00,0x54455854,0x3f4c454e,0x000a0011,0x11090900,0x5b5f6060,0x60606055,0x494e5400,0x424c4f42,0x3f494e44,0x4558001d,0x00434841,0x523f494e,0x44455800,0x0d00424c,0x4f423f53,0x54415254,0x1b5f6060,0x60606055,0x494e5400,0x4e554d42,0x45523f49,0x4e444558,0x001d0042,0x4c4f423f,0x494e4445,0x58000f00,0x11111b5f,0x60606060,0x6055494e,0x54004449,0x4749543f,0x4f464653,0x4554001d,0x00424c4f,0x423f494e,0x44455800,0x05001111,0x1b5f6060,0x60606049,0x46000844,0x49474954,0x3f4f4646,0x53455400,0x1d1d0010,0x09005b5f,0x60606060,0x60604348,0x4152001d,0x0011161b,0x000f0f00,0x0710075f,0x60606060,0x6060434f,0x4c4f5200,0x1d00464c,0x4f415413,0x08110c00,0x100e130c,0x00100e15,0x091b5f60,0x60606060,0x5d00454c,0x53450049,0x46000844,0x49474954,0x3f4f4646,0x53455400,0x1d1d0011,0x09005b5f,0x60606060,0x60604348,0x4152001d,0x0018181b,0x000f0f00,0x0758075f,0x60606060,0x6060434f,0x4c4f5200,0x1d00464c,0x4f415413,0x08110c00,0x100e130c,0x00100e15,0x091b5f60,0x60606060,0x5d00454c,0x53450049,0x46000844,0x49474954,0x3f4f4646,0x53455400,0x1d1d0011,0x1009005b,0x5f606060,0x60606043,0x48415200,0x1d001112,0x1b000f0f,0x00070c07,0x5f606060,0x60605d00,0x454c5345,0x005b5f60,0x60606060,0x6055494e,0x54004e55,0x4d424552,0x001d0054,0x4558543b,0x4e554d42,0x45523f49,0x4e444558,0x3d1b5f60,0x60606060,0x6055494e,0x54004e49,0x42424c45,0x3f4f4646,0x53455400,0x1d000844,0x49474954,0x3f4f4646,0x53455400,0x0d001209,0x00060017,0x1b5f6060,0x60606060,0x55494e54,0x004e4942,0x424c4500,0x1d00084e,0x554d4245,0x52001e1e,0x00080817,0x000d004e,0x4942424c,0x453f4f46,0x46534554,0x09000a00,0x14090900,0x06001115,0x1b5f6060,0x60606060,0x434f4e53,0x54005549,0x4e540048,0x45583f43,0x48415253,0x3b11163d,0x001d005b,0x11160c00,0x11170c00,0x11180c00,0x11190c00,0x12100c00,0x12110c00,0x12120c00,0x12130c00,0x12140c00,0x12150c00,0x16150c00,0x16160c00,0x16170c00,0x16180c00,0x16190c00,0x17105d1b,0x5f606060,0x60606043,0x48415200,0x1d004845,0x583f4348,0x4152533b,0x4e494242,0x4c453d1b,0x5f606060,0x60606043,0x4f4c4f52,0x001d0046,0x4c4f4154,0x1308100e,0x120c0010,0x0e18150c,0x0011091b,0x5f606060,0x60605d5f,0x60606060,0x5d00454c,0x5345005b,0x5f606060,0x60604946,0x00084348,0x41523f49,0x4e444558,0x001e0042,0x4c4f423f,0x53544152,0x5409005b,0x00434841,0x523f494e,0x44455800,0x0d1d0054,0x4558543f,0x4c454e00,0x0a001111,0x000d0011,0x1b005d5f,0x60606060,0x6055494e,0x54005445,0x58543f49,0x4e444558,0x001d0043,0x4841523f,0x494e4445,0x58001e1e,0x00121b5f,0x60606060,0x60494600,0x08544558,0x543f494e,0x44455800,0x1e005445,0x58543f4c,0x454e0900,0x5b005245,0x5455524e,0x00424708,0x43484152,0x580c0043,0x48415259,0x091b005d,0x5f606060,0x60604348,0x4152001d,0x00544558,0x543b5445,0x58543f49,0x4e444558,0x3d1b5f60,0x60606060,0x55494e54,0x00425954,0x453f494e,0x44455800,0x1d000843,0x4841523f,0x494e4445,0x58000600,0x13091b5f,0x60606060,0x60494600,0x08425954,0x453f494e,0x44455800,0x1d1d0010,0x09005b00,0x43484152,0x001e1e1d,0x0012141b,0x5d5f6060,0x60606045,0x4c534500,0x49460008,0x42595445,0x3f494e44,0x4558001d,0x1d001109,0x005b0043,0x48415200,0x1e1e1d00,0x11161b5d,0x5f606060,0x6060454c,0x53450049,0x46000842,0x5954453f,0x494e4445,0x58001d1d,0x00120900,0x5b004348,0x4152001e,0x1e1d0018,0x1b5d5f60,0x6060605d,0x5f5f6060,0x60604348,0x41520006,0x1d001058,0x46461b5f,0x60606060,0x55494e54,0x00545800,0x1d000850,0x58000d00,0x43484152,0x5809000a,0x00181b5f,0x60606060,0x55494e54,0x00545900,0x1d000850,0x59000d00,0x43484152,0x5909000a,0x0011161b,0x5f5f6060,0x60605549,0x4e540053,0x45435449,0x4f4e3f49,0x4e444558,0x001d0054,0x59001e1e,0x00121b5f,0x60606060,0x55494e54,0x004f4646,0x53455400,0x1d005458,0x000b0008,0x08545900,0x06001309,0x001c1c00,0x13091b5f,0x60606060,0x464c4f41,0x54005049,0x58454c00,0x1d00101b,0x5f606060,0x60494600,0x08434841,0x52001c00,0x1418095b,0x5f606060,0x60605049,0x58454c00,0x1d000846,0x4f4e543f,0x413b4348,0x41523d3b,0x53454354,0x494f4e3f,0x494e4445,0x583d001e,0x1e004f46,0x46534554,0x09000600,0x111b5f60,0x6060605d,0x00454c53,0x45005b5f,0x60606060,0x60504958,0x454c001d,0x0008464f,0x4e543f42,0x3b434841,0x52000d00,0x14183d3b,0x53454354,0x494f4e3f,0x494e4445,0x583d001e,0x1e004f46,0x46534554,0x09000600,0x111b5f60,0x6060605d,0x5f606060,0x60494600,0x08504958,0x454c0900,0x5b5f6060,0x60606052,0x45545552,0x4e00434f,0x4c4f521b,0x5f606060,0x605d0045,0x4c534500,0x5b5f6060,0x60606052,0x45545552,0x4e004247,0x08434841,0x52580c00,0x43484152,0x59091b5f,0x60606060,0x5d5f6060,0x605d5f60,0x6060252e,0x2423275f,0x60605d5f,0x605d5f5d,0x5f000000,}; - const uint text_len = 5408; - const uint blob_start = 970; + const uint text[] = {0x33484144,0x45520002,0x23524953,0x50593049,0x4e0f3155,0x494e4502,0x005b5f0f,0x0f004854,0x5450531a,0x0f0f4749,0x540e4352,0x49535059,0x50494e0e,0x43430f23,0x52495350,0x5930494e,0x0f435652,0x0d50524f,0x50530f53,0x52430f42,0x52414e43,0x480f4d41,0x494e0f21,0x53534554,0x530f5445,0x53540f51,0x55494e45,0x0e534841,0x4445525f,0x33554233,0x48414445,0x52005b00,0x30415353,0x005b5f23,0x2730322f,0x2732212d,0x5f600350,0x5241474d,0x41005645,0x52544558,0x00564552,0x545f6003,0x50524147,0x4d410046,0x5241474d,0x454e5400,0x46524147,0x5f600349,0x4e434c55,0x44450002,0x354e4954,0x5923270e,0x4347494e,0x43025f60,0x03444546,0x494e4500,0x322f3733,0x00111010,0x5f600344,0x4546494e,0x4500232f,0x2c330032,0x2f37330a,0x125f5f60,0x53545255,0x43540041,0x50504441,0x5441005b,0x5f606046,0x4c4f4154,0x14005645,0x52544558,0x001a0030,0x2f332934,0x292f2e1b,0x5f606046,0x4c4f4154,0x12005556,0x001a0034,0x2538232f,0x2f322410,0x1b5f6060,0x352e2934,0x393f3625,0x32342538,0x3f292e30,0x35343f29,0x2e333421,0x2e23253f,0x29245f60,0x5d1b5f60,0x53545255,0x43540056,0x1246005b,0x5f606046,0x4c4f4154,0x12005556,0x001a0034,0x2538232f,0x2f322410,0x1b5f6060,0x464c4f41,0x54140056,0x45525445,0x58001a00,0x33363f30,0x2f332934,0x292f2e1b,0x5f606035,0x2e293439,0x3f362532,0x3425383f,0x2f353430,0x35343f33,0x34253225,0x2f5f605d,0x1b5f5f60,0x56124600,0x56455254,0x00084150,0x50444154,0x41005609,0x005b5f60,0x60561246,0x004f1b5f,0x6060352e,0x2934393f,0x33253435,0x303f292e,0x3334212e,0x23253f29,0x24085609,0x1b5f6060,0x352e2934,0x393f292e,0x29342921,0x2c293a25,0x3f2f3534,0x30353408,0x5612460c,0x004f091b,0x5f606035,0x2e293439,0x3f292e29,0x3429212c,0x293a253f,0x36253234,0x25383f2f,0x35343035,0x343f3334,0x2532252f,0x084f091b,0x5f60604f,0x0e564552,0x54455800,0x1d00354e,0x4954592f,0x424a4543,0x54344f23,0x4c495030,0x4f530856,0x0e564552,0x54455809,0x1b5f6060,0x4f0e5556,0x001d0056,0x0e55561b,0x5f606052,0x45545552,0x4e004f1b,0x5f605d5f,0x5f60464c,0x4f415413,0x00465241,0x47000856,0x12460049,0x09001a00,0x33363f34,0x41524745,0x54005b5f,0x60600f0f,0x00575249,0x54450041,0x53000743,0x4f4e5354,0x0055494e,0x54005445,0x58543b3d,0x001d005b,0x1f5d1b07,0x00424546,0x4f524500,0x4558504f,0x52545f60,0x60434f4e,0x53540055,0x494e5400,0x54455854,0x3b3d001d,0x005b1f5d,0x1b5f6060,0x434f4e53,0x54005549,0x4e540054,0x4558543f,0x4c454e00,0x1d001112,0x19191b5f,0x6060434f,0x4e535400,0x55494e54,0x00424c4f,0x423f5354,0x41525400,0x1d001719,0x181b5f60,0x60434f4e,0x53540055,0x494e5400,0x464f4e54,0x3b19173d,0x3b143d00,0x1d005b5b,0x100c100c,0x100c105d,0x0c5b100c,0x14101216,0x15191315,0x120c1110,0x11101517,0x11121818,0x0c161210,0x145d0c5b,0x100c100c,0x16101319,0x17191717,0x160c1617,0x11101818,0x165d0c5b,0x100c1911,0x14131016,0x1611140c,0x19111413,0x10161611,0x140c1514,0x5d0c5b14,0x10141212,0x16101418,0x0c111611,0x16191915,0x1113140c,0x11111214,0x12181610,0x14180c14,0x10141214,0x12101119,0x5d0c5b10,0x0c121011,0x17141512,0x14190c11,0x11131015,0x17131814,0x180c105d,0x0c5b100c,0x18151819,0x19131511,0x180c1910,0x17181312,0x1819110c,0x17121212,0x5d0c5b10,0x0c100c11,0x10101616,0x13121916,0x0c171819,0x1511165d,0x0c5b100c,0x12101211,0x11191211,0x160c1210,0x12111116,0x1110180c,0x11121311,0x125d0c5b,0x100c1810,0x18141518,0x1215120c,0x18101814,0x16141413,0x120c1310,0x19165d0c,0x5b100c11,0x10111313,0x11171613,0x120c1617,0x10101218,0x170c105d,0x0c5b100c,0x14101412,0x12161014,0x180c1115,0x17191113,0x140c105d,0x0c5b1210,0x11131216,0x1519120c,0x11151719,0x1013120c,0x100c105d,0x0c5b100c,0x100c1112,0x170c105d,0x0c5b100c,0x16111618,0x0c100c10,0x5d0c5b10,0x0c121011,0x17121015,0x17170c11,0x10181010,0x14151519,0x120c105d,0x0c5b100c,0x11161617,0x14141613,0x10100c11,0x16161714,0x15191914,0x170c1712,0x12125d0c,0x5b100c14,0x10141213,0x12131118,0x0c151014,0x18191515,0x11120c16,0x1117125d,0x0c5b100c,0x11101018,0x18151317,0x150c1116,0x11131716,0x14161210,0x0c111519,0x17115d0c,0x5b100c11,0x16111619,0x12191519,0x180c1116,0x11161911,0x19161418,0x0c111519,0x17115d0c,0x5b100c18,0x10181416,0x14151014,0x0c111011,0x10111815,0x1018170c,0x11121314,0x145d0c5b,0x100c1116,0x11161912,0x19151918,0x0c151015,0x14141418,0x100c1312,0x1511155d,0x0c5b100c,0x11161617,0x14151718,0x15140c15,0x10151414,0x1418130c,0x17111714,0x5d0c5b10,0x0c121012,0x11111611,0x10180c11,0x16111619,0x11161510,0x140c1312,0x1611115d,0x0c5b100c,0x11161617,0x14151718,0x15140c11,0x16161714,0x14181411,0x190c1115,0x1917115d,0x0c5b100c,0x11161116,0x19111615,0x11100c11,0x16161714,0x16141810,0x100c1115,0x1917115d,0x0c5b100c,0x11151719,0x1010180c,0x14101412,0x12161014,0x180c105d,0x0c5b100c,0x11151719,0x1012100c,0x14101412,0x12161014,0x180c105d,0x0c5b100c,0x12101219,0x11111814,0x100c1810,0x16181812,0x1311100c,0x19165d0c,0x5b100c12,0x11111319,0x12191211,0x160c1812,0x15171513,0x160c105d,0x0c5b100c,0x18101618,0x18121311,0x100c1210,0x12191111,0x1814100c,0x165d0c5b,0x100c1410,0x12161519,0x1315120c,0x11161614,0x10191612,0x18100c11,0x15191711,0x5d0c5b10,0x0c121016,0x17141615,0x1012120c,0x11161617,0x14161410,0x15190c16,0x125d0c5b,0x100c1116,0x16171415,0x17181911,0x0c191112,0x14181311,0x19190c12,0x1017165d,0x0c5b100c,0x11171117,0x19181618,0x17190c11,0x17111719,0x17161617,0x180c1116,0x1213105d,0x0c5b100c,0x15141714,0x18171312,0x0c111112,0x14121710,0x1815110c,0x11151416,0x125d0c5b,0x100c1117,0x11171917,0x14151519,0x0c111711,0x17191816,0x1911180c,0x17191910,0x5d0c5b10,0x0c111015,0x12171710,0x15150c11,0x11171518,0x15141611,0x140c1312,0x1611145d,0x0c5b100c,0x11101110,0x15181016,0x130c1111,0x17151815,0x14161114,0x0c131216,0x11145d0c,0x5b100c11,0x16161714,0x15181615,0x120c1111,0x12141217,0x10191711,0x0c111514,0x16125d0c,0x5b100c11,0x16161714,0x15171819,0x110c1116,0x16171416,0x15101519,0x0c121514,0x14135d0c,0x5b100c14,0x10141213,0x12121512,0x0c141014,0x12131212,0x11160c11,0x15131814,0x5d0c5b10,0x0c181518,0x19191314,0x13180c18,0x10181416,0x14141312,0x0c131017,0x16185d0c,0x5b100c19,0x11121618,0x10151511,0x0c111711,0x14181212,0x1618160c,0x12161417,0x105d0c5b,0x100c1110,0x15121717,0x1015150c,0x11101110,0x15181015,0x140c1318,0x14165d0c,0x5b100c11,0x16161714,0x15171819,0x110c1211,0x13191015,0x16191915,0x0c121514,0x16135d0c,0x5b100c11,0x16161714,0x15171819,0x110c1118,0x17101612,0x15161511,0x0c121514,0x14175d0c,0x5b100c11,0x16161714,0x15171815,0x140c1116,0x16171415,0x17181911,0x0c111519,0x17115d0c,0x5b100c11,0x10111015,0x18101613,0x0c111711,0x17191716,0x1518120c,0x11161213,0x105d0c5b,0x18111216,0x14161410,0x100c1116,0x16171918,0x18121816,0x0c111616,0x17141517,0x1819110c,0x11151917,0x115d0c5b,0x100c1117,0x11171918,0x16191119,0x0c111711,0x17191716,0x1613100c,0x11161213,0x105d0c5b,0x100c1116,0x11171112,0x16121016,0x0c111616,0x11131414,0x1811160c,0x11151917,0x115d0c5b,0x100c1410,0x14121312,0x1215120c,0x11151111,0x15121814,0x17120c13,0x12131812,0x5d0c5b10,0x0c111616,0x17141517,0x1815140c,0x11161617,0x14151718,0x19110c12,0x15141413,0x5d0c5b10,0x0c111616,0x14141910,0x1510140c,0x11161617,0x14151718,0x19110c12,0x15141413,0x5d0c5b10,0x0c111810,0x13151115,0x1710120c,0x11161617,0x14151919,0x14170c12,0x15141413,0x5d0c5b10,0x0c111014,0x13171511,0x1717190c,0x19111010,0x14101019,0x120c1215,0x1414135d,0x0c5b100c,0x14101412,0x13121215,0x120c1117,0x11171917,0x16101818,0x0c121612,0x11145d0c,0x5b100c11,0x10151017,0x19161719,0x0c111613,0x10151411,0x1813160c,0x13121611,0x115d0c0f,0x0a005245,0x41440049,0x46004355,0x5445000a,0x0f5b100c,0x12101211,0x11161115,0x160c1210,0x12111116,0x1110180c,0x11151317,0x125d0c5b,0x100c1914,0x16181818,0x1716180c,0x15101719,0x14101112,0x0c115d0c,0x5b100c18,0x10181416,0x14141414,0x0c181018,0x14161414,0x13120c11,0x15141018,0x5d0c5b10,0x0c100c10,0x0c111316,0x10161616,0x15195d0c,0x5b111617,0x11111618,0x100c100c,0x100c105d,0x0c5b100c,0x100c100c,0x12101211,0x11191116,0x185d0c5b,0x100c1815,0x18191913,0x1511180c,0x11191718,0x1413100c,0x105d0c5b,0x100c1117,0x11171918,0x16181718,0x0c111012,0x16141313,0x10120c11,0x1719185d,0x0c5b100c,0x15101515,0x13161612,0x0c141018,0x18151719,0x0c105d0c,0x5b100c18,0x15181919,0x13151118,0x0c181019,0x12151214,0x10130c11,0x14131814,0x5d0c5b10,0x0c151015,0x15131616,0x120c1410,0x18181710,0x130c105d,0x0c5b100c,0x11101110,0x15181016,0x130c1613,0x17191311,0x1217100c,0x17121212,0x5d0c5b18,0x10181615,0x16131814,0x0c181518,0x19191314,0x17100c17,0x12121210,0x16170c10,0x5d0c5b10,0x0c111711,0x17191816,0x1911190c,0x11101412,0x13101510,0x120c1117,0x19185d0c,0x5b100c14,0x10141213,0x12121512,0x0c111814,0x11111716,0x0c161116,0x185d0c5b,0x11171117,0x19171610,0x16140c11,0x16111619,0x12181816,0x140c1713,0x16141710,0x140c1214,0x1617125d,0x0c5b100c,0x15101618,0x18111613,0x190c1110,0x17131611,0x1812120c,0x11171918,0x5d0c5b10,0x0c141014,0x12131212,0x15120c14,0x10141213,0x12121116,0x0c171119,0x125d0c5b,0x100c1118,0x10121210,0x11191515,0x0c131613,0x17101919,0x0c105d0c,0x5b100c11,0x17111719,0x18161911,0x180c1318,0x19121813,0x180c105d,0x0c5b100c,0x11161617,0x14151718,0x15140c14,0x10181816,0x17150c10,0x5d0c5b11,0x10111016,0x10131512,0x0c111711,0x17191816,0x1817180c,0x13181912,0x1813180c,0x105d0c5b,0x18101814,0x18121811,0x160c1815,0x18191913,0x1417100c,0x17121212,0x1016170c,0x105d0c5b,0x100c1110,0x11101518,0x1016130c,0x13181914,0x1818160c,0x105d0c5b,0x100c1417,0x12191313,0x1118120c,0x14101818,0x1518120c,0x105d0c5b,0x100c1210,0x12111410,0x1712180c,0x12101514,0x15181414,0x140c1210,0x16105d0c,0x5b100c18,0x15181919,0x13151118,0x0c131315,0x15141413,0x0c105d0c,0x5b100c11,0x17111719,0x17161018,0x180c1617,0x11101818,0x160c105d,0x0c5b100c,0x11181012,0x12101710,0x13100c16,0x15111315,0x11150c10,0x5d0c5b10,0x0c141711,0x16111019,0x17190c16,0x15101119,0x11160c10,0x5d0c5b11,0x16111317,0x16161410,0x100c1116,0x16171415,0x17191118,0x0c161511,0x13151017,0x0c105d0c,0x5b100c12,0x10111714,0x15121719,0x0c181313,0x16111512,0x0c105d0c,0x5b100c14,0x10141213,0x12131014,0x0c141014,0x12121916,0x15160c12,0x18161916,0x5d0c5b10,0x0c141014,0x12131212,0x11160c14,0x10141212,0x16101712,0x0c161116,0x185d0c5b,0x100c1410,0x14121312,0x1210160c,0x14101412,0x15141714,0x140c1316,0x10185d0c,0x5b100c10,0x0c100c12,0x18121119,0x5d0c5b12,0x11131111,0x10101617,0x120c1116,0x11171119,0x12151715,0x0c111611,0x16191218,0x1816140c,0x19165d0c,0x5b111017,0x13171411,0x1812140c,0x12111316,0x14191210,0x19160c11,0x10171814,0x18131017,0x110c1614,0x5d5d1b5f,0x5f606046,0x4c4f4154,0x00505800,0x1d00490e,0x55560e58,0x000a0023,0x2f2c331b,0x5f606046,0x4c4f4154,0x00505900,0x1d00490e,0x55560e59,0x000a0032,0x2f37331b,0x5f606055,0x494e5400,0x43484152,0x58001d00,0x50581b5f,0x60605549,0x4e540043,0x48415259,0x001d0050,0x591b5f5f,0x60605549,0x4e540043,0x4841523f,0x494e4445,0x58001d00,0x08434841,0x5258000b,0x0008322f,0x3733000d,0x0011000d,0x00434841,0x52590900,0x0a00232f,0x2c33091b,0x5f606055,0x494e5400,0x43484152,0x1b5f6060,0x464c4f41,0x54130043,0x4f4c4f52,0x001d0010,0x0e181b5f,0x60604946,0x00084348,0x41523f49,0x4e444558,0x001e1d00,0x424c4f42,0x3f535441,0x52540006,0x06004348,0x41523f49,0x4e444558,0x001c0008,0x424c4f42,0x3f535441,0x5254000b,0x00544558,0x543f4c45,0x4e000a00,0x11110909,0x005b5f60,0x60605549,0x4e540042,0x4c4f423f,0x494e4445,0x58001d00,0x43484152,0x3f494e44,0x4558000d,0x00424c4f,0x423f5354,0x4152541b,0x5f606060,0x55494e54,0x004e554d,0x4245523f,0x494e4445,0x58001d00,0x424c4f42,0x3f494e44,0x4558000f,0x0011111b,0x5f606060,0x55494e54,0x00444947,0x49543f42,0x49543f4f,0x46465345,0x54001d00,0x424c4f42,0x3f494e44,0x45580005,0x0011111b,0x5f606060,0x49460008,0x44494749,0x543f4249,0x543f4f46,0x46534554,0x001d1d00,0x1009005b,0x5f606060,0x60434841,0x52001d00,0x11161b00,0x0f0f0007,0x10075f60,0x60606043,0x4f4c4f52,0x001d0046,0x4c4f4154,0x1308110c,0x00100e13,0x0c00100e,0x15091b5f,0x6060605d,0x00454c53,0x45004946,0x00084449,0x4749543f,0x4249543f,0x4f464653,0x4554001d,0x1d001109,0x005b5f60,0x60606043,0x48415200,0x1d001818,0x1b000f0f,0x00075807,0x5f606060,0x60434f4c,0x4f52001d,0x00464c4f,0x41541308,0x110c0010,0x0e130c00,0x100e1509,0x1b5f6060,0x605d0045,0x4c534500,0x49460008,0x44494749,0x543f4249,0x543f4f46,0x46534554,0x001d1d00,0x11100900,0x5b5f6060,0x60604348,0x4152001d,0x0011121b,0x000f0f00,0x070c075f,0x6060605d,0x00454c53,0x45005b5f,0x60606060,0x55494e54,0x004e554d,0x42455200,0x1d005445,0x58543b4e,0x554d4245,0x523f494e,0x4445583d,0x1b5f6060,0x60605549,0x4e54004e,0x4942424c,0x453f4249,0x543f4f46,0x46534554,0x001d0008,0x44494749,0x543f4249,0x543f4f46,0x46534554,0x000d0012,0x09000600,0x171b5f60,0x60606055,0x494e5400,0x4e494242,0x4c45001d,0x00084e55,0x4d424552,0x001e1e00,0x08081700,0x0d004e49,0x42424c45,0x3f424954,0x3f4f4646,0x53455409,0x000a0014,0x09090006,0x0011151b,0x5f606060,0x60434f4e,0x53540055,0x494e5400,0x4845583f,0x43484152,0x533b1116,0x3d001d00,0x5b11160c,0x0011170c,0x0011180c,0x0011190c,0x0012100c,0x0012110c,0x0012120c,0x0012130c,0x0012140c,0x0012150c,0x0016150c,0x0016160c,0x0016170c,0x0016180c,0x0016190c,0x0017105d,0x1b5f6060,0x60604348,0x4152001d,0x00484558,0x3f434841,0x52533b4e,0x4942424c,0x453d1b5f,0x60606060,0x434f4c4f,0x52001d00,0x464c4f41,0x54130810,0x0e120c00,0x100e1815,0x0c001109,0x1b5f6060,0x605d5f60,0x605d0045,0x4c534500,0x5b5f6060,0x60494600,0x08434841,0x523f494e,0x44455800,0x1e00424c,0x4f423f53,0x54415254,0x09005b00,0x43484152,0x3f494e44,0x4558000d,0x1d005445,0x58543f4c,0x454e000a,0x00111100,0x0d00111b,0x005d5f60,0x60605549,0x4e540054,0x4558543f,0x494e4445,0x58001d00,0x43484152,0x3f494e44,0x4558001e,0x1e00121b,0x5f606060,0x43484152,0x001d0054,0x4558543b,0x54455854,0x3f494e44,0x45583d1b,0x5f606060,0x55494e54,0x00425954,0x453f494e,0x44455800,0x1d000843,0x4841523f,0x494e4445,0x58000600,0x13091b5f,0x60606043,0x48415200,0x1e1e1d00,0x0813000d,0x00425954,0x453f494e,0x44455809,0x001c1c00,0x131b5f60,0x60604946,0x00085445,0x58543f49,0x4e444558,0x001e1d00,0x54455854,0x3f4c454e,0x09005b00,0x43484152,0x001d0010,0x1b005d5f,0x60605d5f,0x5f606043,0x48415200,0x061d0010,0x5846461b,0x5f606055,0x494e5400,0x5458001d,0x00085058,0x000d0043,0x48415258,0x09000a00,0x181b5f60,0x6055494e,0x54005459,0x001d0008,0x5059000d,0x00434841,0x52590900,0x0a001116,0x1b5f5f60,0x6055494e,0x54005155,0x41525445,0x52001d00,0x5459000f,0x00141b5f,0x60605549,0x4e540042,0x49543f4f,0x46465345,0x54001d00,0x5458000b,0x00080854,0x59000600,0x1309001c,0x1c001309,0x1b5f6060,0x55494e54,0x00504958,0x454c001d,0x0008464f,0x4e543b43,0x4841523d,0x3b515541,0x52544552,0x3d001e1e,0x00424954,0x3f4f4646,0x53455409,0x00060011,0x1b5f6060,0x49460008,0x01504958,0x454c0900,0x5b00434f,0x4c4f5200,0x1d000808,0x43484152,0x58000b00,0x43484152,0x59090006,0x00110900,0x0a000e10,0x13000b00,0x0e10131b,0x005d5f60,0x60524554,0x55524e00,0x434f4c4f,0x521b5f60,0x5d5f252e,0x2423275f,0x5d5d5d5f,}; + const uint text_len = 1299; + const uint blob_start = 798; - const uint font_a[48][4] = {{0,0,0,0},{0,402659352,1010571288,6204},{0,0,603979776,6710886},{0,914306614,914306614,54},{404226048,1616995134,1124286048,404242019},{0,201745249,1130573848,0},{0,858993518,907832891,7222},{0,0,100663296,789516},{0,202119216,202116108,12312},{0,808458252,808464432,3096},{0,1013317632,6700287,0},{0,404226048,1579134,0},{201326592,1579032,0,0},{0,0,127,0},{0,6168,0,0},{0,201720577,1080045592,0},{0,1667446300,1667459947,7222},{0,404232318,504895512,6172},{0,100885375,1613764620,15971},{0,1616929598,1616919648,15971},{0,808464504,1010185087,12344},{0,1616929598,50544480,32515},{0,1667457854,50544483,7174},{0,202116108,1616916504,32611},{0,1667457854,1667448419,15971},{0,1616916510,1667464800,15971},{0,1579008,404226048,0},{0,1579020,404226048,0},{0,202911840,806882310,96},{0,2113929216,8257536,0},{0,806882310,202911840,6},{0,402659352,1664096280,15971},{0,2067465022,1667464059,62},{0,1667457891,912483199,2076},{0,1717986879,1717976678,16230},{0,54748732,1124270851,15462},{0,1717974559,1717986918,7990},{0,105277055,1175854614,32614},{0,101058063,1175854614,32614},{0,1667458652,1124270971,15462},{0,1667457891,1667465059,25443},{0,404232252,404232216,15384},{0,858993438,808464432,30768},{0,912680551,1714822686,26470},{0,105277055,101058054,3846},{0,1667457891,2139056995,25463},{0,1667457891,1870625651,25447},{0,1667457854,1667457891,15971},}; - const uint font_b[49][4] = {{0,101058063,1717976582,16230},{812646400,1667988286,1667457891,15971},{0,1717986919,1717976630,16230},{0,1617126206,1661344816,15971},{0,404232252,1511528472,32382},{0,1667457854,1667457891,25443},{0,1664490504,1667457891,25443},{0,1803515702,1667459947,25443},{0,1043751779,910040092,25443},{0,404232252,1717976088,26214},{0,105079679,1630541836,32611},{0,202116156,202116108,15372},{0,946888768,50794012,1},{0,808464444,808464432,15408},{0,0,0,136066659},{16711680,0,0,0},{0,0,0,202119168},{0,858993518,1978430,0},{0,1717986878,102643302,1798},{0,50553662,4088579,0},{0,858993518,809252403,14384},{0,50553662,4088703,0},{0,101058063,637931270,7222},{808656384,858993470,7222067,0},{0,1717986919,104230502,1798},{0,404232252,1841176,6168},{1717976064,1616928864,7364704,24672},{0,506881639,107361822,1798},{0,404232252,404232216,7192},{0,1802201955,3637099,0},{0,1717986918,3892838,0},{0,1667457854,4088675,0},{101060352,1717986878,3892838,0},{808482816,858993470,7222067,0},{0,101058063,3894886,0},{0,472933182,4088582,0},{0,202140728,205458444,2060},{0,858993518,3355443,0},{0,1717976088,6710886,0},{0,1802207030,6513515,0},{0,471610979,6501916,0},{1613766400,1667457918,6513507,0},{0,201745279,8336152,0},{0,404232304,404229656,28696},{0,404232216,404226072,6168},{0,404232206,404254744,3608},{0,0,0,28219},{2131100672,1617192575,1616928864,96},{1073741824,2136492096,1078483071,64},}; + const uint font[97][4] = {{0,0,0,0},{0,402659352,1010571288,6204},{0,0,603979776,6710886},{0,914306614,914306614,54},{404226048,1616995134,1124286048,404242019},{0,201745249,1130573848,0},{0,858993518,907832891,7222},{0,0,100663296,789516},{0,202119216,202116108,12312},{0,808458252,808464432,3096},{0,1013317632,6700287,0},{0,404226048,1579134,0},{201326592,1579032,0,0},{0,0,127,0},{0,6168,0,0},{0,201720577,1080045592,0},{0,1667446300,1667459947,7222},{0,404232318,504895512,6172},{0,100885375,1613764620,15971},{0,1616929598,1616919648,15971},{0,808464504,1010185087,12344},{0,1616929598,50544480,32515},{0,1667457854,50544483,7174},{0,202116108,1616916504,32611},{0,1667457854,1667448419,15971},{0,1616916510,1667464800,15971},{0,1579008,404226048,0},{0,1579020,404226048,0},{0,202911840,806882310,96},{0,2113929216,8257536,0},{0,806882310,202911840,6},{0,402659352,1664096280,15971},{0,2067465022,1667464059,62},{0,1667457891,912483199,2076},{0,1717986879,1717976678,16230},{0,54748732,1124270851,15462},{0,1717974559,1717986918,7990},{0,105277055,1175854614,32614},{0,101058063,1175854614,32614},{0,1667458652,1124270971,15462},{0,1667457891,1667465059,25443},{0,404232252,404232216,15384},{0,858993438,808464432,30768},{0,912680551,1714822686,26470},{0,105277055,101058054,3846},{0,1667457891,2139056995,25463},{0,1667457891,1870625651,25447},{0,1667457854,1667457891,15971},{0,101058063,1717976582,16230},{812646400,1667988286,1667457891,15971},{0,1717986919,1717976630,16230},{0,1617126206,1661344816,15971},{0,404232252,1511528472,32382},{0,1667457854,1667457891,25443},{0,1664490504,1667457891,25443},{0,1803515702,1667459947,25443},{0,1043751779,910040092,25443},{0,404232252,1717976088,26214},{0,105079679,1630541836,32611},{0,202116156,202116108,15372},{0,946888768,50794012,1},{0,808464444,808464432,15408},{0,0,0,136066659},{16711680,0,0,0},{0,0,0,202119168},{0,858993518,1978430,0},{0,1717986878,102643302,1798},{0,50553662,4088579,0},{0,858993518,809252403,14384},{0,50553662,4088703,0},{0,101058063,637931270,7222},{808656384,858993470,7222067,0},{0,1717986919,104230502,1798},{0,404232252,1841176,6168},{1717976064,1616928864,7364704,24672},{0,506881639,107361822,1798},{0,404232252,404232216,7192},{0,1802201955,3637099,0},{0,1717986918,3892838,0},{0,1667457854,4088675,0},{101060352,1717986878,3892838,0},{808482816,858993470,7222067,0},{0,101058063,3894886,0},{0,472933182,4088582,0},{0,202140728,205458444,2060},{0,858993518,3355443,0},{0,1717976088,6710886,0},{0,1802207030,6513515,0},{0,471610979,6501916,0},{1613766400,1667457918,6513507,0},{0,201745279,8336152,0},{0,404232304,404229656,28696},{0,404232216,404226072,6168},{0,404232206,404254744,3608},{0,0,0,28219},{2131100672,1617192575,1616928864,96},{1073741824,2136492096,1078483071,64}}; diff --git a/text_shader/src/main.rs b/text_shader/src/main.rs index db3758d..4b0065c 100644 --- a/text_shader/src/main.rs +++ b/text_shader/src/main.rs @@ -41,17 +41,17 @@ fn main() { encoded_text.push(temp); } let mut out_string = String::new(); - out_string += "\t\t\t\tconst uint text[] = {"; + out_string += "\t\tconst uint text[] = {"; for t in &encoded_text { out_string += &format!("{t:#010x},"); } out_string += "};\n"; - out_string += &format!("\t\t\t\tconst uint text_len = {};\n", encoded_text.len()); - out_string += &format!("\t\t\t\tconst uint blob_start = {blob_start};\n"); + out_string += &format!("\t\tconst uint text_len = {};\n", encoded_text.len()); + out_string += &format!("\t\tconst uint blob_start = {blob_start};\n"); // font let img = ImageReader::open("vgafont.png").unwrap().decode().unwrap(); - let mut out = Vec::new(); + let mut encoded_font = Vec::new(); for &c in FULL_CHARSET { let col = c as u32 & 0b1_1111; let row = (c as u32 >> 5) & 0b111; @@ -67,16 +67,14 @@ fn main() { } } } - out.push(encoded); + encoded_font.push(encoded); } - out_string += "\n\t\t\t\tconst uint font_a[48][4] = {"; - for (i, c) in out.iter().enumerate() { - if i == 48 { - out_string += &format!("}};\n\t\t\t\tconst uint font_b[{}][4] = {{", out.len() - 48); - } + out_string += &format!("\n\t\tconst uint font[{}][4] = {{", encoded_font.len()); + for c in encoded_font { out_string += &format!("{{{},{},{},{}}},", c[0], c[1], c[2], c[3]); } + out_string.pop(); out_string += "};\n"; let mut file = File::create("out.h").unwrap(); file.write_all(out_string.as_bytes()).unwrap(); @@ -132,7 +130,7 @@ fn golfed() { // font let img = ImageReader::open("6x6.png").unwrap().decode().unwrap(); - let mut out = Vec::new(); + let mut encoded_font = Vec::new(); for c in used_charset { let col = c as u32 & 0b1_1111; let row = (c as u32 >> 5) & 0b111; @@ -146,11 +144,11 @@ fn golfed() { encoded |= pixel << offset; } } - out.push(encoded); + encoded_font.push(encoded); } out_string += "const uint R[]={"; - for (_i, c) in out.iter().enumerate() { + for c in encoded_font { out_string += &format!("{c},"); } out_string.pop(); From 94cc758b287d80ec684a6a3a761391e2da1650c8 Mon Sep 17 00:00:00 2001 From: CrispyPin Date: Tue, 13 Aug 2024 17:48:29 +0200 Subject: [PATCH 2/4] quine golf: optimise font, make 6 more different from b, 4140B --- Assets/test/TestProps.unity | 2 +- Assets/test/quine_golf.shader | 2 +- text_shader/6x6.png | Bin 8268 -> 8230 bytes text_shader/out_golfed.h | 8 ++++---- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Assets/test/TestProps.unity b/Assets/test/TestProps.unity index a111406..aff74f5 100644 --- a/Assets/test/TestProps.unity +++ b/Assets/test/TestProps.unity @@ -1784,7 +1784,7 @@ MonoBehaviour: m_EditorClassIdentifier: type: 3 objectId: 9fee86b2-a9bd-46a3-a364-5f94506c4253 - randomNum: 50966792 + randomNum: 75621475 unityVersion: 2021.3.41f1 cckVersion: 3.10:132 --- !u!114 &2046637845 diff --git a/Assets/test/quine_golf.shader b/Assets/test/quine_golf.shader index c6655b7..461dcdb 100644 --- a/Assets/test/quine_golf.shader +++ b/Assets/test/quine_golf.shader @@ -1,4 +1,4 @@ Shader"S"{SubShader{Pass{CGPROGRAM#pragma vertex a #pragma fragment f #include"UnityCG.cginc" -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{const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a2,0x02b83338,0x18f6ec44,0x111f52a8,0x113e4349,0x07e05131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a2,0x0c73cd35,0x0c6d7487,0x0c4ced5a,0x2c0236f6,0x0eaeb342,0x076b3857,0x18aa42a9,0x13a78cea,0x0a50d2a6,0x04fa51a1,0x2c11a4a3,0x1155e9a2,0x07a16c42,0x13b0d2a2,0x189949a6,0x0799a0a8,0x079249a2,0x16305fa5,0x13b0d485,0x1147a2a1,0x0c83d044,0x2c11a6d3,0x11a49c85,0x0518cb42,0x0edd7993,0x11a3d2f9,0x2c098b32,0x052a12a4,0x04f98962,0x0509f1a6,0x0a0302a4,0x078a2da2,0x0ede72a9,0x0c739b81,0x0f32d342,0x075b52a2,0x0ee531d7,0x077402a9,0x0511ab21,0x0f330542,0x18729b32,0x0528b724,0x076a8ea4,0x056ed4d5,0x027968d1,0x2c09bc91,0x113e60a5,0x0789e526,0x11a41e97,0x0c833962,0x04eab1f5,0x0512a2a6,0x18b8a026,0x18f71eea,0x075aeea5,0x053102e7,0x11a404a8,0x189977f2,0x09dba344,0x13d7e344,0x075bcc42,0x0509a7e4,0x11a468a7,0x1685ebf4,0x11465f42,0x13a06be6,0x05303ea5,0x0789cc24,0x07e09be8,0x02a0db02,0x077a8ee9,0x0c5ca702,0x078a6041,0x1070202a,0x70a7a6f0,0x54f27128,0xa3ca5608,0x6555360d,0x2d342342,0x83549021,0x7e36e1cd,0x6cfe84e5,0xa7d1a0d5,0x88224d36,0x7dc4f299,0xab0d8f77,0xae9e5944,0x02b5633d,0x9ba00695,0x0c7972d2,0x0671c8bd,0xafe6bc7d,0xb1fb1004,0x065288ef,0x04f10aa9,0x748fba8b,0x66348e98,0x94c622e2,0xad0eb578,0xaa47b755,0x092eb1bc,0x94880007,0x0516d142,0x7e49a43a,0x2556c6cf,0x91522795,0x15634bf9,0x1123cf4f,0x5ec5e876,0xa2b20e75,0x915284b6,0x7dca59c3,0x6632f6cd,0xb9081183,0x21fd79d1,0x7e4d92eb,0x5465f1c7,0x94882f25,0x9b9f5021,0xaa1900f7,0x7d2892f8,0x347d8951,0x21c78c1b,0x837db3f6,0x94a6f72b,0x839828f3,0x8f3532fb,0x4626dc20,};const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,1088679,233604,7641382,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,14726446,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,9741606,567426,128,206118,131200,14815374,32641156,18470705,131204,15768623,18157905,3319079,18393220,31,18400580,2240642,4261956,4464900,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,244584452,266305};float2 p=U.u*65;uint c,i,Y,X=p.x;Y=p.y;i=X+(64-Y)*65;if(i>446&&i<3307){c=(i-447)%11;c=c<2?(c<<4)+1:c==10?18:(t[(i-447)/11]>>((7-((c-2)&7))*4)&15)+1;}else{i-=(i>447)*2860;c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;}Y=(p.y-Y)*6;X=(p.x-X)*6;return R[c]>>(X+Y*5)&1*(X<5);}ENDCG}}} \ No newline at end of file +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{const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc6c6c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x90504fab,0x21d86e07,0x1562b0f5,0x94a6e41c,0xa618ad2f,0x67569e59,0xaa670016,0x0c5ceb03,0x0799d053,0x21acfa79,0xb7506200,0x70f7e019,0x9a02e818,0x0dc78684,0x92e8f6b9,0x0400cc0f,0x1605dd57,0x9b9f503c,0xaa28a0f7,0x7e274992,0x6e689dcc,0xa3ceb19f,0x5d839980,0x48ca29e6,0xacb83277,0xa3c7d232,0xa5653386,0x94102a72,0x84abbe5a,0x8d9a0000,};const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,304422,567426,128,206118,131200,7407687,32641156,18470705,131204,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,211030020,266305};float2 p=U.u*65;uint c,i,Y,X=p.x;Y=p.y;i=X+(64-Y)*65;if(i>446&&i<3296){c=(i-447)%11;c=c<2?(c<<4)+1:c==10?18:(t[(i-447)/11]>>((7-((c-2)&7))*4)&15)+1;}else{i-=(i>447)*2849;c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;}Y=(p.y-Y)*6;X=(p.x-X)*6;return R[c]>>(X+Y*5)&1*(X<5);}ENDCG}}} \ No newline at end of file diff --git a/text_shader/6x6.png b/text_shader/6x6.png index 6700a9b5bf1bf61abef4166392bef9c6f093afc5..b6bd798ddc78780ce3735a9f6a0779d42c1cf80b 100644 GIT binary patch literal 8230 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 Xqk>uOwM9nA{}IXxD)ObWMj!qUm-yCT literal 8268 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 F{2wCD;~xM3 diff --git a/text_shader/out_golfed.h b/text_shader/out_golfed.h index a104359..5b8493c 100644 --- a/text_shader/out_golfed.h +++ b/text_shader/out_golfed.h @@ -1,5 +1,5 @@ -const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a2,0x02b83338,0x18f6ec44,0x111f52a8,0x113e4349,0x07e05131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a2,0x0c73cd35,0x0c6d7487,0x0c4ced5a,0x2c0236f6,0x0eaeb342,0x076b3857,0x18aa42a9,0x13a78cea,0x0a50d2a6,0x04fa51a1,0x2c11a4a3,0x1155e9a2,0x07a16c42,0x13b0d2a2,0x189949a6,0x0799a0a8,0x079249a2,0x16305fa5,0x13b0d485,0x1147a2a1,0x0c83d044,0x2c11a6d3,0x11a49c85,0x0518cb42,0x0edd7993,0x11a3d2f9,0x2c098b32,0x052a12a4,0x04f98962,0x0509f1a6,0x0a0302a4,0x078a2da2,0x0ede72a9,0x0c739b81,0x0f32d342,0x075b52a2,0x0ee531d7,0x077402a9,0x0511ab21,0x0f330542,0x18729b32,0x0528b724,0x076a8ea4,0x056ed4d5,0x027968d1,0x2c09bc91,0x113e60a5,0x0789e526,0x11a41e97,0x0c833962,0x04eab1f5,0x0512a2a6,0x18b8a026,0x18f71eea,0x075aeea5,0x053102e7,0x11a404a8,0x189977f2,0x09dba344,0x13d7e344,0x075bcc42,0x0509a7e4,0x11a468a7,0x1685ebf4,0x11465f42,0x13a06be6,0x05303ea5,0x0789cc24,0x07e09be8,0x02a0db02,0x077a8ee9,0x0c5ca702,0x078a6041,0x1070202a,0x70a7a6f0,0x54f27128,0xa3ca5608,0x6555360d,0x2d342342,0x83549021,0x7e36e1cd,0x6cfe84e5,0xa7d1a0d5,0x88224d36,0x7dc4f299,0xab0d8f77,0xae9e5944,0x02b5633d,0x9ba00695,0x0c7972d2,0x0671c8bd,0xafe6bc7d,0xb1fb1004,0x065288ef,0x04f10aa9,0x748fba8b,0x66348e98,0x94c622e2,0xad0eb578,0xaa47b755,0x092eb1bc,0x94880007,0x0516d142,0x7e49a43a,0x2556c6cf,0x91522795,0x15634bf9,0x1123cf4f,0x5ec5e876,0xa2b20e75,0x915284b6,0x7dca59c3,0x6632f6cd,0xb9081183,0x21fd79d1,0x7e4d92eb,0x5465f1c7,0x94882f25,0x9b9f5021,0xaa1900f7,0x7d2892f8,0x347d8951,0x21c78c1b,0x837db3f6,0x94a6f72b,0x839828f3,0x8f3532fb,0x4626dc20,}; +const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc6c6c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x90504fab,0x21d86e07,0x1562b0f5,0x94a6e41c,0xa618ad2f,0x67569e59,0xaa670016,0x0c5ceb03,0x0799d053,0x21acfa79,0xb7506200,0x70f7e019,0x9a02e818,0x0dc78684,0x92e8f6b9,0x0400cc0f,0x1605dd57,0x9b9f503c,0xaa28a0f7,0x7e274992,0x6e689dcc,0xa3ceb19f,0x5d839980,0x48ca29e6,0xacb83277,0xa3c7d232,0xa5653386,0x94102a72,0x84abbe5a,0x8d9a0000,}; b=447; -uint magic_number_L_plus_b= 3307; -uint magic_number_L= 2860; -const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,1088679,233604,7641382,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,14726446,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,9741606,567426,128,206118,131200,14815374,32641156,18470705,131204,15768623,18157905,3319079,18393220,31,18400580,2240642,4261956,4464900,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,244584452,266305}; +uint magic_number_L_plus_b= 3296; +uint magic_number_L= 2849; +const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,304422,567426,128,206118,131200,7407687,32641156,18470705,131204,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,211030020,266305}; From e8c3f6640e6bbb04d01626051c036d0f02b580e3 Mon Sep 17 00:00:00 2001 From: CrispyPin Date: Tue, 13 Aug 2024 17:55:26 +0200 Subject: [PATCH 3/4] quine golf: remove 3 chars, 4126B --- Assets/test/quine_golf.shader | 2 +- text_shader/out_golfed.h | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Assets/test/quine_golf.shader b/Assets/test/quine_golf.shader index 461dcdb..7099f2e 100644 --- a/Assets/test/quine_golf.shader +++ b/Assets/test/quine_golf.shader @@ -1,4 +1,4 @@ Shader"S"{SubShader{Pass{CGPROGRAM#pragma vertex a #pragma fragment f #include"UnityCG.cginc" -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{const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc6c6c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x90504fab,0x21d86e07,0x1562b0f5,0x94a6e41c,0xa618ad2f,0x67569e59,0xaa670016,0x0c5ceb03,0x0799d053,0x21acfa79,0xb7506200,0x70f7e019,0x9a02e818,0x0dc78684,0x92e8f6b9,0x0400cc0f,0x1605dd57,0x9b9f503c,0xaa28a0f7,0x7e274992,0x6e689dcc,0xa3ceb19f,0x5d839980,0x48ca29e6,0xacb83277,0xa3c7d232,0xa5653386,0x94102a72,0x84abbe5a,0x8d9a0000,};const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,304422,567426,128,206118,131200,7407687,32641156,18470705,131204,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,211030020,266305};float2 p=U.u*65;uint c,i,Y,X=p.x;Y=p.y;i=X+(64-Y)*65;if(i>446&&i<3296){c=(i-447)%11;c=c<2?(c<<4)+1:c==10?18:(t[(i-447)/11]>>((7-((c-2)&7))*4)&15)+1;}else{i-=(i>447)*2849;c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;}Y=(p.y-Y)*6;X=(p.x-X)*6;return R[c]>>(X+Y*5)&1*(X<5);}ENDCG}}} \ No newline at end of file +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{const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc531c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x15a8e57d,0xa8926238,0x94574cd7,0x0516d142,0x7e49a43a,0x2556c6cf,0x91522795,0x15634bf9,0x0a0f4f4f,0x5ec5e876,0xa2b20e75,0x915284b6,0x7dca59c3,0x6632f6cd,0xb9081183,0x21fd79d1,0x7e4d92eb,0x5465f1c7,0x94882f25,0x9b9f5021,0xaa1900f7,0x7d2892f8,0x348353d8,0x10815451,0x21c78c1b,0x837db3f6,0x94a6f22a,0x807fee8c,0x8f64ca00,};const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,304422,567426,128,206118,131200,7407687,32641156,18470705,131204,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,211030020,266305};float2 p=U.u*65;uint c,i,Y,X=p.x;Y=p.y;i=X+(64-Y)*65;if(i>446&&i<3285){c=(i-447)%11;c=c<2?(c<<4)+1:c==10?18:(t[(i-447)/11]>>(7-((c-2)&7))*4&15)+1;}else{i-=(i>447)*2838;c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;}Y=(p.y-Y)*6;X=(p.x-X)*6;return(X<5)*R[c]>>(X+Y*5)&1;}ENDCG}}} \ No newline at end of file diff --git a/text_shader/out_golfed.h b/text_shader/out_golfed.h index 5b8493c..ddea14d 100644 --- a/text_shader/out_golfed.h +++ b/text_shader/out_golfed.h @@ -1,5 +1,5 @@ -const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc6c6c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x90504fab,0x21d86e07,0x1562b0f5,0x94a6e41c,0xa618ad2f,0x67569e59,0xaa670016,0x0c5ceb03,0x0799d053,0x21acfa79,0xb7506200,0x70f7e019,0x9a02e818,0x0dc78684,0x92e8f6b9,0x0400cc0f,0x1605dd57,0x9b9f503c,0xaa28a0f7,0x7e274992,0x6e689dcc,0xa3ceb19f,0x5d839980,0x48ca29e6,0xacb83277,0xa3c7d232,0xa5653386,0x94102a72,0x84abbe5a,0x8d9a0000,}; +const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc531c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x15a8e57d,0xa8926238,0x94574cd7,0x0516d142,0x7e49a43a,0x2556c6cf,0x91522795,0x15634bf9,0x0a0f4f4f,0x5ec5e876,0xa2b20e75,0x915284b6,0x7dca59c3,0x6632f6cd,0xb9081183,0x21fd79d1,0x7e4d92eb,0x5465f1c7,0x94882f25,0x9b9f5021,0xaa1900f7,0x7d2892f8,0x348353d8,0x10815451,0x21c78c1b,0x837db3f6,0x94a6f22a,0x807fee8c,0x8f64ca00,}; b=447; -uint magic_number_L_plus_b= 3296; -uint magic_number_L= 2849; +uint magic_number_L_plus_b= 3285; +uint magic_number_L= 2838; const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,304422,567426,128,206118,131200,7407687,32641156,18470705,131204,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,211030020,266305}; From 76f5b9040fc429fc1f96910c9c6fdf1a073fd6f7 Mon Sep 17 00:00:00 2001 From: CrispyPin Date: Tue, 13 Aug 2024 18:03:59 +0200 Subject: [PATCH 4/4] quine golf: optimise font, 64x64 grid 4079B --- Assets/test/quine_golf.shader | 2 +- text_shader/6x6.png | Bin 8230 -> 8225 bytes text_shader/out_golfed.h | 8 ++++---- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Assets/test/quine_golf.shader b/Assets/test/quine_golf.shader index 7099f2e..76e72c1 100644 --- a/Assets/test/quine_golf.shader +++ b/Assets/test/quine_golf.shader @@ -1,4 +1,4 @@ Shader"S"{SubShader{Pass{CGPROGRAM#pragma vertex a #pragma fragment f #include"UnityCG.cginc" -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{const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc531c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x15a8e57d,0xa8926238,0x94574cd7,0x0516d142,0x7e49a43a,0x2556c6cf,0x91522795,0x15634bf9,0x0a0f4f4f,0x5ec5e876,0xa2b20e75,0x915284b6,0x7dca59c3,0x6632f6cd,0xb9081183,0x21fd79d1,0x7e4d92eb,0x5465f1c7,0x94882f25,0x9b9f5021,0xaa1900f7,0x7d2892f8,0x348353d8,0x10815451,0x21c78c1b,0x837db3f6,0x94a6f22a,0x807fee8c,0x8f64ca00,};const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,304422,567426,128,206118,131200,7407687,32641156,18470705,131204,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,211030020,266305};float2 p=U.u*65;uint c,i,Y,X=p.x;Y=p.y;i=X+(64-Y)*65;if(i>446&&i<3285){c=(i-447)%11;c=c<2?(c<<4)+1:c==10?18:(t[(i-447)/11]>>(7-((c-2)&7))*4&15)+1;}else{i-=(i>447)*2838;c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;}Y=(p.y-Y)*6;X=(p.x-X)*6;return(X<5)*R[c]>>(X+Y*5)&1;}ENDCG}}} \ No newline at end of file +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{const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x1147a434,0x09cc8042,0x2c01bbd9,0x1601cfa7,0x0762bea4,0x0a037af1,0x2c195d33,0x18b06ea6,0x079a04a8,0x113e5ba5,0x0f32d344,0x0781fea7,0x0eed1a39,0x11a45044,0x13ceb6e2,0x09e372f9,0x02c0e436,0x1899c389,0x2c09bd81,0x1165eda6,0x16284724,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a3,0x13a05337,0x2c30ff36,0x2c01ba9a,0x1136a9a4,0x0a0a9d42,0x09cc4e93,0x07e03838,0x0c4d24a4,0x07dfeb57,0x04f286a2,0x09d3eb51,0x2c30fd58,0x115e1da3,0x09d42021,0x2c115b37,0x028262a4,0x04f98a02,0x13a809ea,0x04f362a9,0x0511ab21,0x0f330542,0x18729b32,0x0edd7993,0x168604b2,0x0ee4ff89,0x1685ebf5,0x02a82e02,0x0763045a,0x13d012a2,0x0518fbf6,0x2c11a6d4,0x056ed3ea,0x18920bea,0x2c09be27,0x027a92f1,0x18b86d38,0x2c11748a,0x0ed57ba4,0x07630548,0x18f6d437,0x0298f6a8,0x079231e2,0x139851e2,0x04f1d4d3,0x13a90483,0x189976aa,0x02fe1df7,0x02bf8502,0x1899a856,0x188332f2,0x04ea3451,0x075c92f7,0x11365b1a,0x7d04286b,0x5cdd7adf,0x6a5cfcf7,0x0dc5d4f8,0x5cc74ac9,0x2da182cf,0x54634927,0x9add12f3,0x660a727b,0x113d0e6c,0xa3ca3d19,0x28e106e5,0x0c72b559,0xafe78ce3,0x933108eb,0x66348e98,0x94b682d3,0x21aa8b83,0xb6784bc8,0x0e1064cf,0x21af57a1,0xb4ba8feb,0x5ec7a015,0x0c5ceb0b,0x04f82826,0x90504fab,0x21d86e07,0x1562b0f5,0xad674904,0x06761eda,0x3ff17c15,0x9ba006e5,0x0c7970f3,0x160175fd,0x9afe461b,0x10aea02e,0x3516080f,0x10388785,0x7dca097c,0x220d19d1,0x7cefc4b9,0x04052b6f,0x91191305,0x88224d63,0x8356fdcd,0x2ba15003,0x12a781d6,0x3b400aa5,0xaffcd10d,0x9f1d1826,0x91afc573,0x1081afd3,0x8f3532fb,0x4626dc20,};const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,65,6330631,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,3312809,6595878,2270697,585393,11512810,3312673,12923174,11953,5282,72774,272866,7465,1049633,33826,304422,567426,32,206118,131200,7407687,231490,306601,131202,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,33831,15994959,229600,2099267,3179555,3213379,166048,72768,7168,1118273,72955190,4260932,9570592,211030020,266305};float2 p=U.u*64;uint c,i,Y,X=p.x;Y=p.y;i=X+(63-Y)*64;if(i>446&&i<3252){c=(i-447)%11;c=c<2?(c<<4)+1:c==10?18:(t[(i-447)/11]>>(7-((c-2)&7))*4&15)+1;}else{i-=(i>447)*2805;c=t[i/5];for(i%=5;i<4;i++)c/=80;c%=80;}Y=(p.y-Y)*6;X=(p.x-X)*6;return(X<5)*R[c]>>(X+Y*5)&1;}ENDCG}}} \ No newline at end of file diff --git a/text_shader/6x6.png b/text_shader/6x6.png index b6bd798ddc78780ce3735a9f6a0779d42c1cf80b..f14ad9c452b5d6bc2dde74eb81f49b5f82c9ad33 100644 GIT binary patch literal 8225 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 literal 8230 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 Xqk>uOwM9nA{}IXxD)ObWMj!qUm-yCT diff --git a/text_shader/out_golfed.h b/text_shader/out_golfed.h index ddea14d..e354fdc 100644 --- a/text_shader/out_golfed.h +++ b/text_shader/out_golfed.h @@ -1,5 +1,5 @@ -const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x0501c2a2,0x0c73b523,0x0a13e2a1,0x1640315a,0x2c28fba1,0x2c11a68a,0x075c9393,0x112f6cd1,0x2c212dd7,0x2c313093,0x0509aba2,0x09e38ce1,0x2c2948d8,0x115e04a7,0x09e40ad4,0x16866a35,0x077a2c32,0x05112ce6,0x02b804a3,0x07919b3a,0x1414d4d8,0x09dc0924,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a9,0x114de398,0x0cc26997,0x0f32d255,0x18a11552,0x09e421f7,0x2c115a95,0x076c33e7,0x13af5d42,0x04fa56a3,0x02a7e2a9,0x2c0204a3,0x027a9485,0x02b031d8,0x2c118d35,0x04f23842,0x0528cf81,0x13906ba2,0x09d3eb55,0x2c30e686,0x1879d7a2,0x1609388a,0x02a1a344,0x05303b8a,0x2c219185,0x079b1342,0x2c21a998,0x164112f3,0x0c3d8093,0x2c09a341,0x18a966a2,0x04f24ff3,0x0f32d259,0x077a43f2,0x0511dd25,0x1899dfa5,0x0ef46b51,0x2c194529,0x0edd64a4,0x05217be6,0x0f3304f2,0x09e40b32,0x09e38b5a,0x11a3d396,0x0ec5f4a8,0x051996a3,0x0772f0e5,0x11a468fa,0x0ed51521,0x2c195d31,0x188990aa,0x0ee49aea,0x07dfeba2,0x02905953,0x02fded37,0x09cc7853,0x285ca196,0x075665db,0x6e9f0d36,0x7d428da6,0x00675ee2,0x86d8e0d2,0x6e66dc6f,0x5465ec19,0x9b73c677,0x0e558203,0x114ae7e0,0x91522795,0x1348ac18,0x09dc531c,0x3892c999,0xa89c8fbc,0xb248e1fd,0x9a3b993a,0x9077ae85,0x948f80bd,0x9bbb629a,0x052cf996,0xa0820695,0x0c797372,0x06ec8c1b,0x15a8e57d,0xa8926238,0x94574cd7,0x0516d142,0x7e49a43a,0x2556c6cf,0x91522795,0x15634bf9,0x0a0f4f4f,0x5ec5e876,0xa2b20e75,0x915284b6,0x7dca59c3,0x6632f6cd,0xb9081183,0x21fd79d1,0x7e4d92eb,0x5465f1c7,0x94882f25,0x9b9f5021,0xaa1900f7,0x7d2892f8,0x348353d8,0x10815451,0x21c78c1b,0x837db3f6,0x94a6f22a,0x807fee8c,0x8f64ca00,}; +const uint t[]={0x2f00576f,0x33f2c1f7,0x2f1fb204,0x1b49dda7,0x3d618237,0x42c83a2e,0x4541a121,0x53a72e14,0x1adea1c5,0x5d3cd90b,0x603c289b,0x568d5310,0x339e664f,0x62d0e527,0x51d53c3a,0x3b06de0b,0x62ec13db,0x45bce019,0x620fc24a,0x5d6c6c36,0x00f4742a,0x70a7a790,0x5bc6aa73,0x76b38992,0x7d04286b,0x5cdd77af,0x793c758e,0x4a25d683,0x6a865f87,0x8a7a6d41,0x80979732,0x3e5dcab0,0x7aab42e2,0x4386c736,0x8f2b05f5,0x3b014639,0x38a8286b,0x5cdd77af,0x793c758e,0x4a25d683,0x285ca196,0x0c38abc3,0x8ce0fa73,0x76b38992,0x7dd7e131,0x8802215d,0x793c7e9e,0x6a7c4ea1,0x8951495d,0x7fe41a29,0x005bbcb0,0x5c2c10d0,0x71e0b2d0,0x79542e24,0x78f372b0,0x7aab42e2,0x4386c736,0x9131fc1b,0x7b8dda68,0x76bb5f80,0x4d905394,0x89a6a269,0x6a7fa4e2,0x7227c8a2,0x76b440b0,0x7b8dd81f,0x966a1e78,0x8cc22484,0x831d7ba1,0x3e5dca93,0x793a255e,0x91784c1e,0x6f044498,0x6546356c,0x9cb68111,0x712516f2,0x3e72fc95,0x6f03fc1e,0x6e9eb2bd,0x3c2881d6,0x3b3ff82e,0x7e49bd4e,0x1c044410,0x91c85dac,0x735912b1,0x1b827fd6,0x38911a9a,0x5cc864f8,0x5cc9ca92,0x9a8869fd,0x718915e0,0x3bdc43e0,0x48cf55c7,0x02fdec45,0x114e19a7,0x16307b32,0x076b20e2,0x0ef5e343,0x1600e954,0x2c214599,0x2c30e687,0x027939a4,0x0528e8d4,0x056eec44,0x111f52a7,0x0ef46dd1,0x11a45131,0x02bfd142,0x076ad596,0x09ecd345,0x0288d9a7,0x0528a0a9,0x114e474a,0x02fe5131,0x052149a2,0x0c4d2181,0x13b0d341,0x04fa0892,0x1147a434,0x09cc8042,0x2c01bbd9,0x1601cfa7,0x0762bea4,0x0a037af1,0x2c195d33,0x18b06ea6,0x079a04a8,0x113e5ba5,0x0f32d344,0x0781fea7,0x0eed1a39,0x11a45044,0x13ceb6e2,0x09e372f9,0x02c0e436,0x1899c389,0x2c09bd81,0x1165eda6,0x16284724,0x2c01d3e2,0x07998262,0x09e372f7,0x13a902a3,0x1881d4a8,0x0cc1d2aa,0x0ec703e3,0x16123483,0x13c702a3,0x13a05337,0x2c30ff36,0x2c01ba9a,0x1136a9a4,0x0a0a9d42,0x09cc4e93,0x07e03838,0x0c4d24a4,0x07dfeb57,0x04f286a2,0x09d3eb51,0x2c30fd58,0x115e1da3,0x09d42021,0x2c115b37,0x028262a4,0x04f98a02,0x13a809ea,0x04f362a9,0x0511ab21,0x0f330542,0x18729b32,0x0edd7993,0x168604b2,0x0ee4ff89,0x1685ebf5,0x02a82e02,0x0763045a,0x13d012a2,0x0518fbf6,0x2c11a6d4,0x056ed3ea,0x18920bea,0x2c09be27,0x027a92f1,0x18b86d38,0x2c11748a,0x0ed57ba4,0x07630548,0x18f6d437,0x0298f6a8,0x079231e2,0x139851e2,0x04f1d4d3,0x13a90483,0x189976aa,0x02fe1df7,0x02bf8502,0x1899a856,0x188332f2,0x04ea3451,0x075c92f7,0x11365b1a,0x7d04286b,0x5cdd7adf,0x6a5cfcf7,0x0dc5d4f8,0x5cc74ac9,0x2da182cf,0x54634927,0x9add12f3,0x660a727b,0x113d0e6c,0xa3ca3d19,0x28e106e5,0x0c72b559,0xafe78ce3,0x933108eb,0x66348e98,0x94b682d3,0x21aa8b83,0xb6784bc8,0x0e1064cf,0x21af57a1,0xb4ba8feb,0x5ec7a015,0x0c5ceb0b,0x04f82826,0x90504fab,0x21d86e07,0x1562b0f5,0xad674904,0x06761eda,0x3ff17c15,0x9ba006e5,0x0c7970f3,0x160175fd,0x9afe461b,0x10aea02e,0x3516080f,0x10388785,0x7dca097c,0x220d19d1,0x7cefc4b9,0x04052b6f,0x91191305,0x88224d63,0x8356fdcd,0x2ba15003,0x12a781d6,0x3b400aa5,0xaffcd10d,0x9f1d1826,0x91afc573,0x1081afd3,0x8f3532fb,0x4626dc20,}; b=447; -uint magic_number_L_plus_b= 3285; -uint magic_number_L= 2838; -const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,134,14719239,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,7642409,15255086,2270697,18732593,11512810,3312673,12923174,11953,5282,72774,8661474,7465,1049633,33826,304422,567426,128,206118,131200,7407687,32641156,18470705,131204,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,1082415,15994959,459200,4198566,3179555,3213379,332096,145536,7168,2236546,72955190,4260932,9570592,211030020,266305}; +uint magic_number_L_plus_b= 3252; +uint magic_number_L= 2805; +const uint R[]={0,234663,68679,2265159,3280003,5348,7376003,3185831,233604,6592806,6600966,2234534,34023,6182,8665390,6601774,4267074,301257,65,6330631,1088809,6210,337920,4262980,5286,7642145,133250,6587686,6337838,3312809,6595878,2270697,585393,11512810,3312673,12923174,11953,5282,72774,272866,7465,1049633,33826,304422,567426,32,206118,131200,7407687,231490,306601,131202,7375911,18157905,3319079,567428,31,574788,2240642,2130978,1116225,33831,15994959,229600,2099267,3179555,3213379,166048,72768,7168,1118273,72955190,4260932,9570592,211030020,266305};