submission 734957
ftyghome · python · License unknown
Use it
Vendorable · source mirrored · license unknownView source →
No package. Vendor the mirrored source: 26 lines, June 9 Researcher Reciprocity License v1.0.
submission.py
curl "https://kernelindex.com/api/v1/implementations/kernelbot-amd-mxfp4-mm-734957?include=source"interfacepython
Compatibility
measured onAMD Instinct MI355X
declared hardwareAMD Instinct MI355X
architecturesgfx950
dtypesbf16, mxfp4
Benchmark evidence
1 measurement across 1 GPU, fastest first.
Operation / workload
Hardware
Latency
Rank
Observed
Reported · How evidence levels are derived →
Source and license
sourceavailable
revision digestsha256:5f295da4d72c88670be8bf6d6189dd56a9b95fc8854317ac6f4edd60f23e041c
license declaredunknown
license concludedunknown
authorsftyghome
imported2026-08-15
Kernel source
submission.py26 lines
#!POPCORN leaderboard amd-mxfp4-mm
# This file is generated by gen_submission.py. DO NOT EDIT.
import os, zlib, base64, torch
os.environ.setdefault("HSA_XNACK", "0")
os.environ["PYTORCH_ROCM_ARCH"] = "gfx950:xnack-"
from torch.utils.cpp_extension import load_inline
from task import input_t, output_t
CUDA_SRC = zlib.decompress(base64.b64decode(b'eNrtvdtSI0myKPrOV8T0WNVkIiEkQdGMuLRJIKowQNBcproXi52WSAnkoFsrU1y6po6dp212Xrcds/0F50v2n6wvOe4el4zIjJREleiqmTVl3VUgRXh4RHj4LTzc/xz2291xJ2Cb8WDUvlsOnuKgH4WDfulue+HP6sv6edBfbo87/vLOxW59Z9CPoSE2WV5mW3P8g/BuxlHQqXj3wagfdEvtNvuv//v/ZWdB92apDeP6YT/o8Dbst7Hfj8Pf/RjwZQX2vnl0xHg3gIOgzh8HS8M7PwrYMBhFYQRzi0WLGn7P2Al9W2HOzwjLrTFWZ9H4OgpiNrhhO+f1iMGoD8EoZo29yhp8+1//83+xo1/2TlZZ3fsNRm2uH5U5LMufuhe1/W5QZI+jMA77tywesHG/7bfvAP1O8BC2A9YLeoPRc4k14VN2OxqMh7ngovC273cj5uN8luKwG3g9Fj332+ym69+yh9Bnfjzohe16p1PSJ1hlDq4Ozo/VDw/5xEbjPockV+YsHgV+r8EX8jGM79hgiGvrd3MxOliKht0wxrmJGQBo9uiHccRgU25gt5ZuR3zTFKJRLribwYjFdwEs82jwGLEwZv0g6EQlsZ+nwS2iOkJgd/4wiMQunuEv8O8RwmhxxPCvBnzQwN8b8OvHI/YRfj7wzk4O98/PeM+KGHgV/6qur5cZe1epwudrjK2til+w1SpvV+HdquK3NepWgUY/VtbW87v9yLut8N9WqPtq+a9roiV+MGG0Vb2bhuSUbu/4b2v0KeFXLa+uT+1Gc2LVd/TvSvnHKqu8W1mjbpXqek63uTKBhddgK5US22/tHF7sNs/mj3DCKe/C4TL878HhisNeYLJR+eX1TXfgx5U1+7fAWr1Be5j7pflFO4o7YT/OfDTQPxn3B6MOnhuv5w/1L26AG/Ejrn/KWdK2Pq/2/fIYGE4YPy934udh4D0EbRAZpbuhAU9r5vc63vX45iYYeX6nMwqiCJlEfvtgvVfmX7/K/ldL7Ki+c3r8Krt/0+8EN2y3+bf9naa33zrcbzUX/gwfAd8zP2Wex9m+58GPwO7aQdjvQjPPW/hz0O+ENwm4D/sn3s6H5s6BAqU+cYKn4chlnQH7xGb7858L+DdQUHM0Goy8mHkB22IczgZ7EZDwhjnQ+09bCO5s3G7D1rqMvQwI/hmOgHBvnB9gWixAtNibDnPeADA/Zm+i2pvOf/Z/KE6GIf54IGMBm/dBTPMDSQbEBli6RVjmvf3DpufhT7gFnicm/J8Ln9njHQhR5pRdtfqvQXsrJfahfrr7sX7aZDvHrbPzeuv8jL1l57+eNEEe79fPXoMpAcAl+MOO9o7qLOxH8WhMZx01migGdSdizt88/NbbW6l6lbUn/K+67u2t763trbrUewFaxmGb90FqAUgxgfSO+NJvgdTDBUV9CxfziHWA8ZESOaFzy965Na1zfWfHax42j86o8yrtJHSut9vj3rgL2s+IBd0AQMDsQLVhXb8f2CG1Lo68g/enxxcnZzqkgyXSwXjv9NIli1o/2mU7u60680FtDmNghuNRoK1s/toBFZx4Z/v/0WRyCdZWjRMIQ3z0H4KbEai7oPL9noM/KDLnzZOk2xaK5w0TDqqpxnLQhO6XAMxwElSv8et584xDFeMAB5VLBMrD9XMcAPlUaQQEjB+4dpA/XwC5e7TSAtGVanrCTR1JVKkZKc5CH7aCPdupHzbPvJPmKUdQw1QbcYPAr9pBNFre2UXDWMK1NGYNUDVBigEuYBeQzg2qcSe+yyeqX3Z2zxKI6yZ3BYjwPSnHR/sr7979kg9n5+JMwwwUstTm7lzoYBY4ZHZYZd0BrB2IVNYbgIxFnVqzlwq6mRT0xz3W7vpRxH5pd46weY3G/0QMdg9shUZ954BjUC7yo+b9tizsGmiamDNcaSiy/gBxQMuhJ2wzgnXa3L1o7cK+8HXmsE7AjEGkBYj2YBgGUZH53S5fJcKYfgVrrE5wTuqn5/vn+8et5i6uCodzBtwe0EnAAB4I95YNHvsRu+55REjwu4M7GIHZtLWlNsslwI3D450Dr352tv++hTRanIDgvUdmz5J/A3IZV/oa1vyewTqChYaEvPB5g3ZkB/tBtztQvvrtoMZgOk4f7efecDDyuy4cnCF0g8N0CGsC9lcnYnDye7CGyx8aRwjjAvcOd5F2rg7bi42iAV+dJTQtwXxjHT/2WRgRDA4CEF8iWgBgWTLzx2CMwjHZOf7QPG22dpowad7Ia/tRDKpZrVbvdRqkwu3IGTSBYradqruRsMK/kSbIUCuErQp9nAyxvzFqfGwM9LRSfVoF8PxHVD48PwYRfT2OQfFxHNR4uT7pIRRn1XVhAN6d915HopG9p3Vf17pf34BQw05b0At/YVO7V7XufruNA+LopLOz6d0JeaJKYrZ+IpmSJTsjgTJGQ5aryLSpOEHQWyLYJqCRGPSjwUPYwTbPbOdAyGNOEGAbd56CfmEAnfs1hgo2oHiNtn4BdnEE3RYfQlAjn+D3B2iFHg34hv+0oGmhuM1ihzz8ott96Hmgu9+2+x6Xe1KLRxS9h9VwpeoYndgoGrWLxDb4kOJnPlZxYVbFEDsJBDkEOnTDQTdsP/MjCisf9ZwfEMUSR7HEUSxxFEuIYolQ/EFQaGMcdjssStb77HS3JlYI2dfux+PT3cpl9a+1ytoVMK9xzxsFbbCWIvVtdcFU4c3J9/z7ILVQYOsMxqDZO4Q0nTgi/XUvXmTDeMRnx3HgP2vDuguc9yJXi/1RzI/yzsFf4GT7j4g+c3jXrTJot/EdHP2hH7fv5KQKOjSOASDMj/GpwGxToLMN3CLaoEbwQ0nYabS9rXHvOhhtlrc/fXaBtGgWnDHIqWw7MBc36T3y+7eB3rdKffHsaBgl7QHkTXird1jhHbZgul7jYm8PRPtp8+z44hQWf+V016Pt2JDLczK4D8SkLysrtfIVLuVA7Ci7DuNIbKvsIL4ZD1HJAE6ATUB/C9jvwWjAnNX1JfiEvT+5YH8DLhuADhZxMGsrtdX1KxB1KEbd/AlXxGJN+PIfzBHbB/p/+Wllb2/PZZubgI5aSaDTvlwg9MttLHx+HbNktcQuzvcP989/ZXsXrR0Uqq9jhpz4IBzjxwHnoStV9uB3x8jDcL8GYNhyLs0cPnk4pX4khIWbOnzjPorYgHgl0H37npi6w5mzXxRc+tpl6hQZPWBZx93YWGkQC8Aj4rDvwV4ThTt6l6ISIZ906ciFybbjwxm0fX7tfnYVpRLXevDaD7E35Ah7N7AKb0CjegNS/031B1C7fth6+MHh+Ln4K/yGwPHfazeBldAHTeRzIlQ++mHc7sc1cr+SwhANg3Z4A+Lkw0dQFgJccljwDvpjuTBZIFtDtEY16xBUV+fw/cGRCxpcMCL1jTq1B71hN4iD1HY8DMIOjed1O5EjVz1ZUilIvEeOnFN+apd/vBECsnt736MPXTEPA5e/HTWPmMNFq9AuX4zVA/SbDa2VvR/LAq0HEyla3IY/GoXBKKqRG/sObDMwzID7co0NneUhetMfB6N7rmom66s+uuYwgH9rIHCmj9LcI6GDDnDSJ13btOgbT4CaNDXVZCO9uLjJg2EkhIdoZxsL8TQ2NtlpTo8pZBSnUkPRHkawgcGswxk7pu1h/oByiw7B1NfpQ+1AYwRqAZ5Ozne4RL0JR/CBD2b9Q0BeAgbHPgSce6KVbsGkd4KzEr9DQLCzQxqPRDvDWcSmmF0eTPTP0MIYd4E+gJRiDf2TUfCA1zO6C2cUkEOXq6ijAdhvQIBgPQ+g6wIaF6BwBmyT3C31s4Nt63LjgDNQktEMoSX7vAPnD+ypJXR1s+AJVpN1wocQ3TfMQbNmBBPhn1yTl9dNIVfn+k9je8G0f6GPR/AUXoLJcqBOnb0By3yLjNIf6qw3hr28DuRQYAqCytz4wRSpdQakIJfcwLwdAHKwlBL3FyCJXZ3UvgN2BcBuiVVcfcizR38oHCeCX1TWSOO487uoaoCJ67MOcJBOjV1el4vXleJ1tXi9ckV3jpf4K3y4Ah9elZRdCExwNIgR1U5lq8K9JkKwwgdloIgoJIoBe5HsETj4QRdU6z6ul/RXETxhRD94cIR63jUIKJ3iHOjGWXH5qVwtr5TL5UqNDcbxZXiFluOoffmpUiwXV4rVz/DRlVuynBmcvRfBOnidCh0ZUGmnHRrExoF2RUZ/JaOr43Poj24DIIDh4BFODyxjlW2CzpnaLdAMwESDNlUauS/HJTTQJcGJRXiER2xRgHHh28UtVjXVs1dTyt6VyG6vk7MYtLMmO20e1U9O9lvvX2E4BLkbLMEaBCOh8Z7s7wK9odOj5w+HeCyAdAK82iWPSoA6MxJOHN6OB+NIuD5g1cmzIimpHSAgOKXKI7ZF/Z07f9R5RKVbjQlDgJ6DmxW0x8SOoWeEPLkDyiHC64RovCAPRK9QiZ0jr5NXVwzZ4whN4vjOB+0HR3nieBJGCOAyQlPKeyJdDX+AA9oejPvwEwz9iL4N3pjMgfagO+71l3r+34HaHXHNfgPyA4jMLfGLaNS+avwefcBFduQDJ8HBoztfgPP6UtPFE9zgLppRAFYEyvnDamkhxWlwv8+8I85v+C8tK+8eBbA53lO7wx1bQYdomsYMO9wAf8t/7em/9KV1aR6N8+Pz+iFskBgeSF+MvWFp3KifNdFG452W1Qbb2gLpsqTtG62tOnowB2oicTdayUbci6U1Wk6Dkn7VcqkEgy5VkACYg7gWgAvT3m7wFvB1qfQjfU9TEWQr3b1gt7Xv4BPU9Mj+3kIUF6lpgfXCvgO/FhGKq9DTGsLa2ZomU8FDBXx7S3Qq8LmJWQha25Kt3sgt2Ui+7idfLydfvxY3uiZ2xI6Od4Ebndb3z8E+wOAT6S6W7pnXYU3NftsfRug9w6MJmjJ6tJeUWdMd3MLfwJ7w/HGXNrsedJ5xbZ/BguT6nIweoRAf4CURd5c4CAsIplgpVinGyHAAj8nHhlEsj312Hy2B8Biin+XOFTEnlRI7uxuMux2ueWHYi4hHCn5idN5vx8DqgFrZJm2Tt3N80ToX8SMl9vEuBCRwR39KO8Kws6B0RwIpst4znndXRJJIACqo5ic7AEUjdE+CkS9Kz3XFupBbOVkWucyRnGknaMOv3m3QQ8UcSC9iDtfDE7SKnIzhE5dGdyTv4SSrPObURZ5iV2d/kqCQ0nT+ZzLDorykohgeT3cuJldNdHlyXveK6esn+nR7gSs1eONxPqJIJeUr4PelBo0RQ0OLWarkWWWUDseftuQVSq2m31H84x+KrWpXDjav6A96t1Hw2zgcBUKGmfcVUq+dgoVBz4CGWjVUayYiYvRUmMj+evcvQ8UyppORPfCTwtg1FAnQ+ucBRP0MivrUZaiBph0DgaOBr8ORlkeZga4gPwXxA/q3T5L6+JjsEIPCuDNW3CbVKJiPdCN1R1Y0mJHLHiKuVXTSJKjJ2+vBoMvwlAMo4DUnv7ItNSm+I1vajiTXcUAZmW+N0VPI57FRvNOrgjLUfXYnYCnPMueGE1HUjoPLfsqcY1ZLHXeBp6ktCQRwWMlKHaVREDciu0SwM2kTiDCXBO0sdvJu1JUmgYSxoSAEXVD0xLdyPP7t5ymoSu6vo80xFVJgdjz1VTSIXCDGAcI5yaxvQQ1tTskGxWz52aQYHk+KB4eLEoBM9+ikxOoCJ6Eb68rQedKlkb51+vIUmbHFC7MHJ+Uqzi8Hoku8BBCKPW3zzIPBWQw3RHK18Rn23GQenwzUbSPS3mwZw2t8c2NCfz4SRbNsgdBPoBUM9upm7ARdamMHLwRVADVbSY4a5ELq9Mg/yQpDxwTIsj4Rs4eyH5jR482UHj3T9Mhsh6Gba4ZMpuFnzhM+5SMlyRmGydkAY9aq+Zu85i9gDym87NNPmSSTl2DZ3ti6DJybpMzaTaUESmvYSYxcU8d0U2MsmD99ppCMV7GR2iW2d3EGSttB87TVPGT10/cXR02Qbmfnpxc75/O/UhMK7B5eR9ZHt1KB5TfNeoDxIvPwNjoehe3Y81h9w3YjzQMo9XYNT8Q8zd4e/Y4bMsZUG9/Seoe3M+FZ2tW932ZuqY0PjRfTdGW0pmsGeofAOxCuixM67AD4ESo7Mw7Q7seJvT/xD6GCl0jR3aDbmbUTHX+t16sRdqckBDHjt/HssP7r8cX52StZ+xQsJQKOmAN0dASqwaDt1uipDboDZdwZPU6RajNXo8V7F66d8hsn3qwT3PjjLt7nkWV6WC1yhYSHUVGTfuxU+bc8Gotise7CmFx0HLcLEeamYbdLITQcR/m1W9OeuRTl8xgm6KfInY7BSGJ7JKwHFUR3HbR9ONU1jUjpCYx418OSmxTCfDAGHCuoHyH1E0hFrPzpDKPbIVonrS9ezUncwKoYt4OMK5K06uOT/eYZ16ZO6ru7zV1pjh8oK9rYtE/5Sj+Fa3otj8NBbcE5APmwUgXx/iPqB+suSP1148Tjvl8miFxdSiSgJfWuulfpDkQgeZ1MJK740XnRvIsqPPPs19aOt3dYfy8aihYpF0XSHg6OR0JMLV2Kpua1eHYIEluEwWOFoRtGFw9uUI8WV9906SPCcJH6FEci35aXUKWxwuZy4Drro11l99S2j2ZwK11uoTGJnnIVh4pmgnW/J+zxDNB40Ig6OZfK07HIEGLrakPFU8MCDf1RHPpdFo17keUkJV5h4tMgDC6N7ddmKgJMyRjC+9UHgCo4hA741Rj8Wolbffv/UUcVsMbfOCYvHPnrRr6ir+XhlW8GpfOUXKmwkfQAEKN+xbtCHmrB7kAMoH2CUUMr1SUR3I6QjNegpD7W8P0hsED/Olrq+U80sSS2vChfdkbJtHHSD6GP4NQ9FUbtUIeblSqG79wMVymEhz/qBFQwCgnIC/vGAyWquKCKBwsUMq3CpfGVk9SuWNd/Bg4uRUz9BvcdrWEZVoLBxRFIDfnuUxMK0YBLMf5E1e9jsGgbGH6JC9IuxhFQMHA0BD5AV+LycSXZDPudp9IT22TCecIN+JK6Gh/HwRKdF1rVGg9PxWUqqo3CycKci1zYitewYqYltbWrS2LjeAiM3D7ubDg8Pj45Y78RQhH6pUcDQBzDrvoUEjsYukWEFPEoMcSzPcDLPt1ZcaZ8FyY4ZGGAS5dw2R3AoK3jcy6dMTSKlpT8/m2+WhI1FYUC09Fe06aCKgxx0DjyTo8/nqWd05r7maNGce8pn/QZPQCxXvJxntvm28GDSZXK/xYYBmoY3FvUKepuI+OSb6I9oF4XILBSfXbF3Oj2Uj096SjUdsvN4YFcHe0JBBd5tnvGn8lbwC85kEqwdT6J2CBoUkONB0JW9reIWTu+2j3LVjKJjDFv8aLoXXF0QVTkiUnDtgFJX/NwIGnIy+m1mgyqcaRWIw3f8BBZLgEyQ7/JbBPF71g970fWadvjfPI3Wne87wZ4kAZRoG7G6J5KPg1RN1TyeqrPf3W1k0TuRvmURKyK7ZqtcbSR6iVBXvfMXm8m9hIYMXMsgpK51csbkUMw+r7J9k1P0o8CDwQw90jJGS9KktywNedhIFupgRez5JbqTKF31K/D3rKVNGw+NP96e5veoMFmlkultRXTySwyOdTYfhSNeVglt/DGQ/6SDkONQXZ0/SH7APSFvLzffk5czlJi8YnwvpW1BnNuu4Nrv8ufP1B41tOqW2IN0CVhJIrAg7E0qpPQOIjr4AbFo99/ZoKTg+IQUPjBzVhGuQ7DYYCvgCWGJXGeyEz4uUEYfeKRSoPHDUEct6PhRvKk5u5yFTTLz3z9RJffri81vK7E2v95OPJvez7j4nZB5l3g1yK41uUN/HfTYJnwSaGQ8Vzrlyd9rx370JvvWAFBGJcKmuM36QvKTCxIh4kHLOLXggE36Qtz6g6vSoo6JakWdFjLuTxTA0ErCCDuFa1aOE6BORrcN5YmruGWdzT8NtmR1fsu9o9e62yZ2Cxym44OhZI08s/iKKCgqeEoEE8x4NfVxW055p2r3afld1I4YNe39UsNY1gCGJ2jdqVN7LPtWkekFqlJhVHq2YmKKHVDdcbmTXqSCpIp2IhMbrS+0uIsyF3L2S51upy3dx7X8104ZwmsOw2OtOi4OSAWo8ba3cDn+iZ/cAI2zfUgvqNnBaSkEk8ppsFQsDS3KLmT6gGND4DojaGfs86DM/FmGF+yEJNx7bgDJmXAWE7gsnxFT09+3Nvbw//HG7ndKnq3yszdqnq36szdVvRuK5O78ZeF0d1gFONo6sEGfTLbAz8THofUK1f4Q0ERgirMy8cQmAwsvbOQ9ftmH49wWEVad8o/MLFJJReX6spccalOx2UlFxcUcZOQgYUrIsZudnsra3x7sR2FrkFrAAdkWCS4QFhu6hQpqiByX8EdduRnrgCVQ0f9ILy9ux6MjC6ZmOLe4MHrDIfZNSRXmBgVY40bFfx7T/x1A0Z4kJpigiKfmegq8Ui1njN6q82vR88in9RqosuDmBZxWQmLnqtt5Mg1+nONr4A7HhgUZEch1o7jKGgFwLdaxj9jl7S6FZdOO5xzdyMHH/T2CaeKss/E5y6GWlbfrRZpjuWiPvwSq7pWmOo5r/BsCsPU8xAo2DAeNXCSXeItYO5E5Xbq48wLb8A7JMyMVuaXmU3P8zNlqUADVMyV7/LVGsp4jfW7RX3CQDjud4dkJYNk5ftDsppBsvr9IbmSQTJDull4kphJOfR+u+R6oXDTk3bIFVVQO5SiunqFz141RFOjoIpFTdHit8UZJPyjg7oKjgl84d2GvQkKaUe0WUXWUdmYBLEqIEK7PIgrZAfgxADkykRomMjAUW2rfHizyTsF7a0NmLy0gKnCwuqeJ1T/cY0Bn0VKwVZAYIuYcaWA84CVxh9W6XEK/FChpzfJ3feE4Ady7e51QaKTvTrEdEegQ2kP9Pi7OBnNLJ7rCT8pul/VxWYp31nJmzsvvYgvqkuTWMZr2a7BsS0PHLa9Yph+xSXcVMkzQ/Wq9vi4AcIjuoclqdEbe34vnDxb3wJFQGQ02AIc1XsB+Hlrq0y+pLC/dD0Y44UD/iYubIMnfNSCjw+g5X/9P/9fhb7E4fBfdcnQGQ2GySOE1oBd0zsEyqaCIAC5fjjEQPhw0C+yTgBHtoe3AxQXh+9VS8maD2PUL95ql3Vy4XKu5igVSER8Ch+sU0oDfJOaSWhgM0BFHoCESyMIPYvEyH9UieBoUTAfnIdpJGBNoxEFhGPEl7ZTRYwnLbuv9qzhxxK/PaH3VY3j3V/hGIrklwV56/ZabxpO8KKGMr7goRqMY7CdeTxkKmjeNXNwGrk2BSxA2o+D22cRqb/E6jW2shTF/m2Q+JQcpHXYw1uPZy/Fn7qdSPyGP92AVe7VYdU7g/F1N1jiuwXm1OHumYTcqKn8oBwgdWqwTggnJLb05d8rxMTTxBpLsJFCCfjBUO8Z9tnf3p+cRmrobN/GDH1pseUi4FteONsJOvQWCwj5Jogp8qIqH4Dd4W2VQ3xRrBaPG8E8QQoh6o0Ovgk9cQHk8qhxl+VkZhxbPtJoDsPu4HYciBmoG2oQqJWaGIXfYwqKwmSw+NAbKKQfod871XGbYcfshTaOq8JVuvhoGj313BFBb+5xkHTQROOIsnqJ27CW/ssB/PKuUk2/1Ph4xLM30c8t+jnV4oinnKLwieTHA5a6M9Cv3OiCLQ0Gs82JANXKWvrbk/2TprfbPDn/gChYb+Ew0pgiQz18WmS/htPEl4ocVk9fNFe+l7qpMyXZpBA7eeeWurGTV2+zh/QZ/V8a6Ccv8NJYaCrIrMGCKRgvDCE09QIBY+el8Xxm75dH+Vlw0GP/ZtV+9P7p4MSUYT0thNAAo4UI6o7br/kj4eCpWkKBvdQJUJXEt7kq+eFcB0vnjpRpJ/maqdOdymGKCX/X8J5/pWqH0rJDsTc+SDItgu6vcRRkKfg2BVXNGs/jmMq6OAGg15CjiwFkikU1BRFZQjkD7IDqOzvJNGyYrQJe0lmTXYSD96cnySIoNIz8iZgoCFeyOnciMnMw/AHUg8EumH7zTEz5I14zf7S+csam5x9Om/Vdnmk0ydq5mIDJvztPrs1BNC5zsl2G8Ta03T0SUh/vAMAIGOYCayXAWhwY/gN4a8Ba04E1DpK0ngTsIEVxqRsMnqoCATYOrBEPSC1nzAAniUhH7YDSjXJIiKQFFigq3t+aO3lpOLVDXeVJulCzEZmBHMLTtU3YyGW6JdN9LmonkB9YbaaU5ZPSo9rg0cs1BU+uwKIx0oZIG5oApXve+6WcuR94H+qHe2aUS3XDNvnTwaOWuQ64zFM1lzfARDm2Z+en+/jmI51ANElwKldFbgIuP/l3FvJSBXgHPJRRYNs4sEfE8DYqfsTomUTEWMN/EJe6ypJLp2hREbBttLp3eFzfTUbTACwzRz/NaqKuPWzliL1BTkqxpB+PXO6ysr1yhcPIW7aIi0xrKdY5v9EBNFJMOLeZNrE3eRPL721uwhvDjsBUOgf2EBvZbLFxoMfUnJEix6MYUwzc3B10pHCzx7vX6VwXNJZu1MXre0O/g4aWCMoygE0NzOLuNe01mfSYJXAXZUJiblHj+cJju1JdQq8h3fznAj6p758mVCc5QuoEq6Ua+uGIR/hO4oYC5Ys97+w/BGBtsPkrc+c8QjNELS6Mn+cvgPnTTB7wkEQy9SiiKK3m9tPN+tislY1v6iRxUYQ/RbRuWKKLvFBmGMGAKyXI001RasqmZqKumOK7VEfX2lNEdkkoy6ZekbTrm+3eWNoR0hTasKUmQKzhyNrynkc3yJbLouW8qURGuXMn6GuqaYLb6IKW8yurCKAuvictbEBP0oX2UnLRBJqJYJuhu0JB0wLScDhjMWDlwhG8Ig+EPAWc6WUB023MYlrOJ9t+IZLZOejIXZLM2ZUZdinupp74sSLm3BsbTM8llH9cHN4QY80xERw52mS238SLjVHWQkP5P/9bfJ+OoEQEPD9zyIwddOdPvmc8fwLPI8ne6nmZo3mPhdqp333EHDRpr6iDufxo8U92tzAzkcwTAewFFvJ3WMocdQjkASpcjuay2kQa+IlVwcZLPt0Qafx4wgjPU7fn6On1LyWoq8tEk7hKllv6GXHIGj6279KyUYYsSkqN+alRAdWeFdMsgn6EFRDiu0CCiowVvxkMYir4gUQEtIiaBUbfj+DrB0r0DSrEHSbNxVcLvM6Typ+KT+z4ww58WoHPHYDIbm/xuQRFVYZdSqfRCW4xw+T4lmc/HYBZyetElSxr2jzZPzx+j2lZtJf2KSabbtxSjVu8cWtCY6V5q8781m41d4cCWnxyzoNqcqnszKtLheyiCV3bOa0ERlTjTrBVWgcq7MGcVVUPwxVpcuHTG3KRPK1UmSOi0ajBQhJkhRnQezeUQJ2HTEwJruJOCRVhpbrDD5dina/ED62rjVTKSaAVYD3OW2xcvqIQoXJRXgzBh+4rMAbx+k7ecQHNR+1ROMRlZM7Z6a4wLefJioxs5JFMR77FLUGNn4qA4Ugmdhem4iJLp3ZXp7eL1xyULQv0h0XRHqgiDoG14i0k3jzi1UD5ab3M/2D+Og7PuAv0fI+EA8X95Kc4r3u/FZlEnMfr4R/XvFj0rmcCptzRs4D0VczO5DtLa+Zy4bKGk0AvDbLozgTbwws6Tzww9kTGb9twwrv9GuTLZXgNr5MEuXToZTSFWySFt0RzI9JdvMzi4l8a0CC3MeqdH+moZLyboITYAwkDIzAwPBu19CLw7nH/3hW5FFF55flCI3pydrSkyvrQd8DFJRTqZzTG4XkKRpknVWp9JfbL8SmLHsPff+fv2XSBe+3371HPuemG7ZgLVR/TUIaYDvXBH4VUSoQny5WTDWOZLVhCEg+wGb5zoBhvbIgwfHmMAozgpWdzHy5aByBCS6/ssZTjcCeb0IqXpbFvc3zbMjEa89ky/JvLxjAbaUCmB8EE9MbEMPdBj75vUdgDZnQTComu8ovlQya4yvGga/0aCQoLzzqZdGw1f0yymgHHiTF5b9NJTTAfHMYWZcENuvr9kAC/mLN1EpygffTsSV3ceX8k803q8J9Aeuvw9dV4y51DamswCw8583Er7oNnjMoUpyILGDWQxAw3AS+mHMkJ4vwURhLriRmTCsyR6/E/+ExcbWHmL+S5pSNsV76edNWNwQJFFdmAkjFK12aZu/zfU0oXXtjUeBAdz9YAnzWWOAGAljz0+33UwarCebgFOpqsQpVEC117Qh24RlYdUMLtYASacFxLalZxBstryTjCVfBmpeouV9ZKGWMYenHaTd8prZC94SROCbxkqimHhcWsRt+E7XYqBWmZPqglDo0NK1KUJSkHlAYLsXqLWadq+KCEHozhDVYlA5O6oDW9pc068YQX5AwsdnYalPJbbUkXVkE6fBbTNgO/seHeRT8KbAbytVg100i+No3k5OilbHek7DOg7FfQNvCQI1I5Goc8YWhY0Is538OwQuQoKRWEsy/BXYh/SicW/k7hnRIY6sLCnpZCmN7R8DKEcCpcdRhOFFKkAStWhXYjInkfEQMUkDfY3SCmh+Yo4v+Orm9QmaLSK7lAyQInZsppzhGew8WUBSoCa7Glm3F6JYBg/RDQpfAkXSXhd0JkwyZslovS01RkWILGuXx75ZCi691H+ano7jEDHZr/ZNRh01qNclkngaaaLEniazWxQjRAT52AbeH6A3PDZrhrbs6wJBEizPnu4SWcdi3tNQydh26llXWLmSeVKbugB/jgGnEMFWlZJaPqZC7tfXRFdw73mBEvjVwhYVcuSDExlCHHKPj2NbxZZJ68hitWl08JZ8fjUV5aqTCH8v9ingvK0AE8KBKXQH1D7mPhHYxxVABk9olONSnxSVSR+LBlk3tegrOU3E+Qso/ODcRDJlvXsONx0QkkjJgWed3Va1w1E5SVSQ0GbnEQLwbURB0/Ay1pm9x7Jlq2ZRJ1FXCpiqA+pILPMZHFY4ALIySf/MItWb3Aqs0k6algTBDEGjjOeVLwbesniJbbxNScP8jlAJCLiBeYJO1ctrStVY7Uq2HIJkLIL2au5MQxmf8pkfXihSIXkcNRZBZERSgGMkyMyLnJSFsMri2eVEWJYg0pHhSaCmddSF4XPa1S4G79UtiuV3lVm6mAkQr4RTyoDiJBlAKEV1TkYb9KfCj3XKZiaRIjLKJLzQh9LZj3UvNOF1glgXmpX2rypEzpQGC1/XqosTWaVi2XsU7mvBoaKlfpObauNuyLJoKa82bZmDjL1sRZNuQs5TS/Op5c6WSKzDjVVfQga6J5g/qsRo4EJkyJLXnjU0hZfwV2v2ga6k5bD+PiIkCZTLL05JawhqF7nChlDv9QUySxBGoUMx2kO9f1InamrQ7nZPTpPY/ybecrRXhHFfZ6umakOgn1KKOu2VUycYizKtnkdL33plKW1ckkxc6wjYCpsZET08Zi/MoRpnS3vt7C511ixO0tfEUvfvnHluZnznuhpDjI5f2VcLjKx8mbkvVt2147z1Sp1OqESNzbRXWJKelT7HFR3FPa8z7rFf8AxW1Hr6NrvC6XVQA16fZq5x4UEe1tB92tJbKG3pJobrjEDFPOHu0cbpCxpNyj0q7E+1/taJbmfzSTCbzoZMLGTzyVb9QV6pecynDyqQyNUxnaT6XZBafIFakwfQ6tHGTSU80nyuPBb3dhHa4utS0tyJGueF1SPGbh1bchz5Warkggfeo6kOrW7cprC6K1QZ/XhU9os5ayowss7okfMsbb/AlUm8I3oNDZTPkvMuftA6r826kB417uM94kubwhKbGLdVBbR3E44p70iOQdCinwfNFjdtLIwsGZvSWmuSV1Y2h3GfcsbScfRny4BUDyHmvnnls6qClB+UcJE9JOs8/zsvqjkzJSXlVBUxexLzhq9/Gkk7aR0yviJxQ6vzGCbAqGeyh7QrTQzMwpwXjPyQeTIkL1U0JdZpAgkdJFnfuYHugnsaf4hJwPneO4/ubnnVK79WQKLKWkZh2ieIJdIzAnDQafF/tpxVHkMNi263/YFBRHQ13ES0l8qry5WmS6NpcDIlEj+UPU/Eam66UgN27a7ZimcrO3b9VioX7NftLDN2qgk08bXnluHAEHKUSPNEznSLGYAGn/06eFHO8Dv9oSiVq5zzeqYdIG9AuLJxG84C7l+C0vVd7xNFZLKxXhCLNA1UuHkqeQ6p0iHEqGy8uaiksC8jwa5U/tYHkyCaKexJe2nNRiz5anSBwdEbFskA2XeNLQciFIP5k1Tok40TNHP2ShikoY5lI76s0Qlqyq8oJXQAMfqYRYZcLSU2YMOIZvWYU5SXxeUSS37ZDtz5cK2Xp/wBBRunsUTpSXTXnyrCahyZ8NUvHM0bhPrgMRFD4YyYBqRJHw82OegBibTd1IFVuuL2OB5XAWa+6QV9rrbyHXGyI8SPduGRJd86upJAiZx/xKxJ/6j8JhRDtSkzUWWXJdx24HsgKxjDV28C4SqJCCcpJgJPaAma5YBGg8UPFWmfGSj/CXSPoRHqnOoggUma/RqV/hotYYcTUyfe0qrnQXRVyayJavT56+N+9dE1VGLPwfoMVca1pMOib4uzIpWlkVoz+DitE3VYz+rCbFtffAd5aUJeMlX4HR7Z7+hm+2Yl8FRIdf6SvKyOJB+cv5OeCx81GWbgrpC3wqikanZrqV0ri8Jv5Etkr/S22VWf1uU/WnytoUlelaeN6uda2I709RP4UFEQnhfhuLqJGxiBrfg0XU+LdF9C0soldnV2QRcTEzZ1W8xqu3Yy+eZwjjyqJJQWUTWJh8HopE6I/oBHQGAIuCiIvirlyp+Plq922/rEdKOZlQKWSurvHIwg4GNV4EVhDTyW8LzKn8Mjtxuq247Wjh4sVcY+9F1SMn22/98iy2mzbnyr/AnCsvnLOK58OAwZ/4KpBeXt6YZD9cp/o5OLQZT4gflbWP8o2Hhmk89A3j4dpiPAjT4YXmlMY3ZjtQMxyTfwGKmdnLkWy/CsjLrtpEK3HSRr9om7+FlnNi3NHUZL5Cr3fT80nROR33uegQkZfPS+rlZDB/NccY/kUqTjT9gmWCDmOzoSaB+j5MK5veBH0x+8CEhuT/8UQe04gztkVVWYNS/dRU0Bs0u/O7Nwvfh9uY+47402WhnUvP1vVzctIMh1ERiKodDGMbsEdMcdo4WqYrpjBi9DgXo/8+Hm1tVZij+dOK2nvX0pQZoXfI4262renuPCtjAeHDx+VB7FMG5Fvq23JA5UFXVFDQ0LW3rimSseDxlfryV+nMX6wai5ep5NIDhm3Lz4wciDN2DzM0kyb9tLbq3azfrN2sOhNFlXl5WLSa6UUdgcmSb7UI/01sIfa/OMlrOQuEzmpxkkjLEZ8T9ZOXLzVFdD9Vquv/XmvLWmfVhhndI3PXHEAEUpbM5i/NnQusH5l64FE3wxAnZJ5ljgiYLZqpUF0tIlT3o6pkvdxvndfrLCfjLL6bTrtT0i6cHJiJc0imb0XFiWpINveOT5sUTl5f+o1XIcaE2dfk8xuRLtVAGQMdl2SBHPUKFmUOZs/o/yUWVyN4M1L/S2SUtSyKAHJZx6rB3VBke0tIFOdFIfLDsL/06IdGqg/0a4O2F0Xz86KbNYFGA56mlmEmZbm4ogYWrYeTXQTKcs2XTGaTbD+7RmUuAQmLOIs7Pg1mSX1dKbjGYFTCkiqpigRWINVtuSBOTo8Pj99fNFVaM0fmadnUVD2MuZefmxk3CKRGoQ6KRfS53o78rieTr6AdVWRlEIviWKapcMZuKZkLqomJf9bplq82D01XW1bWzjirYYJeViob2YpNHeMlS6CNob+pOayqw1ijmmwBaHzxyAcS5E/bYQnAruthQ3piQsf6Onge4JswQbD6Y5OInzAq7yrkCZ08oFnSKmUfySCwbusjlU+1TZ3Ty3Zqj/J35OS0udc83/ngNVu7KUo0qbTAqu7MFrNBuRk4uUZMmrB05CaT2ReQ2peTm/4zvfuwbpQjxMejH6kNjjFhzLMiIHeCNfeSQ/ZNZp+qz/Yx4f1GbWQSBIq5Yuw2PmBPV+Z4vKOU9J7M2U8unb6jVxVIrtrVAS9o2a7QqnQyRRjcKyxDVT8/Ptrf8U6bh/VfmrsuELeZsTi9lhmdMfKibhAMnXVLlbqcDkISO6nneJrMEkKyoLLVM6euRyrQMmqCKVEsXsrw6y9i+EpvmqH9N5IQU1chRbMvWYnZZMv2nETLzAtuE0dExdAzQ2QfxDtjTPYDOtgz6rux9kBMP4/a7PT89CA70W2QSBQjEgg18t2tCtf/ZCjxFj0JQBnIw0zv31SvVN1y/pFzX6i48HFJh7Qbkhbcj5OXc6Cwg5aGWcqkRsujhox+x6RvUZEZ0r9INPLxgPsOsM9TTFlX/hIRYm4JJoVNl/HD0kRfGp/2ErpiXuHVTGKNTNrze5NOZid/zFRamdR5Oo3mgNBdpl+C+nRxMw33xhfjPtM5y+mrHTWiPU52QmmzkFpWXNpi7zR9TdP7U8dsO3uudi3natd9gxocfslj2fxeIA6UcWqyh0pakwTROCJ4ITHywy6+6STbZ6Yjk8zln/XsJDP4+kM0CdZXnKbUG9Kji7NzvCnnPFCHW2OKOIg6vvRMzrQmja9fk/RJ0+m1IM4dKNAP4WAcyRNHlPtlZz0PlZSSz2uZUYUa9U4NBqa3bvwgCk9ADMeFn9YFy4xsmvM59KixDpyzPh9AE8PClABZ2A8ekyI+kZsnwhVH2cphKbOdHtthNtdnVtKdDinCqkRSX94sP5XXys1tJz/mxwYRmbYa6/viOl94xmeSG+kA7dmQLH/ZTmrdMj54zNhs8WFRUoptqhlF5I1xhkTS0+XIv9YmJhlveeJaXAi8PYrYnf8QYPKKkF7Hcx4SyLS4XOpnkgdnTky5vL6tGwHz8rrz7K8XzRr7eLp/3mTHF+cnF+dzHcVWaH0wjpNsdqms5K2NnA4q8ceWnugLe6BrYNUswZ7nLkSTR7yFsRUPJWOFgtd5zoYaAnoIRjEvbYZmC1VFQwc71w0j1J9u72J0C952B9d+t5R5Ps8fC2SeJ+Wka9qw988G5eTlA/tObte//V0uxTLJ7Phq2ZIo64IkxI3cuGRzAqJE0jKWmkvN4SGcdDtszuPBmMZDqGV7qG7kwuCP3MpyPoqM1KvWqd7bAnMeAPlVqm4hZq9OFX35Br6chgGFSPYwRLKS33Tcx9qtlNg9ZsN7Uc43pyRxzuXu5YN51Xr5QOlRJiBoCU2XeFDpeQxQ37lE5BcZbv9tHx+yT8RHz81gAtt2hvdzwKUyL1wwB2nuW7PPls8nXvXatRL94iXLOo0CkWQ1y1qQQs3VE3+U0r1bx+cgh9p+H/PCY1Ir8YxIlBOmTMBo91JadzRYqbbw0I/v/hJRtvYkDU0atEjvjml378Jhu20kd6enQu3BaDQeyvzCGKAWwdjo38ZpHG2tliaoJrwMzpF3eLxTP8xJAD+pZyvVs2UNVDZ77hwfypTwWj0kCclIDW8HQAVIKLUQr2ZpTmJRG8BSnp6KMfae0eiBrqlE86IYydW/BZHGN3FxUOXZ+qeWPzgLkBhlPZnCrK+bvl72iNErIjEDIfLPKYUmDv6WH6xLNUf9MIrcEzyzbPWbiq+XTKLyepOYi9wzPsAwF+PaxX6MWqJcV5r54kOZjYn9TptHPImx2fENxRhuU8W8n1glG6qZKrnpgcmmjX+kxscSnd+7FdLKe9I1nffPdPltCcQGq03w4CGv0jaDqBCLnEGzF84mKnpmOqdeOIOoGLT9rkjUmRi6GFrbC6mSYn5XmJ1Ig65b1auTO1DIGb5VketT0OCoOnh5DFkkylE4p855MkCucFEZKem6fKY8NwuzsB1L+hvTksmYUmoWLzIo1RRzQ4odGGuTHbkv4bbam1o0EwwrgVbqCxibqc5zPrRtT8LHy/UILDDr7Fg825lWsafq2t7F5J5EyUT/fR5nPY+rf9B5rM54Hqv/nc5j9avO48LEGPflpIot96lzDyN5HoUhTdGHorD8ZRIbdXUJumn/KqsriHTN1N6LumE7SFcQRHnf2vi3oZYQFDlxvf7s74m/1I57FRtumvdu9vxY0+y6r7boXpIT1nKAeW5YnhY8f5TPud/sePIgmQekwJLTLWgB35mYJuGcvGypy6N5XescLBEbYafN3YudZo0d4q3zznmdReNelGIo6k5Dy1I9L1QmxNZpe2ypbr0qK0jDb9YS0rxaA9c7MOgf6KAzbgc/6BqPxgGJ36lwUNzN0W1USn2sdfU8vNPnFc1MM1Crs8izRISRh5f6yaZmmHpj5Pfbd11MQcoJivEgWEqfJdIfYSG9nh/dg9JV4+8M4rCztVWGQZauB+N+J8r4S2+77a2KeAiDZyBiODXOBAgez2Z2G8SsnLmTWmTDGN93tmEOBZ4rK+w8mZQq69dNrYmXEZY4AJjmMeYKSz9ql8wLQeo5lzHNlQAsYoT9TsezJl2uFBGtol6pGQ6sFhVMdR6XF3GFFpcr2cAaUEbk7V3Y7YpiSXgFLPeAYWF0dudHGKWo7U0qNR4mkhvH5DO+C2/vlvAVc7/9nNrmEKE84vmiWqfY+ppIopRWzh19Rls5rFCRHDoQyBmFrDBFy67dgfB5IftThtZ1hP6kRktYrR4UsDMYDClahi658QiK/CCiGiB/TxvBecXTiHfs2DLoBr1A1nanZ3dwmB1uGZB3wdzZ1Q3++SZKCCrfLfIcmYXnFlEWfcoQG1fcRcmIRusrE5Mr4YlguQgCAHHYT4vezwsW3V4i8iaLCEpn7hTSh3CFJHJ07TZt1onqrMDcofuncukG6F//6/M0/U5y5oxGEk3X78zH5VG+HiKwfJhgUfAmefaEEti4HnjavdiNpAqL0toifWFNgISAUB5KTxv02zP/7Zn/9jv/7Xf+2yP/7XGKGZ1yK5crhmOZhizysVIYpTpWVzIdf+cdH92pybo1UMImAUuE3wUhSl/QH5/ukDWDmG1YOAVe0uG7JczcIyJL6UKOV2HuDfqDeNAP20V2NxBVF6jcbIo1CZ0HtJ6FOegZhs4B8H68LrH9nwvySef75tERabescbz7K3P2+xQf/zM9DyzIwiDuK2CyIOuiot6FiQf5U8QYRDt/R0ZKV70oX9MEZNvtnawW+CvHsK8KV0dFBCbCEKHRISaVjzHZgAhbiujKssRwe4TsqXu/LcsHqiLqHh9GIiCihCVSB+m5I39IOrVGCoYb+6hP9Ho8g8X1oPNcEjPV0rM7q/z1rVvDL4x4WiRzAk1ztj7lddQKwOcwUTf1uHeBP5dVg437vMx3h2FhuBR2Bgr2174ws6mvd92FJKV1VGOqTF1IxFTkN9RUwz5CUHWZmYYkYGc8QoUCN2hhIQ56Q1QSGKpIFITEVqpFYgeNlv7LAfzyrlLV1Q26tMUeos3HFv2caoENyrxBK/nxgKVKqdKH6jofNKo0mCTzAauspb/V35Gw6vbCbvNv+ztNb79FL7ipAL25EV74m6MlyLwLh0ALvGj4IiggWKVlFLZjUKrrRa2dumoWiorWLinuPHP7JLOyOb6l9Q5vR00WTYlitpMiqbigFGs2oT2wyqJZByj3zstkmkkv/kqumPzc5z8nXh3tO9Dp3YVP8y5JhcSxhAJ4SXE1JsMko1csX0x5VdSfrYRIN+yNWy9pTGUBZeNM3hNUp6vroFCvrU7qD/xFDCbgqeQ5mfZ4kc8mjbcKo6mLvDnu3o5eYOmP2DbU0THa5ExM9iMqbB9bGzlNpTpPTTFIhZZlMQFj6ygdWHJBVZIc+OfjUX6PVtKjJaJJsYcVObNQMVbPzttemSrSaClpwtZBloiVHeSdQgoBLacsRxlzr3F3nSA/ezctPS10k9iZSWrt88AktAmZ5k44lQQTpcK7Nb3AdiriScW3E8jGgX1w3kYObvZMfOXWYXBBxYGS9JCu+WF2kDXc5WgagGVe4TMxM8VuafHY+z8vRcOgjWXIa/KxL2atPODlktG8hU62hcPkprxaD5+ZpJafL+qtc+/96fHFyYZwIx0sr1QXLDXUG2i2OqKuyUcwSMlzsLGQ41tzRIbhj61pLQV95Tc64CHbnNXlNtOW8k3eUub3Nrf9DdODEMvaFjRU6dDnwViTR2AqWjVX17Ib/XGPqwmRd6/TvL4Zlm482VAfg9/QJuIc3TGAFdiPLgBad5MLdQshaFUsmSqrqeAmV6S2rvwaVWGdJKudMBoVFhQ9NCjzlznn3BsUoqoQxs+vVBC5p1WZV8kEGkfp8qX9dLM+dyqlmmEaA7mcmj8q3Uxe63JoeL2rhFa6qQiMZNlK3DFdKauOrrVnj+MioaTElBajY7Z7Y2mnylOkX18cWVtSFVf98pu3nDeVHBhZy+HkqoQ7jQ2wv6gOB1nN3O8sLLjus/tK9CRVanRX0r06S9+eSraEsoW/ZiT8hH9Tr2BslLFPqq5LAsuDqoluexVeA1YuHMEO8kDI88A5VxYwpbyeWrVeqzSfqAwTK87Pv5A13c0wsMIHo2f2Nvuy6nU0XJkgAVdPs403GRVWrqbSO6WukYTRKh56S1BXl4nYvMrto/sbtK6k7WRUi6tkvZvyARpec3ABeTMYxMMRFT+bRVTyl2PeUU64u7VxKyfC3dpYaZKqsxHUblmMVBi6sheuLhWyiyZ0uSI82AmIxevdeHivQob/tEgnbsSpcCfVHW+KVaFiVSE4lUcGNg5Yg/MWG5ev4D+6sxJ3WPCh+xqn43Q3woxpxFbRcyt46nBALkHhlyR+uydzfc5reHmZKOo1IGugC0Wz1Kq6UkzcO8IIgeV5+nGP/5ELnoCURQwm3lN6mMzE6wQ3/rgbeyP0GvKqRkmEDzqPth3hK3qNLaiLAjriekyUpqQbRzqFHapLKcpM5Z1E6VkWQPi2VdYa6D0mJ6IhhfCCZtAP2G+U0PqV7fydDxetA+Bb3OoVNueyVPNtx92sVmre6C0bMHVDT1Rp1IsQc/Ur3SXdg0fRKb2O9J7JPZ7gPCTyzBzzLbdn1KyX1HW3DkHVT7VASKxSvNWS+P0PPq6bWEjzJ0VeyylRtiaZSfPXrXhifHoEvGVJtPtT8sb3DfnDakpn3cjqU6ie2hxpKUjL9EEt0Wk3rEhhtv48UBosLY1/OQtI5aPf0qaqdpNK1BDaU7UqVS2KzR51P1eGhSoC8ZlvRClmDdYtS9SaKOpaUCTiZpw9CSBZs1WoxFfWJJgzZ1t/caZ1swOddlBXQErBp0PNc+w10mxTTgMncB88S3sMrbh8NiSTIhi1ask9QVWq0uMXkrPhAhMSQxlsKJ0vc37siAvxb0RlWhUJHjCSz0n4ilfeTWJKqaIUW2n4ixQ/nhjXi3SxoKk1ZgkKUbxAhLOIahRL2zTUJy3PHAboUCFMT8S7rHDDLeVcytR/mNcmnooba3nlPH9utP9zTfgAYp9eAeP1MOo9PHxRluhYSALZQSNPbp8vhZ/36rKydrWhwhqkyuSjHiX6UQmEaMF4ocIB3QxXFZwNMxxMZSFGnBa057JGCUgPawuYIFCnWz8qa9irK0K9I55gc2jx7loUVELlnZ8jnjIpWTi8/qakpYMeDyCYdL74fNdVPnTJLJVdo/lda0nowOwgG5eJRXyVBi+tJWMFZGJzMydQ0uVS92lq+J2oUu/yCl9brwijzrCQLIaD+O3RIIpEcZDIzZELYvUzciHMFwvmkxNLqHYSpmYqhwWGD0wMDdnMKqmTRUglVIm3ZG8VClL1zTLweQUd7/+sR4FQCAg+YsiEf4DdeYjpdOnA8aANCll51brfNPQfUOTunjsLRRgjrw55MKmoy0zk9AUk9cVkZX8qkHmDg1nmhbFCVVUDKrmMfI24MVcsNngsaNYkzYzG101zYCqfa8FYU0XH4jbk64I5xTOgSU9JUrEi0agNSL6t8xdABwq7nAcBi7bQaFknU4qkEN0/LpsQFyk6weDu142zOus4MLH1rxxr/QVj5b7fnnWwCo9cnGmwqu1VysSqI38egszq+WzcHw26XWsTFcH8dwy12oB/NvEWn/29UHCZievfr6jJtIpdeQh9JVn+EST5R5HjH0aKfwgZfv4jKrTZpHS1ZgZkYm2RPRGpicxc6NQiJDWav6DWR+dCWufJ4ikyJXygl8hGCoiXvUd+fQGclpInfvsecPWvo6We/1Rj7W7gg44OM2DXYRwVxbMJnml7eO9BIzNmXMy792QUO5LVFB3xfZGljy/YqNxljv+PU7Q2gaMZnKyS4mRZdpTCS0j4xzAKcCpO78levWj2mfw9PRN30kMLNLcqa3gLcx0hAnTPgGjQFQv8Q6lb0puUMr1MVqvMSCwnhXsmXI3yc1cOtbmZeQyeeAToz3UISkzHAyoiCPhWyXEcBbcA86yW8c/YxbQm1RWX5p7dPyPeVVSsTG5wxeduL+w71XerRVoCoHVt+CVWda0w+dUX/OGHUt6seB4C9fzIowZOMnveAuYO2GZX9oM/6jz6o4Dt/O28xlZZ53Ew6kTs//xv+JmUcrKyuYpo1Q7V6g/LPJ55WBH/VsW/K1lxSm0zRRvaD2I+uOBw1MCOz8kFNAS4eUwcezxV6aIoKzKL+rIVVUjTt8WrksGr8l3gVc3gVf0u8FrJ4JWhbCLCr0Gs8iWIrU4nsG+C17vpBPZN8FqbTmDfBK8fZyCw6lciVv0SxNanE9g3weuv0wnsm+BVKU+nsG+DWGUGElv5SsxWvgiz6nQa+zaIrUwnsm+D2Op0Ivs2iL2bTmTJjQn5p+VNyqchaXJFIu/hyucNSyftqoT60u8b38pIXqnpBUfBRNYtY7SUZYD/XC3jZMgXOa+nlxyXwYLfyjdtdkkSV2U805mr/NlypvFoSiqCqwXgFJhKREWxqQltpmqU6HGVBCR723KlIBiE+s0IdLWm18Cla5bds+Qh77T79PnRrIbFNyDa2eI2vih249smx0p1FOdFpeHNPSfyisWXqeGMeJqCBFXIxolk4eDM3iLVY4ysUSp7Fp+pfj4BhjtbrkfzKFuSyOWVqJ7zmWuI0E39MTmeMnH7XWQj/1Gm83HG/RDIoyev5fFpOP9xvudNDxPDHY34FqeD7kXY2KKIpXX1SBN9On/ABek1P+XQ+U0mKP67OtCzJp374oRzqXXxHvje8Ttj/clmgVGslv5Yc9ac20mucbn3M5zpVLn7LzzZuK7Stau+z8nsgm1BZ5UB21QcNuwNu5gUarOyNiG/ZBJRXtSDLgtiPYv6uSiIFyrut+IfpCfUsvkmVDW/jHR+xZiIhnLtvvqZj7Qz75jxOxOvZrQnidk00X44mlIiGVqYiaKxywzKaOTdA/WhZHboMDraY0oXkOZD5wTufnO2kgqCSAcxfpqQSbU8e87LSQlZqUBMH1Pz8wfE+W3heJfTrEK4+yec+YncYhWvV9WTkGI6ELMgd7c4c63zDMsxQzMdmKorDUHxls51J8658i8w58oL56zi4DG6/ie+CjUigPxunYp3nern4NBm8D1+VNY+ssPTQwgjEm+YyBOPMtpxNNJPDE04L3r0h16n4gBuLkfxhdEi/BRkEuXnH6gZjsm/AMWIqOXZqaZTUdH+2VV7m1f3Y9pGv2ibv4WeoJciFK/0uKROQncb+iepZFWvFKJhYPUinQE3gc7xJMt+glqQNR/YFGBWuyLjb/rncDfYVBrou8wmlhgZDKOg63VWSYeJOKekfO/fhy8jSafGC18r0sa8jsCjAlZd2uVxpUXmdx/950hMyd8quzneDfFsY2JOa+2N0DSDLPJl9g7L6xxbTpA0RgCAZ/wk680CrpB+iGaBAAsoA0UMn6QgYPSI5Id8cwzSdbi+j0zrX6KlilfWMg237coD2ZPwx+KlB9ic8N/aqnezfrN2szq5ZJHp0CpajWGjFNRk6bhahP8mtsAH37TFk5vJw1zMyDbvWpNueRWQJqkqL1/RytoT/ldd/++8pC9L8v56qgIKOkq52PyluXNxvn/colLiVI/8povvfVB/CGQW0iTTKAabDR77rP4K7kjFEk5Oj6m4sMr15dhKSOO7Ovm5mSfDKKJ+MhpQxooaZv8UZdJpsjIFYfuZDWBCfJJa+XTNvzlj8euXFLvXuqV4aqWYWoDJla5eWOFqxlkNzXLVk8p5GvT7kiXQxtCfFR1Wk32ilBKTitmnlip/YU5Om3vN850PXrO1m6Iok9oKrOrObLwYFJiBk6v+pfdXR256XbMZt9BCBvYa5Ha5/hIafA2sPucd4zqPMUe7FBb5N5GQmXRAwcKoDp9INP2n9IlOIhFmPJ5ajLlMcq8u12cA8Y2O+GzTTB1zy1SnVOOYx+GfeUVtDINEll5yURLMhwEW4BoMk+03p6GnIhb13ROuYpQZsdluvOESVpRI229TzDfTerMru8lF+KTluDeX8IVbj6kFK1kIurn+wsFzqOcFzCEHp5fQVQ6Imegrp69OYhkuZS93raSTpq3MRlBJj39qykqm8R2S2CTkXkprk2DZCOdFxJgHXP85PUhKbp77YTePBSo63coh1NmoxUa8Jr6z7vh0SKmjY+uAh1iB+r4O0RdS/kzMhnTxF+9d+cs2SuuWcRPkcrd/rb0Q6kf7Luh41/5oFAYw16dyuby+7bxCkgSefvCi+ceE432y1EITpQrlWzEj+2trI6eDyiizpWfTwh4ur0g6i4mJupl4lG+rbfUd1qj+b1X3MltINYke+sIKl3hN8SpVLvOL1ybpK8qZcrIqVnKqY+Cra1sSBhQI0cNAiEp+01RNKKMi1EQ8zYKURfN3yo0zAcEJBaHoFa4sc1s26txOxEcQgAXYtjO8nwMulXnhgk9rczNOvLiGp12a6661ieKR57c/8g6Pd+qHOdl0J/VspXq2rBE6Zk+tIrRWWkFCUnl2M+9wqbYOr+gMvVL5dkW+8at/c1WNCeDi8FvAf2ZmirMA9lfW481nDUH9ekYqRq+I2HVC5J+TpU4cXC+VTnNMVW6XpLTIq/R9M178kklUXm8Sc2HixgfobjZ8kPZj1BKlNtJsc1mV58jrd9o84vkZzI5v6Mp7G6v+2Ku2pmpHefvnTW38IzW+qhb1HavUrbx43um8f6rHPCdkyO93BA8eajVUprBcvsgZNHvhbKKiZz6C64UziIpBG6xWHsWS2Fj4xrCHj+LSmUX0rjA7kRVNN+hWJ3eACY9iKkgr1qegwVFVavIYsnhLpHBOnfNkgFzhopJqUhrqmZ4CLczCdiwvhDJ57Uy7QM3iRdaRmmJuhIvML/cSbqs9pNi5TArRk8pLK/UFjM3UTTkf2rZnxRO5ljgWVfVg13thmqWpJ1Ey0X+fx1nP4+ofdB6rM57H6n+n81j9qvO4MDEWazkpZYdXljWeuZftnVAK4lEc+t0oJ6eUKD7qRd2wHaSr/1BZ7I1/22IJzVCaWa8/+yuXLzXVXsVMm+Zt0rW7yVGw00y3rzbaXpKH1XJGQRU+ckU28/xRPud+o6ryXpoHpMCSAyxoAUMeTatvTl6h1CXevO4PDpaIU7DT5u7Fzh90izAhbkTbT0v9yFWjRiP+8Ty85+R1a0w7S6vnxN/ghZHXBQ6cLGnmtmCRDWMMh29T5JCsd2zuiawRNK02kGNL8AlMH0Zws3lg5DFFkN3uQ0/Gyo78RwnYjwc9XI5OxwtXqllJWSkiWkW9siBGifP6TxjuTfWgMgPDAdF7bOUcKrV8aG2S5wIPVaqmtGu3Nj8vZH/K7JuO0J/UaMmhzQl60or7eIeT6/tS+LBMRSmsT3OxVjf455uiumtL/F7YSo2ziKzsU05qbFEoodHa+Lpc0nqqbMHBAEAc9tOc+/OCRfuTiLzJIoLMnbsN9CFcwcgcXf9JK/6UqnGVRWMUDp/KpRsgKv2vz9PUA3nYMwItmq4emA9conwxJrB8mKBz8iZ5Gqfi97geeIQwK6XUgJDZW5g3rAkQEZDKQ+lpg3575r89899+57/9zn975L89TjG0Uo7HcsVwPdKQRT5WCqNUx+pKpuPvvOOjOzUJjgZKaK2Y/ZgoCFH6gv4YBEv6LmKWlXEg5RbmIGsMuQPwfmyX2P7PBVlc4qB52moesmbr/PRXdnK83zqf+6ALcdAbdn1QvjfJ0VbkPIv/c6C/KKCy2uL7hmjQOOD/fhSff2yle6jTlPpce/4CZiXvrcc1sur2gucJlcVjDwPQ7z1guOM+qDbXg3EfrCzP0XmpKLGOAoTdjDHna/gbltqDlbz27oNRP+g6WgIRM5m4h1IRTP12DIPVi1o7dQckhILWLinYN3N7enpKrc3xLa13eDtqsmgeZLOd5ATFBaUksAntuUQEBaJoFhzJdUmnJOjCJ8u7Byofwqv1IgsMH7x2EHY3gSwaR9uOu5HbpZ/uAhvYaOV1GcRADdRR1DGOSOEXoPK7PA5G91T7TgOwaK2mzp029IQ3RA2KfrQWQcZa121e1fF2FHZ2wx62WTBkOI6rwYEfN9RnmxpuyafAcwVgXdrI9fJ6RVG+uagZvkVNEZzp3UNKjmkmdCarsIRMmySQTIcE9vyh99TueLejwXgYdDbFxhTlvmw7EkoxNYvsnfKnqaOzZW3jcqchG7/JaTwvrJMFN80RYD6byC2RUyKXRA6JzAn+gb8PdDVDscKiHjtoiv16UeM2ipEAj9COv3ay04e2mF3VKZSkYsVeSdKtl9jexVlzV8o4R2P2QT8ePfMKre4/r8Bjv7Q7R4NOwH7Z2fWOjnebvAd/Q3t4fHzyTWQiD0MmWv3nlYk488VJMqvti+DGKJixB6xhus90yYjxy8M7TOkAQtGIXd4Z9IZwkpbisBeQeGAyNDNiE0rJyiKwKTNRbKNNvp3Ud3ebQF95kheNxKONKRL7S0T2l8jsLxHa06Q2rPjP9JBKLbAF4AF/tH6mbd4WO9Cur+3N6Wk5dz5tJTDS8sfsq72RP/PkUGaB31VbP+60TAbk5i9Z+Vl0XIDimCMt6pzFnYKZh09jeRhUatjFiZPDeTSOjMVUW5o/JNXp5APKxUiALKbxyhv37NfWjrd3WH9/lgNnGuLHF+ci4FwintBV6gVWg6c0RDOe+V2sIBFhEPDzYByzHgpb+P1uEMVLUdjBFnh7g9Wr3UmHe+f4ZJ+/CZYSAbUxISVqNXRvtnZhKdg//jE10MgKgRe7rJ+d7b9voaMLB4WG+MKzkl6U68Ggy0AAezv1nQ/NXQOrP2kw9+qHh436zoFrlI3fIV55TqvIf+YrtpnMs6hYE+g62xta5wvBavFQyZ8ndy+mCGDWFD1C2VIS2aCC7dSen5OjbZkUdQbb2o/D+JlZyqZiAW1JQYlzbmN+NgQXeyonQRSNe4GDo26Deo4R5TGZDxpTcXM6KSRkT/WBbn2k3x8CISz5VMBEpPaMgm7QpurszkPos3jkh3Gk0Trf119wQ4FwzunrzUTtSWvWRatXIPXHYB3FNJPYzthsvWfU5mlX1CTfqCOQXnh+3WpYZqKMuq11ezB8Fjv+y3mthtwSZweU+iscMzEyOZWNddwNRuFDQKZINPTbAVdpg1HEc78oH6Y8k7I+p1pX9DsusjYmEtIDw8TpW9x2NJ1FkADvMk53UWcOOhmqjtz7PdQO66PbiPnwl4AFP5Xq5rZssbr2pdL25JfqA7ORVqqHN0rSmlOTnfQgO9qXpGYpUwYnpvQuddmnBJjez7SB0h1TeoRpLyecUTeW+YJ4vwkk29dL2/DbJZKHdocmWslUk7wVz7ahtczYuyngYw48F+w4AStNNXPFeDIM3lDkq1cf64jwDVDuZNFDfaA1aicKMW+kDM6E8PfwAmbox3dgYf82DmHtwZwbjG8pG0fEhsBN4OgA84HVfoBfQHaKh/DEHEoKzmDE+oP+kpQ/rAfiKCryxB4IAXZRpfTQ5osTA/N3oDKLyfb4ph6IG45+gChSEsud4wsQt4QYXpmFt32/SxgRrJJFjgOz5tmM8MRv6YqqlXskopYvgjC/EIoWCGrXB5TkxRSA2kDbnAklE5g950ONOcYEsqCsh0EbfJOrXTsXZyhNMpPSD4vkgooiaklWlju/30FtPnjy23H3mVVUMoQKe988OiJi4HxQh3dCR7dS4xp/+HvA6jlXpQnvviUmj9O8HfujDjB6RzL/ouL9livHWxKSqeXJLU2JI/1GSPOxhBsFoRSFgLBcyIiF46WaN7mmgx6HRGPRvQWmaZFzL4QHFQUtDEv45I7Kqd1J8Qu9K5B0irnmB/lYtqlao638Ah+mUnJhITtBG04DOSyUNiNXtMiSnXyBTyvrrJunp05uwEzo2CWBShwCqgKWlu/L84NHBxNDANdD3tkbg66HmeO4aTzLcQErBhNLUOFF9Kp0kGB1zuxOPVCCfCiw7sUnKwtG4DCFB86ek/MnpVQDt5M/Jsw5hY/y1HM2oc1tg9k4AP+0sGWg/2+28HK2YCVEefORDYaY10WKuTWPHhGscbdgSvEvZ142BiZGSfiXQODF7Ot1WdiL2dgfdDv+1xL7cHx2XpN3Bof1ixao6KfzvyOQHPiAXOSMu9iBQXIWy81d/t2h+GqvTxZXp1a7gQ/QVt5En3Oud72Yco1nfs86xIv4Kw8N8GIXLWBu4fFhx/3BqIPJcL2eP6QY3rVVDxNTpNDcZtzvj5lCQLiMngFOouvJfoyixu6DZ0cVlwViUj+3tJ8P5PnicVCMl0lFIO4RlkjFhz7/0D9t8aKx9Kn68GADqUZMiEfDtcfAA8f9mF9Kal/dYtyG+FJVTUadTe+TClv6sH/iAa3sHDiwiLvBQ9gO3gdxXYb3mwfgbQKIFp23V42PSO6OBu0gigajHd6s7KZCxDRkNgkZY0Yr5VXdbBNrlzSh5ZBkqIWEKFLEjGH8KoiBmbhcl1eCIpGY8M5Mue366juuWa+t2l0/ilK0uP8z7M9wFD4AejU91kEzRkkodLvDeLShRzcow9PawrybYZx+FpKAzYm+YfsdiuWqY2E4vu6GbY55emZGMe/ZgkkJPwrkUjHumLQbTXgZ4KW6yjgvFT1JK5fO4cOBwSoJQInbPJmuEX+ZyidEd2Y8ZbSxxNYz1XyKj8gR/hFE+h4qDc5b6FtMTaaQ4PPCROvqHPJhpEcr/QTHQOoo6EVB7BAe5QmopIEkFGi60TiBbiPA9GIrisRSRNa42oWJjz0F3+ewKWO8hmtelPX/NY3uHDUT11yZvVEQaF+aqWEyULlsSn/8lt6DBN0gFi6oTAM2ALPCjwejrVlA6EeULrdPSUQFI2NWvN6aZINC6JK44tHUm+kxtvXg3ZTwu1RyTuhKLkbHX0rwV06OYm/eVNfT0jt9DZ4FoLfkjNsEuZPtqEl/xuPa0uxDor20zWfv5IeNCAAaXRkUQMsvgMwaGzBhklPjBF7aN4kZSK3QTPEDU1bVlkcoJwZtRlkxCdS02DRd8Ep7dothmXtTDyqaNzrqYUshEYVaeBhMm28vPy3v3x+apO7khFBuKpvCYnDMxtCnGSOuCacT9lakIQ+TpF8twRH88QBHtjhb7JSd5ZtxVLYbgyQ2aiPR0Y5H4W2I/mNaOG5NF8jSTVkPr6yRvUrUkU19SytvVt3KCE9hMwSpWKEcmPEU2fCNyb1sURxeJozDCsPwrRyKkS3Ul0R1WMF8ZXDHoTW6I1eZzURo4IKTq30zuVTXgnxyAb0w5GIG7XoCBdhU7IlQXxBP8aXxEpmx5xE28XVRE18eNDFbOARHbFELohPVZwwTQKKwqAXOZQ0FsuMTDsrtsHyzyck12C3GRSqaN6Vxk+2CTzl09EBECGNHGQ+mDJjBxLCZF/oYXAqlRnFzM1Lb75mzAxE+Tv40bZPcyQ6eNwM7/hYAk6yPjO2hIZUel8wP7fuU78TYNUtP4/tJtovV7Jhit0yzWl7fZvm3xfJvi2V+Fgs+ZVfxt/MyWLY0sJlYmqy54swkgBP4M7qGan+UHZQJm5+rHZTo6sbF3vdkHum+KpI62zr7ntrWFMMLOVH0NruqmTwGiRim4IHlZz/s/EB3g22M0JWRiAt/Dm/6neCGPyypeI1ma+cDreuC1o34hHgz8b2/gLBxgtxHKza2kFyNpKRICYzQ+NlxUwE7jQCWpefD+Qa5BCtLtZT2f6a1jnoYGQVEnjFw8duuP7oN2IEOLCcmF/9q8QMA/zfw9wb83oDfgFbBlDpISn2nXXmb+OFqkVXX14Ga2bsKZocEm5WtwYf8NyyXxSrboP8rQbwxER72r1aw74+VtXU7vB9fAG8Feq2W/7om8cPfvwY/7K/P9yXwrLswyw4w5UdIReUe5uCKmCJSfA2r5dX1HEyLFgutSABXZ1oUGKj6DhZ3pfwjAn23ssYHqlTXcwc6qZ+e72OpsOYuDlXNX61zOG/Tad9G8FZSXZ8vaVVS8/5y0pfblV7FuW8XIU4blqbhyl+rUxH/nBRjDfFmJc3FbsJ+x8koxKIzsj3o9adstwB6uUmUSRgvbUcBMOrOLOrn54U/Q38AjlGqGUmDcusasAKTvdRuEw1ddOORv9QN/D6Lxte9MIowkl40EgpGReDolhAAFgDiEV9o+ncD1vOHGPh1Px6y//qf/0tY5qiBDceglQX9CAiykOd5LPFoDEPmsTACEwaWj5Ie8J4V8R3ijSp02wfI8H+HXQdA8QGL78IIIUGH+A6QCuAE4MM2fOpGz1/YuA8LPhwNOuM2dntmt0HfSyZdGj7DBKVon9MfBKd8kmSy0qqDkbwkHuZklgpj3eiQzxsVIJJxO+bB9JqflB7dDkbtu1rtnGOws5FKh2ZF9xIp+ophQgztFeOOhzmADJ8MhyHIAktni5cGzPGxT0RZ27Ab6PsYOngX+B2X1CwVVtEFWmAy+oMWh86U/ISrHPRjK/kxE/uhR3xocR5GdIclXEVFqxgrt/1W2YcezU3Z1C+GxNobOp5tPbxijnSYmAlEg3hKjluHvzIZEwRb1O0GovZvexzFA2lPzBsZk9w084W+cCwkKfRb88OUMpv5EtmjkRFCkcYRPhUpoSfJKbsblgYHSYOKtUFLf0+SQJJaMLUBEkV3iiJXKQKSxzBv+bGgrJQmLeltMDETfXwJUK6SKHgneVIFVnDQjp0/HZboAFLEj6Y9w8d0iUcLxLXrT4jN5yLMcjDE3Y8ct9Sh1ECi2X1jj6v6uv9LwAdg8FMpObiGt8NiwKQtL4tBs+3UNYCaHZbtl8QjJFvwJV2RQKZ3TGEplkBrTOEpsJz0b0v8q73W9+NarT3u+LXabRDvjEejoB/vXOzWuUXkuK5x/AH+KzGAo7Afgq7Ihs8o34kJDPrdZzYSig17vPNjXQ2gZynzRuTk18Z+a7dSQZXk4rDpnB+fYoXOX86brTPQgr1W/ahZZMoZ1yuBKuD8kDCJH4rsbZpl6Eb78LlWA/XX+aH+g1tMflOUkv4UieAHl3Sn/x/MWliM')).decode("utf-8")
_mod = load_inline(
name="mxfp4_gemm_submission",
cpp_sources=[""],
cuda_sources=[CUDA_SRC],
verbose=False,
extra_cflags=["-Ofast", "-ffast-math", "-march=native", "-funroll-loops", "-fomit-frame-pointer"],
extra_cuda_cflags=[
"-std=c++20", "-Ofast", "-ffast-math", "-ffp-contract=fast", "-DGEMM6_SWIZZLE=0",
"-U__HIP_NO_HALF_OPERATORS__", "-U__HIP_NO_HALF_CONVERSIONS__",
],
)
_quant_gemm = _mod.quant_gemm
def custom_kernel(data: input_t) -> output_t:
A, _, _, B_shuffle, B_scale_sh = data
return _quant_gemm(A, B_shuffle.view(torch.uint8), B_scale_sh.view(torch.uint8))Source code from GPU Mode and the KernelBot dataset · June 9 Researcher Reciprocity License v1.0
Changes from previous submission
Against this author's previous submission submission 706161.
⋯ 5 unchanged linesfrom torch.utils.cpp_extension import load_inlinefrom task import input_t, output_t- CUDA_SRC = zlib.decompress(base64.b64decode(b'eNrtvdtSI0myKPrOV8T0WNVkghCSoGhGAtokEFUYIGguU92LxU5LpARy0K2VKS5dU8fO0zY7r9uO2f6C8yX7T9aXHHePS0ZkRkqiSnTVzJqy7iqQIjw8Ijz8Fh7ufw777e64E7DNeDBq360ET3HQj8JBv3i3vfBn9WX9POivtMcdf2XnYre+M+jH0BCbrKywrTn+QXg34yjolL37YNQPusV2m/3X//3/srOge7PchnH9sB90eBv229jvx+Hvfgz4siX2vnl0xHg3gIOgzh8Hy8M7PwrYMBhFYQRzi0WLKn7P2Al9W2bOzwjLrTJWZ9H4OgpiNrhhO+f1iMGoD8EoZo298jp8+1//83+xo1/2TtZY3fsNRm1uHJU4LMufuhe1/W5QYI+jMA77tywesHG/7bfvAP1O8BC2A9YLeoPRc5E14VN2OxqMh7ngovC273cj5uN8luOwG3g9Fj332+ym69+yh9Bnfjzohe16p1PUJ1hhDq4Ozo/VDw/5xEbjPockV+YsHgV+r8EX8jGM79hgiGvrd3MxOliOht0wxrmJGQBo9uiHccRgU25gt5ZvR3zTFKJRLribwYjFdwEs82jwGLEwZv0g6ERFsZ+nwS2iOkJgd/4wiMQunuEv8O8RwmhxxPCvBnzQwN8b8OvHI/YRfj7wzk4O98/PeM+yGHgN/6psbJQYe1euwOfrjK2viV+w1RpvV+bdKuK3depWhkY/ltc38rv9yLut8t9Wqfta6a/roiV+MGG0Nb2bhuSUbu/4b+v0KeFXKa1tTO1Gc2KVd/TvaunHCiu/W12nbuXKRk63uTKBhddgK+Ui22/tHF7sNs/mj3DCKe/C4Qr878HhisNeYLJR+eX1TXfgx+V1+7fAWr1Be5j7pflFO4o7YT/OfDTQPxn3B6MOnhuv5w/1L26AG/Ejrn/KWdK2Pq/2/coYGE4YP6904udh4D0EbRAZxbuhAU9r5vc63vX45iYYeX6nMwqiCJlEfvtgo1fiX7/K/leK7Ki+c3r8Krt/0+8EN2y3+bf9naa33zrcbzUX/gwfAd8zP2Wex9m+58GPwO7aQdjvQjPPW/hz0O+ENwm4D/sn3s6H5s6BAqU+cYKn4chlnQH7xGb7858L+DdQUHM0Goy8mHkB22IcTo29CEh4wxzo/actBHc2brdha13GXgYE/wxHQLg3zg8wLRYgWuxNhzlvAJgfszdR9U3nP/s/FCbDEH88kLGAzfsgpvmBJANiAyzdAizz3v5h0/PwJ9wCzxMT/s+Fz+zxDoQoc0quWv3XoL3VIvtQP939WD9tsp3j1tl5vXV+xt6y819PmiCP9+tnr8GUAOAy/GFHe0d1FvajeDSms44aTRSDuhMx528efuvtrVa88voT/lfZ8PY29tb31lzqvQAt47DN+yC1AKSYQHpHfOm3QOrhgqK+hYt5xDrA+EiJnNC5Ze/cmta5vrPjNQ+bR2fUeY12EjrX2+1xb9wF7WfEgm4AIGB2oNqwrt8P7JBaF0fewfvT44uTMx3SwTLpYLx3eumSRa0f7bKd3Vad+aA2hzEww/Eo0FY2f+2ACk68s/3/aDK5BOtrxgmEIT76D8HNCNRdUPl+z8EfFJnz5knSbQvFc82Eg2qqsRw0oftlADOcBNVr/HrePONQxTjAQeUSgfJw/RwHQD4VGgEB4weuHeTPF0DuHq20QHS1kp5wU0cSVWpGirPQh61gz3bqh80z76R5yhHUMNVGrBH4NTuIRss7u2gYS7iexqwBqiZIMcAF7ALSuUE17sR3+UT1y87uWQJxw+SuABG+J+X4aH/13btf8uHsXJxpmIFCltrcnQsdzAKHzA4rrDuAtQORynoDkLGoU2v20pJuJgX9cY+1u34UsV/anSNsXqXxPxGD3QNboVHfOeAYlAr8qHm/rQi7Bpom5gxXGgqsP0Ac0HLoCduMYJ02dy9au7AvfJ05rBMwYxBpAaI9GIZBVGB+t8tXiTCmX8EaqxOck/rp+f75/nGruYurwuGcAbcHdBIwgAfCvWWDx37ErnseERL87uAORmA2bW2pzXIJcOPweOfAq5+d7b9vIY0WJiB475HZs+zfgFzGlb6GNb9nsI5goSEhL3yu0Y7sYD/odgfKV78dVBlMx+mj/dwbDkZ+14WDM4RucJgOYU3A/upEDE5+D9Zw5UPjCGFc4N7hLtLO1WF7sVE04KuzjKYlmG+s48c+CyOCwUEA4stECwAsS2b+GIxROCY7xx+ap83WThMmzRt5bT+KQTWrVuu9ToNUuB05gyZQzLZTcWsJK/wbaYIMtULYqtDHyRD7G6PGx8ZAT6uVpzUAz39E5cPzYxDR1+MYFB/HQY2X65MeQnHWXBcG4N157w0kGtl7WvcNrfv1DQg17LQFvfAXNrV7Revut9s4II5OOjub3p2QJ6okZusnkilZsjMSKGM0ZLmKTJuKEwS9JYJtAhqJQT8aPIQdbPPMdg6EPOYEAbZx5ynoLw2gc7/KUMEGFK/R1l+CXRxBt8WHENTIJ/j9AVqhRwO+4T8taFoobrPYIQ+/6HYfeh7o7rftvsflntTiEUXvYS1crThGJzaKRu0CsQ0+pPiZj1VYmFUxxE4CQQ6BDt1w0A3bz/yIwspHPecHRLHIUSxyFIscxSKiWCQUfxAU2hiH3Q6LkvU+O92tihVC9rX78fh0t3xZ+Wu1vH4FzGvc80ZBG6ylSH1bWTBVeHPyPf8+SC0U2DqDMWj2DiFNJ45If8OLF9kwHvHZcRz4z9qw7gLnvcjVYn8U86O8c/AXONn+I6LPHN51qwTabXwHR3/ox+07OaklHRrHABDmx/hUYLYp0NkGbhHVqBH8UBR2Gm1va9y7Dkabpe1Pn10gLZoFZwxyKtsOzMVNeo/8/m2g961QXzw7GkZJewB5E97qHVZ5hy2Yrte42NsD0X7aPDu+OIXFXz3d9Wg7anJ5Tgb3gZj0ZXm1WrrCpRyIHWXXYRyJbZUdxDfjISoZwAmwCehvAfs9GA2Ys7axDJ+w9ycX7G/AZQPQwSIOZn21urZxBaIOxaibP+GyWKwJX/6DOWL7QP8vPa3u7e25bHMT0FErCXTalwuEfrnawufXMUvWiuzifP9w//xXtnfR2kGh+jpmyIkPwjF+HHAeulphD353jDwM92sAhi3n0szhk4dT6kdCWLipwzfuo4gNiFcC3bfviak7nDn7BcGlr12mTpHRA5Z13I2NlQaxADwiDvse7DVRuKN3KSgR8kmXjlyYbDs+nEHb59fuZ1dRKnGtB6/9EHtDjrB3A6vwBjSqNyD131R+ALXrh62HHxyOn4u/wm8IHP+9dhNYCX3QRD4nQuWjH8btflwl9yspDNEwaIc3IE4+fARlIcAlhwXvoD+WC5MFsjVEa1SzDkF1dQ7fHxy5oMEFI1LfqFN70Bt2gzhIbcfDIOzQeF63Ezly1ZMllYLEe+TIOaWndunHGyEgu7f3PfrQFfMwcPnbUfOIOVy0Cu3yxVg9QL/Z0Frd+7Ek0HowkaLFbfijURiMoiq5se/ANgPDDLgv19jQWR6iN/1xMLrnqmayvuqjaw4D+LcGAmf6KM09EjroACd90rVNi77xBKhJU1NNaunFxU0eDCMhPEQ721iIp7GxyU5zekwhoziVGor2MIINDGYdztgxbQ/zB5RbdAimvk4fagcaI1AL8HRyvsMl6k04gg98MOsfAvISMDj2IeDcE610Cya9E5yV+B0Cgp0d0ngk2hnOIjbF7PJgon+GFsa4C/QBpBRr6J+Mgge8ntFdOKOAHLpcRR0NwH4DAgTreQBdF9C4AIUzYJvkbqmfHWxblxsHnIGSjGYILdnnHTh/YE8to6ubBU+wmqwTPoTovmEOmjUjmAj/5Jq8vG4KuTrXfxrbC6b9C308gqfwEkyWA3Xq7A1Y5ltklP5QZ70x7OV1IIcCUxBU5sYPpkitMyAFueQG5u0AkIOllLi/AEns6qT2HbBbAuyWWdnVhzx79IfCcSL4RXmdNI47v4uqBpi4PusAB+lU2eV1qXBdLlxXCterV3TneIm/woer8OFVUdmFwARHgxhR7ZS3ytxrIgQrfFACiohCohiwF8kegYMfdEG17uN6SX8VwRNG9IMHR6jnXYOA0inOgW6cFZeeSpXSaqlUKlfZYBxfhldoOY7al5/KhVJhtVD5DB9duUXLmcHZexGsg9cp05EBlXbaoUFsHGhXYPRXMro6Pof+6DYAAhgOHuH0wDJW2CbonKndAs0ATDRoU6GR+3JcQgNdEpxYhEd4xBYFGBe+XdxiFVM9ezWl7F2R7PY6OYtBO2uy0+ZR/eRkv/X+FYZDkLvBMqxBMBIa78n+LtAbOj16/nCIxwJIJ8CrXfKoBKgzI+HE4e14MI6E6wNWnTwrkpLaAQKCU6o8YlvU37nzR51HVLrVmDAE6Dm4WUF7TOwYekbIkzugHCK8TojGC/JA9AoV2TnyOnl1xZA9jtAkju980H5wlCeOJ2GEAC4jNKW8J9LV8Ac4oO3BuA8/wdCP6NvgjckcaA+6415/uef/HajdEdfsNyA/gMjcIr+IRu2ryu/RB1xkRz5wEhw8uvMFOK8vNV08wQ3uohkFYEWgnD+sFBdSnAb3+8w74vyG/9Ky8u5RAJvjPbU73LEVdIimacywww3wt/zXnv5LX1qX5tE4Pz6vH8IGieGB9MXYNUvjRv2siTYa77SiNtjWFkiXJW3faG3V0YM5UBOJu9FKNuJeLK3RShqU9KuWikUYdLmMBMAcxHUJuDDtbY23gK+LxR/pe5qKIFvp7gW7rX0Hn6CmR/b3FqK4SE2XWC/sO/BrAaG4Cj2tIaydrWkyFTxUwLe3RKclPjcxC0FrW7LVG7klteTrfvL1SvL1a3Gja2JH7Oh4F7jRaX3/HOwDDD6R7mLpnnkd1tTst/1hhN4zPJqgKaNHe1mZNd3BLfwN7AnPH3dps+tB5xnX9hksSK7PyegRCvEBXhJxd4mDsIBgCuVChWKMDAfwmHxsGMXy2Gf30TIIjyH6We5cEXNSLrKzu8G42+GaF4a9iHik4CdG5/12DKwOqJVt0jZ5O8cXrXMRP1JkH+9CQAJ39Ke0Iww7C0p3JJAC6z3jeXdFJIkEoIJqfrIDUDRC9yQY+aL0XFesC7mVk2WRyxzJmXaCNvzq3QY9VMyB9CLmcD08QavAyRg+cWl0R/IeTrLKY05d5Cl2dfYnCQopTed/JjMsyEsqiuHxdOdictVElyfnda+Qvn6iT7cXuFKDNx7nI4pUUr4Cfl9q0BgxNLSYpUqeVUbpcPxpS16hVKv6HcU//qHYqnblYPOK/qB3GwW/jcNRIGSYeV8h9dopWBj0DGioVUO1ZiIiRk+Fieyvd/8yVCxjOhnZAz8pjF1DkQCtfx5A1M+gqE9dhipo2jEQOBr4OhxpeZQY6AryUxA/oH/7JKmPj8kOMSiMO2PFbVKVgvlIN1J3ZAWDGbnsIeJaRSdNgpq8vR4MugxPOYACXnPyK9tSk+I7sqXtSHIdB5SR+dYYPYV8HhvFO70KKEPdZ3cClvIsc244EUXtOLjsp8w5ZtXUcRd4mtqSQACHlazUURoFcSOySwQ7kzaBCHNJ0M5iJ+9GXWkSSBg1BSHogqInvpXj8W8/T0FVcn8dbY6pkAKz46mvokHkAjEOEM5JZn2X1NDmlGxQzJafTYrh8aR4cLgoAch0j05KrC5wErqxrgydJ10a6VunL0+BGVu8MHtwUq7i/HIgusRLAKHY0zbPPBicxXBDJFcbn2HPTebxyUDdNiLtzZYxvMY3axP685EommULhH4Cbclgr27GTtClNnbwQlAFULOV5KhBXkqdHvknWWHomABZ0Sdi9lD2AzN6vJnSo2eaHpntMHRzzZDJNPzMecKnfKQkOcMwORtgzFo1f5PX/AXsIYWXffopk2TyEqzYG1uXgXOTlFm7qZRAaQ07iZFr6phuaowF86fPFJLxKjZSu8j2Ls5AaTtonraah6x++v7iqAnS7ez89GLnfP5XakKB3cPryProViqw/KZZDzBeZB7eRsejsB17HqvXbDfSPIBSb9fwRMzT7O3R71iTMaba+JbWO7ydCc/Sru79NnNLbXxovJimK6M1XTPQOwTegXBdnNBhB8CPUNmZcYB2P07s/Yl/CBW8RIruBt3OrJ3o+Gu9Xo2wO0UhiBm/jWeH9V+PL87PXsnap2ApEXDEHKCjI1ANBm23Sk9t0B0o487ocYpUm7kaLd67cO2U3zjxZp3gxh938T6PLNPDSoErJDyMipr0Y6fCv+XRWBSLdRfG5KLjuF2IMDcNu10KoeE4yq/dqvbMpSCfxzBBPwXudAxGEtsjYT2oILrroO3Dqa5qREpPYMS7HpbcpBDmgzHgWEb9CKmfQCpi5U9nGN0O0TppffFqTuIGVsW4HWRckaRVH5/sN8+4NnVS391t7kpz/EBZ0camfcpX+ilc02t5HA5qC84ByIfVCoj3H1E/2HBB6m8YJx73/TJB5OpSIgEtqXfFvUp3IALJ62QiccWPzovmXVDhmWe/tna8vcP6e9FQtEi5KJL2cHA8EmJq6VI0Na/Fs0OQ2CIMHisM3TC6eHCDerS4+qZLHxGGi9SnOBL5tryEKo0VNpcD11kf7Sq7p7Z9NINb6XILjUn0lKs4VDQTrPs9YY9ngMaDRtTJuVSejkWGEFtXNRVPDQs09Edx6HdZNO5FlpOUeIWJT4MwuDS2X5upCDAlYwjvVx8AquAQOuBXY/DrRW717f9HHVXAKn/jmLxw5K8b+Yq+lodXvhmUzlNypcJG0gNAjPoV7wp5qAW7AzGA9glGDa1WlkVwO0IyXoOS+ljF94fAAv3raLnnP9HEktjygnzZGSXTxkk/hD6CU/dUGLVDHW5WKxi+czNcoxAe/qgTUMEoJCAv7BsPlKjigioeLFDItAqXxldOUrtiXf8ZOLgUMfUb3He0hmVYCQYXRyA15LtPTShEAy7F+BNVv4/Bom1g+EUuSLsYR0DBwNEQ+ABdicvHlWQz7Heeik9skwnnCTfgi+pqfBwHy3ReaFWrPDwVl6mgNgonC3MucGErXsOKmRbV1q4ti43jITBy+7iz4fD4+OSM/UYIReiXHg0AcQy76lNI7GDoFhBSxKPEEM/2AC/7dGfFmfJdmOCQhQEuXcJldwCDto7PuXTG0ChaUvL7t/lqSdRUFApMR3tNmwqqMMRB48g7Pf54lnZOa+5njhrFvad80mf0AMR6ycd5bptvBw8mVSr/W2AYqGFwb1GnoLuNjEu+ifaAel2AwIr12RVzo9tL9fSko1DbLTeHB3J1tCcQXOTZ7hl/Jm8Bv+RAKsHW+SRig6BJDTUeCFnZ3yJm7fhq9yxbySQyxrzFi6J3xdEFUZEnJg3bBiR9zcOBpCGvpNdqMqjGkVqNNHzDQ2S5BMgM/SazTRS/Y/W8H1mnbY/zyd9o3fG+G+BBGkSBuhmjeyr5NETdUMnrqT7/1dVOErkb5VMSsSq2a7bGUS3VS4K87pm93kzsJTBi5lgEJXOrlzcih2D0fZPtm56kHwUeCGDukZIzXpQkWbM152EgW6mBF7PklupMoXfUr8PestU0bD40/3p7m96gwWaWisX1VdPJLDI5VNl+FI15WCW38MZD/pIOQ41BdnT9IfsA9IW8vN9+TlzOUmLxifC+5fUGc267g2u/y58/UHjW05pbZA3QJWEkisCDsTSqk9A4iOvgBsWj339mgpOD4hBQ+MHNWEa5DsNhgK+AJYZFcZ7ITPi5QRh94pFKg8eaII7b0bCWPKm5u1wDzfIzXz/R5bfrSw2vK7H2fx6O/Nuez7i4XZB5F/i1CK51qYb/bhosEz5ZWsp4rvXLk77Xjn3ozXdsCUEYlwqa4zfpC8pMLEiHiQcs4tclA27SF+bUHV4VFXVKUl3SYa3k8kwNBK0ggLhXtGrhOEvM0eC+sTRxDbe8o+G3yY6s3nexf/RaZ8vEZpHbdHQolKSRfxZHAQVNDUeBeIoBv64tbssx71ztPi2/k8IBu76tX2oYwxLA6By1K21in23XOiK1SFUqjFLPTlREqRuqMzZv0pNUkEzBRmRyo/WVFmdB7lrOdqnT5by987ie78I5S2DdaXCkRcfNAbEYVdbuBj7XN/mDE7BprgfxHT0rICWVeEohDYaCpblFyZ1UD2h8AERvDP2cDR6ciTfD+JKFmIxrxx0wKQHGcgKXpSt6evLj3t4e/j+u5XYr693KM3er6N0qM3db1butTu7GXxZGd4NRjKOpBxv0yWwP/Ex4HFKvVOYPBUUIqjAvH0NgMrD0zkLW75t9PMJhFWjdKf/AxCblXFwqq3PFpTIdl9VcXFDETUIGFq6AGLvZ7S2v8+3FdhS6Bq0BHJBhgeACYbmpU6Sogsh9FXfYkZ+5AlQOHfWD8PbuejAyumRiinuDB68zHGbXkFxhYlSMNW6U8e898dcNGOFBaooJinxmoqvEI9V6zuitNb8ePYt8UquJLg9iWsRlJSx6rlbLkWv05xpfAXc8MCjIjkKsHcdR0JYA30oJ/4xd0upWXTrtcM7dWg4+6O0TThVln4nPXQy1rLxbK9AcSwV9+GVWca0w1XNe4dkUhqnnIVCwYTxq4CS7xFvA3InK7dTHmRfegHdImBmtzC8zm57nZ8pSgQaokCvf5as1lPEa63cL+oSBcNzvDslyBsny94dkJYNk5ftDcjWDZIZ0s/AkMZNy6P12yfVC4aYn7ZArqqB2KEV17QqfvWqIpkZBFYuaosVvizNI+EcHdRUcE/jCu5q9CQppR7RZQ9ZRrk2CWBEQoV0exFWyA3BiAHJ1IjRMZOCothU+vNnknYL21gZMXlrAVGFhdc8Tqv+4xoDPIqVgW0Jgi5hxZQnnASuNP6zR4xT4oUxPb5K77wnBD+Ta3euCRCd7dYjpjkCH0h7o8XdxMppZPNcTflJ0v6qLzWK+s5I3d156EV9QlyaxjNeyXYNjWx44bHvFMP2KS7ipkmeG6lXt8XEDhEd0D0tSpTf2/F44eba+BYqAyGiwBTiq9wLw89ZWiXxJYX/5ejDGCwf8TVzYBk/4qAUfH0DL//p//r8yfYnD4b/qkqEzGgyTRwitAbumdwiUTQVBAHL9cIiB8OGgX2CdAI5sD28HKC4O36sWkzUfxqhfvNUu6+TC5VzNUSqQiPgUPlinlAb4JjWT0MBmgIo8AAmXRhB6FomR/6gSwdGiYD44D9NIwJpGIwoIx4gvbacKGE9acl/tWcOPRX57Qu+rGse7v8IxFMkvl+St22u9aTjBixrK+IKHajCOwXbm8ZCpoHnXzMFp5NoUsABpPw5un0Wk/jKrV9nqchT7t0HiU3KQ1mEPbz2evRR/6nYi8Rv+dANWuVeHVe8MxtfdYJnvFphTh7tnEnKjqvKDcoDUqcE6IZyQ2NKXf68QE08TqyzBRgol4AdDvWfYZ397f3IaqaGzfRsz9KXFlouAb3nhbCfo0FssIOSbIKbIi4p8AHaHt1UO8UWxWjxuBPMEKYSoNzr4JvTEBZDLo8ZdkZOZcWz5SKM5DLuD23EgZqBuqEGglqtiFH6PKSgKk8HiQ2+gkH6Efu9Ux22GHbMX2jiuClfp4qNp9NRzRwS9ucdB0kETjSPK6iVuw1r6Lwfwy7tyJf1S4+MRz95EP7fo51SLI55yisInkh8PWOrOQL9yowu2NBjMNicCVMvr6W9P9k+a3m7z5PwDomC9hcNIY4oM9fBpkf0aThNfKnJYPX3RXPle6qbOlGSTQuzknVvqxk5evc0e0mf0f2mgn7zAS2OhqSCzBgumYLwwhNDUCwSMnZfG85m9Xx7lZ8FBj/2bVfvR+6eDE1OG9bQQQgOMFiKoO26/5o+Eg6dqGQX2cidAVRLf5qrkh3MdLJ07Uqad5GumTncqhykm/F3He/7Vih1Kyw7F3vggybQIur/GUZCl4NsUVDWrPI9jKuviBIBeQ44uBpApFtUURGQJ5QywA6rv7CTTsGG2BnhJZ012EQ7en54ki6DQMPInYqIgXMnK3InIzMHwB1APBrtg+s0zMeWPeM380frKGZuefzht1nd5ptEka+diAib/7jy5NgfRuMLJdgXGq2m7eySkPt4BgBEwzAXWSoC1ODD8B/DWgLWmA2scJGk9CdhBiuJSNxg8VQUCbBxYIx6QWs6YAU4SkY7aAaUb5ZAQSQssUFS8vzV38tJwaoe6wpN0oWYjMgM5hKdrm7CRy3RLpvtc1E4gP7DaTCnLJ6VHtcGjl2sKnlyBRWOkmkgbmgCle9775Zy5H3gf6od7ZpRLpWab/OngUctcB1zmqZLLG2CiHNuz89N9fPORTiCaJDiVqyI3AZef/DsLeakCvAMeyiiwbRzYI2J4GxU/YvRMImKs4T+IS11lyaVTtKgI2DZa3Ts8ru8mo2kAVpijn2Y1UdcetnLE3iAnpVjSj0cud1nZXrnCYeQtW8RFprUU65zf6AAaKSac20yb2Ju8ieX3NjfhjWFHYCqdA3uIjWy22DjQY2rOSJHjUYwpBm7uDjpSuNnj3et0rgsaSzfq4vW9od9BQ0sEZRnApgZmcfea9ppMeswSuIsyITG3qPF84bFdrSyj15Bu/nMBn9T3TxOqkxwhdYLVUg39cMQjfCdxQ4HyxZ539h8CsDbY/JW5cx6hGaIWF8bP8xfA/GkmD3hIIpl6FFGUVnP76WZ9bNbKxjd1krgowp8iWmuW6CIvlBlGMOBKCfJ0U5SasqmZqCum+C7V0bX2FJFdEsqKqVck7fpmuzeWdoQ0hTZsqQkQaziytrzn0Q2y5YpoOW8qkVHu3An6mmqa4Da6oOX8yioCqIvvSQsb0JN0ob2UXDSBZiLYZuiuUNC0gDQczlgMWLlwBK/IAyFPAWd6WcB0G7OYlvPJtl+IZHYOOnKXJXN2ZYZdirupJ36siDn3xgbTcwnlHxeHN8RYc0wER442me038WJjlLXQUP7P/xbfpyMoEQHPzxwyYwfd+ZPvGc+fwPNIsrd6XuZo3mOhdup3HzEHTdor6mAuP1r8k90tzEwk80QAe4GF/B2WMkcdAnmACpejuaw2kQZ+YhWw8ZJPayKNH08Y4Xnq9hw9vf6lBHV1mWgSV8lySz8jDlnFx/ZdWjbKkEVJqTE/NSqg2rNimkXQj7ACQnwXSFCRseI3g0FMBT+QiIAWUbPA6PsRfP1Aib5BhbjDpLn4aoHXeVL5U/GJHX/YgU8r8LkDENntLT6XoKjKsEvpNDrBLWaYHN/y7KcDMCt5naiiZU2bJ/uHx+8xLYv20j7FZNONW6pxizduTWisNG/Vmd/areXuUECLT855UE0ulZ15damQXTShazunlcCIqtwJtkbrQIU9mLOm6mG4Ik0ufHpDLpKn1QpzRDQaNVhIgqwwA3rvhhKo85CJKcFV3CmhIqxUd/jhUqzzlfihdVVLpZwEWgHW47zFxqUrChEqFeTFEHzovgJjEK/v5B0X0HzUHoVDXEbmnJ3uCtNynqzIyEYeyXTkW9wS1PipCBiOZGJ3YSousnRqd3V6u3jNQdmyQH9YFO2BKuIQWCveQuLNI14NlJ42SvwP5q/j8Iy7QM/3SDhQ3E9+ivO691uBScR5vB7+cc2LRe96JmDKHT0LSF/F7Ey+s7RmLhcuazgJ9NIgi+5MsD28oPPEA2NPZPy2DSe8269BvlyGV/E6SZBLh15GU7hFUnhLNDci3cXLLC7+pQENchuj3vmRjorGuwlKiD2QMDACA8OzUUsvAO8e9+9dkUsRlVeeLzSiJ2dHy6qsD30HXFxCoX5GYxyep2CUeVKl1ldkvxyfsugx/P13/p5NF7jXfv8e9ZybbtiOuVD1MQ1liOlQH/xRSKVEeLJcOdkwltmCJSTxAJvhOweK8caGCMOXxyjACF56NvfhonUAIrT4yh5LOQ53sgmteEUa+zbHty0TozGfLcO/uWIMU0sDMj0IJqA3Joa5D3r0fYvCHjCjm1BIdJVfLB8ywVWOB13r10hQWHjWyaRjq/ljkrUMOE6MyXubTmqC+eAwtigLbtDV74cE+MWcrZPgBO2jZ0/q4s77I5lvUof/BNJbh6+vxlvuHFJbg1l4yJmPW3EfPGNUpjgVWcCogSRmuAl4MeVIThDnpzCSWE/MmLTEHLke/4PPxNUWZv5Cnls6wnbl60lX3RgsUFCRDSgZo3RtlrnL/z2ldOGFTZUH0fFsDfBZY5kTAGjJQ7/fRx2sIpyHW6CjySpUSbTQtSfUgWtk1QEl3A5GoAnH1aRmFWewvJaMI1wFb1Yr7kp5vZgxhqEXp930ndIq2RtO4pTAS6aqclhYzGr0Tdhup1KQVuiDauLQqFmRoixJOaA0WIjVW8w6VcUHJfRgDG+wyhmY1AWt6S1t1oknfEnOwGJnp0Epv9WWdGEtSYfPYtpm4Dc23LvoR4HNQL4Wq2YaydemkZwcvZTtjpR9BpT9CtoGHnJEKkfjkCcMDQt6Med7GFaIHCWlgnD2JbgL8U/pxMLfKbxTAkNdWNjTUgjTOxpehhBOhasOw4lCijRgxarQbkQk7yNigAJyjd0NYnpojiL+7+j6BpUpKr6SC5QscGKmnOYc4TlcTFmgIrAWW7oZp1cCCNYPAV0KT9JVEn4nRDZswmapID1NBYYlaJzLt1cOKbrefZSfiu4eM9Ch+U9GHTatVimXdRJoqsmSJL5WEytEA/TUCdgWrj8wN2yGu+bmDEsSIcKc7x5ewmnX0l7D0HnoVlpZt5h5UpmyC3qAD64Rx1CRllUyqk7m0t5HV3TncI8Z8dLILSXsygUpJoYy5BgF376GN4vMk9dwxeryKeHseDxKy6tl5lD+X8xzQRk6gAdF4hKob8h9LLyDMY4KgMw+0akkJT6JKhIftmxyz0twFpP7CVL20bmBeMhk6xp2PC46gYQR0yKvu3qNq2aCsjKpwcAtDuLFgJqo42egJW2Te89Ey7ZMoq4CLlUB1IdU8DkmsngMcGGE5JNfuEWrF1i1mSQ9FYwJglgDxzlPCr5t/QTRcpuYmvMHuRwAchHxApOkncuWt7XKkXo1DNlECPnFzJWcOCbzPyWyXrxQ5CJyOIrMgqgIxUCGiRE5Nxlpi8G1xZOqKFGsIcWDQlPhrAvJ66KnNQrcrV8K2/Uqr2ozFTBSAb+IB9VBJIhSgPCKijzsV4kP5Z7LVCxNYoRFdKkZoa8F815q3uklVk5gXuqXmjwpUzoQWG2/HmpsjaZVy2WskzmvhobKVXqOrauafdFEUHPeLBsTZ9maOMuGnKWc5lfHkyudTJEZp7qyHmRNNG9Qn9XIkcCEKbElb3yWUtbfErtfNA11p62HcXERoEwmWXpyS1jD0D1OlDKHf6gpklgCNYqZDtKd63oRO9NWh3My+vSeR/m285UivKMKez1dM1KdhHqUUdfsKpk4xFmVbHK63ntTKcvqZJJiZ9hGwNTYyIlpYzF+5QhTultfb+HzLjHi9ha+ohe//GNL8zPnvVBSHOTy/ko4XOXj5E3J+rZtr51nqlRqdUIk7u2CusSU9Cn2uCDuKe15n/WKf4DitqPX0TVel8sqgJp0e7VzD4qI9raD7tYSWUNvSTQ3XGKGKWePdg5rZCwp96i0K/H+VzuaxfkfzWQCLzqZsPETT+UbdYX6JacynHwqQ+NUhvZTaXbBKXJFKkyfQysHmfRU84nyePDbXViHq0ttS5fkSFe8Likes/Dq25DnalVXJJA+dR1Idet25bUF0dqgz+vCJ7RZTdnRSyzuiR8yxtv8CVSbwjeg0NlM+S8y5+0DqvzbqQHjXu4z3iS5vCEpsYt1UFtHcTjinvSI5B0KKfB80WN20sjCwZm9Jaa5JXVjaHcZ9yxtJx9GfLgFQPIea+eeWzqoKUH5RwkT0k6zz/Oy+qOTMlJeVUFTF7EvOGr38aSTVsvpFfETCp3fGEE2S4Z7KHtCtNDMzCnBeM/JB5MiQvVTQl1mkCCR0kWd+5ge6Cexp/iEnA+d47j+5uedUrv1ZAospaRmHaJ4gl0jMCcNBp8X+2nFUeQw2Lbrf9gUFEdDXcRLSXyqvLlWYLo2lwMiUSP5Q9T8RqbrZUlu3LTbMU3lZm/fqsVC/Zr9pIdvVEEnnza88tw4Ag5SiB5pmM6RYjEB0v6nTws53gd+tSUStXKfb1TFpA3oFxZPInjBXcrxW1ouv+NprJZXy8IRZoGqlw4lTyHVO0U4lAyXlzUVlwTkeTTKn9rB8mQSRD2JL20lqcWeLU+RODoiYtkgGy7xpKHlQpB+MmucEnGiZ45+yEIVlTDMpXbUmyEsWVXhBa+ABj5SCbHyhKWnzBhwDN+yMnOS+LyCSG7bIdufLxWy9f6AIaJ09yicKC+b8uRZTUKTPxuk4pmjcZ9cByIofDCSAdWIIuHnxzwBMTabupEqtlxfxiWWw1msuUNeaa+/hVxviPAg3btlSHTNr6aSIGQe87uW0DX+XTVxNdCFZjoaOBWyluTN6C+KBzEYW0PPMFDuc1iY2g4jk7CorGwng9mwFbdGCxIWPU5HJ2fb9qCQwgexTBmgdBPyEuvlCr0iw3E84bEqvpIWI9b8D1BgrjUFJh0O/F1ZE62sdtGfQbvom9pFP1+7MC9nVDiEJC+kfypoTFJIXu8gachwCauioeIstpLr/iVEi9/qU7SADFJYFBEb0ywdgMntFtLhjAeGS4wuHY2nhdNNlsblNTErMlz6X2q4zOqE+1pHnNSiroUzTi5xQY/NWBKrJFxy15gZ5tsYSY2MkdT4Hoykxr+NpG9hJL06GyMjiTOaOWvnVc7/sBdPPYShZtGkODMLJPmSSL4YRSL0R3QCOgOARXHFBcFfldafr4nf9kt68JSTiZ5CZusa7y7sYFAJRmBLuUxYsx1LLzMdp5uP244WQV7Itf9eVFBysknXL81izmlzLv8LzLn8wjmrED8Uzz/xVSBVvVSbZFJcp/o5OLQZYogflbSP8u2JhmlP9A174tpiTwhr4oUWlsY3ZjtQMxyTfwGKmdnxkWy/itHLrtpEw3HSRr9om7+FlnNiXNtUZQpDr3fT80nROR33uegQwZjPy+oxZTB/NccY/kUqTjT9zmWCDmOzrSaB+j5MLpveBH0xIcGEhuQS8kRq04gztkVVbIOy/1SVoQTN7vzuzcL34Unm7iT+mllo59LZdf2cnDTDh1QAomoHw9gG7BGznjaOVujWKYwYvdfFgMCPR1tbZeZoLraC9gS2OGVG6DDyuOdta7qHz8pYQPjwcXlc+5QB+Zb6trRQedAVFSxp6NpbVxXJWPD4Sn35q3TmL1aNxWNV8vIBw7albEYOxBm7h0mbSZN+Wl/zbjZu1m/WnImiyrxPLFiN9YKOwGTJt1aA/ya2EPtfmOTInAVCZ60wSaTliM+J+snLl5qCvJ/KlY1/r7VlrbNqw4zukblrDiACKXFm85fmzgWWlEy9+aibkYkTktEyR8TQFszsqK4WJKr7V1X+Xu7Kzut1lpOEFp9Sp90paRdODszEOSQzuqLiRGUlm3vHp02KMK8v/8YLE2MO7WtKoTEiXYr839BxWdbMUQ9jUeagC73/l1jcluBlSf0vkVHpsiBiymVpqwZ3Q5HtLSFR6BdFzQ/D/vKjHxrZP/AxD2h7UTQ/D7hZJmg04JlrGSZXlosrymLRejjZRaDE13zJZILJ9rNrFOsSkLCus7j202AW1dflJdcYjKpaUnFVkdMKpLotPcTJ6fHh8fuLpsp05sjULZuaqodh+PJzMwkHgdQo1EGxiJ7X25Hf9eTlBNpRBVYCsSiOZZoKZ+yWkrmgmpj4Z51u+Wrz0HS1ZWXtjLMaJuhlpbKRwNjUMV6yBNoY+jObw4o6jFUq0xaAxhePfCBB/todlgDsuh42pFcndKyvg+cBPhMTBKu/P4n4CaOKr0Ke0MkDmiWtUvaRDAJLuT5SRVXb1Dm9bKf2KH9HTk6be83znQ9es7WbokSTSpdYxZ3ZYjYoNwMn14hJE5aO3GQy+wJS+3Jy03+mpyDWjXKE+Hj0I7XBMeaQeVYE5E6w5l5yyL7J7FMl2z4mvN8ol0yCQDFXDOfGN+3pYh2Pd5Sl3pNp/Mml03f0QgPJ7bs64EtaAiy0Kp1MXQb3CitT1c+Pj/Z3vNPmYf2X5q4LxG0mMU6vZUZnjLyoGwRDZ8NSuC6ng5DETuqFniazhJBcUgnsmVPXgxdoGTXBlCgWL2X49RcxfKU3zdD+G0mIqauQotmXrMRssmV7TqJl5gW3iSOiYuiZIbIP4ukx5v8BHewZ9d1YezOmn0dtdnrKepCd6DZIJIoRHIQa+e5Wmet/Mrp4i14JoAzkkaf3bypXqpQ5/8i5Xyq78HFRh7QbkhbMI5n5YzpQ2EFLw8RlUqPlgURGv2PSt6juDOlfJBr5eMB9B9jnKaZELH+JCDG3CJPCpiv4YXGiL41PexldMa/wkCaxRibt+b1JJ7OTPyYvLU/qPJ1Gc0DoLtMvQX26uJmGe+OLcZ/pnOX01Y4a0R4nO6G0WUgtKy5t4Xiavqbp/aljtp09V7uWc7XrvkENDr/k4W1+LxAHyjg12UMlrUmCaBwRvJAY+WEXI6DI9pnpyCRz+Wc9O8kMvv4QTYL1Facp9az06OLsHG/KOQ/U4VaZIg6iji89kzOtSePr1yR90nR6XRLnDhToh3AwjuSJI8r9srOeh0pKyeflzahojXq6BgPT8zd+EIUnIIbjwk/rgmVGNs35HHpUWQfOWZ8PoIlhYUqALOwHj0ldn8jNE+GKo2zlsJTZTo/tMJvrMyvpTocUYaEiqS9vlp5K66XmtpMf82ODiExbjfV9cZ0vPOMzyY10zPZsSJa+bCe1bhkfPCZxtviwKE/FNpWRIvLG8oBE0tPlyL/WJiZJcHkuW1wIvD2K2J3/EGA+i5ACnzkPCWSmXC71M/mEMyemVNrY1o2AeXndeULYi2aVfTzdP2+y44vzk4vzuY5iq70+GMdJgrtUovJWLaeDygWypef+wh7oGlgzq7LnuQvR5BHPY2z1RMlYoXh2nsahioAeglHMq52h2UKF0tDBznXDCPWn27sY3YK33cG13y1mXtTz9wOZF0s5GZxq9v7ZoJy8FGHfye36t7/LpVgmmTDfGnUtCLGW+9TLnIComrSC1edSc3gIJ90Om/N4MKbxEGoJICq1XBj83VtJzkeRkXroOtV7u8ScB0B+jQpeiNmrU0VfvoEvp2FAIZI9DJEs5zcd97GcK+V6j9nwXlT4zalSnHO5e/lgXrVePlDGlAkIWgLUJR5UjR7D1HcuEflFhtt/28e37RPx0dM1mMC2neH9HHApzwsXTEua+/zss+XziVe9dq1Ev3jJsk6jZiRZzbI8pFBz9VwgxXTv1vE5yKG238dU8ZjnSrwsEhWGKTkw2r2U6R0NVio3PPTju79ElMA9yUyTBi0yvmMm3rtw2G4b+d7jOx+zxoxG46FMOYwBahGMjf5tnMbR1lpxgmrCK+MceYfHO/XDnJzwk3q2Uj1b1kBls+fO8aHMEq+VSJKQjGzxdgBUk4SyDfECl+YkFrUBLBXrqT5j7xmNHuiayj0v6pNc/VsQaXwTFwdVnq1/avmDswCJUdLzK8x2aTgP2SNGL4tcDYTIP6cUmjj4W36wLtUc9cMo0lHwZLOVbyq+XjKJ8utNYi5yz/gAw1yMaxf7MWqJCl5p5osPZWoT+502j3heY7PjG4ox3KYiej+xcjZUM1WF0wOTTRv/SI2PVTu/dyuklfekazrvn+ny2xKIDVab4MFDXrhtBlEhFjmDZi+cTVT0zAxPvXAGUTFo+12RuzMxdDG0thdSccX8rjA7kRldt6rXJnegkDN8qyLXZ0mDo0rj5TFkkTtH4Zw658kAucJFJamk6/KZUt8szMJ2LBlxTEsmY0qpWbzIoFRTzA0pdmCsTXbkvoTbai9r0UwwrARaqS9gbKY6z/nQtj0vH6/gI7DARLRj8WxnWhGfimt7F5N7EiUT/fd5nPU8rv1B57Ey43ms/Hc6j5WvOo8LE2PcV5LCttynzj2M5HkUhjRFH4pa85dJbNTVJeim/ausriAyOFN7L+qG7SBdVBDlfav2b0MtIShy4nr92d8Tf6kd9yo23DTv3ewps6bZdV9t0b0kTazlAPN0sTxTeP4on3O/2fHkQTIPyBJLTregBXxnYpqEc/KypS6P5nWtc7BMbISdNncvdppVdoi3zjvndRaNe1GKoag7DS1x9bxQmRBbp+2xpeD1miwqDb9Zq0rzAg5c78Cgf57IJ/hB13g0Dkj8ToWD4m6ObqNi6mOtq+fhnT4vcmaagVrpRZ4lIow8vNRPNjXD1Bsjv9++62JWUk5QjAfBUkYtHsBDtfV6fnQPSleVvzOIw87WVgkGWb4ejPudKOMvve22t8riIQyegYjh1DgTIHg8wdltELNS5k5qkQ1jfN/Zhjks8fRZYefJpFRZ0m5qmbyMsMQBwDSPMX1Y+lG7ZF4IUs/+gpmvBGARI+x3Op41/Uu5gGgV9OLNcGC1qGAq/biyiCu0uFLOBtaAMiJv78JuV9RPwitguQcMa6WzOz/CKEVtb1LZ8jC33Dgmn/FdeHu3jK+Y++3n1DaHCOURzxeVP8XW10QSxbRy7ugz2sphhYrk0IFAzihkhSladu0OhM8L2Z8ytK4j9Cc1WsJq9aCAncFgSNEydMmNR1DkBxEFAvl72gjOK55GvGPHlkE36AWy3Ds9u4PD7HDLgLwL5s6u1fjnmyghqKK3qGpp1qJbRFn0KUNsXHEXVSQara/MVa6EJ4LlIggAxGE/LXo/L1h0e4nImywiKJ25U0gfwhWSyNG127RZJwq2AnOH7p9KxRugf/2vz9P0O8mZMxpJNF2/Mx+XR/l6iMDyYYJFwZvk2RNKYON64Gn3YjeSKixKa4v0hTUBEgJCeSg+1ei3Z/7bM//td/7b7/y3R/7b4xQzOuVWLpUNxzINWeBjpTBKdaysZjr+zjs+ulPzd2ughE0Clgi/C0KUvqA/Pt0hawYxq1k4BV7S4bslzNwjIkvpQo4XZu4N+oN40A/bBXY3EIUYqAJtijUJnQe0noU56BmGzgHwfrwusv2fl+STzvfNoyPSblnjePdX5uz3KT7+Z3oeuCRrhbivgMmCLJWKehdmJuNPEWMQ7fwdGSld9YJ8TROQbbd3srbEXzmGfVXLOiogMBGGCI0OMc98jMkGRNhSRFeWRYbbI2RP3fttRT5QFVH3+DASARElLJM6SM8d+UPSqWVTMNzYR32i1+MZLK4HneeimKmWsd1Z469v3Sp+YcTTIpkTaJqz9Smvo1YAPoeJuqnHvQv8uawabNznlb87DGvFpbAzULC/9oWZTX296y4kWa6jKlOV60IipgK/oaay9hGCqsvMNCQBO+MRKhS4QQsLcdAbopLAUEWiICS2WikQO2i09F8O4Jd35YqubtClLfYQbT626OdUC2xQ4g1ayY8HLFVdlT5U1/mgUaXBJJkPWHk9/a3+joRVthd2m3/b32l6+y16wU016c2N8MLfHK2u1F04BFrgdcQXQQHBwi2jsB2DUl0vaO3UVbNQVLR2Sb3nmdsnyZbN8S2td3g7arJoShSznRRJhQWlWLMJ7YFVFszSQLl3XibTTHrxV3KF5Oc+/znx6mjfgU7vLnyad5UqJI5lFMDLiquplKnRK1Y0prwq6s9WQqQ1e+PWSxpTpUDZOJP3BNXpygYo1Otrk/oDfxGDCXgqeU6mPV7ks0njrcFo6iJvjru3Y8t0G71yIWqMNjkTk/2ICtvHVi2nqVTnqSkGqdCyLCZgbB2lA0suqEqSA/98PMrv0Up6tEQ0KfawImfWLsaC2nnbK1NFGi0lTdg6yKqxsoO8U0ghoOVz5ShTFuRFjfzs3bTUsNBNYmdLEJueB+VNVmjlTjiVBBOlwrt1veZ2KuJJxbcTyMaBfXDeRg5u9kx85dZhcEHFgZL0kC4DYnaQZd3laBqAFV70MzEzxW5p8dj7Py9Hw6CNlcmr8rEvZq084BWU0byFTraFw+SmvIAPn5mklp8v6q1z7/3p8cVJTbiRDlZWKwuWsuoNNFsdUerkIxik5DmoLeT41hwicjyB01oK+spvdMBDtjmry22mLeWbvKXM721u+xumByGWtC1oqGqiz4OxJo/AVLRqrq5lN/rjHlcTIu9ep3l9MyzdeLKhPga/oU3EObpjAFtiP7oAaMNNLtQthKAVtmSq0qaCm1yR2rrya1SFdZKsdsJoVGtQ9NCgzF/mnHNvUIiqQhg/v1KN5J5WeF4lE2gcpSua9tPN+typlGqGaQzkcmr+qHQzea3LoeH1rhJa6aYiMJJli3PHdKWsOrrWnj2Oi4SSElNajI7Z7o2lnapYkX59cWRtSYVd9ctv3nLeVHJgVCKHk6sS7jRqYH9RaQ6ymrnfWVhw3Wf3lehJqtTorqR7dZa+PZVsCWULf81I+An/pl7U2KhsnxRilwSWB1UT3fbCvAasXDiCHeSBkOeBc64sYEp5PbWQvVZ8PlEZJhahn39ta7qbYWCFD0bP7G32ZdXraLgyQQKunmYbbzKqtVxJpXdKXSMJo1U89Jagri4TsXmV20f3N2hdSdvJqBZXyXo35QM0vObgAvJmMIiHI6qHNouo5C/HvKOccHdr41ZOhLu1sdIkVWcjqN2yGKkwdGUvXF0qZBdN6HJFeLATEIvXu/HwXoUM/2mRTtyIU+FOqjveFKvaxapocCqPDGwcsAbnLTYuXcF/dGcl7rDgQ/c1TsfpboQZ04itoudW8NThgFyCwi9J/HZP5vqc1/DyMlHUa0DWQBeKZtEHdaWYuHeEEQLL8/TjHv8jFzwBKYsYTLyn9DCZidcJbvxxN/ZG6DXkhY6SCB90Hm07wlf0GltQFzV1xPWYqFZJN450CjtUqlJUnso7idKzLIDwbSuvN9B7TE5EQwrhBc2gH7DfKKH1K9v5Ox8uWgfAt7jVK2zOFanm2467WcDUvNFbMWDqhp4o3KjXJebqV7pLugePolN6Hek9k3s8wXlI5Jk55ltuz6hZL6vrbh2CKqlqgZBYpXirJfH7H3xcN7GQ5k+KvLxTomxNMpPmr1vxxPj0CHjLkmj3p+SN7xvyh1WVzlrL6lOontocaSlIK/RBNdFpa1akMFt/HigNlpbGv5QFpPLRb2lTVbtJhWkI7alalaoXxGaPup8rw0IVYcRLan0TSjHLsm5ZotZEndclRSJuxtmTAJJlXIVKfGVNgjlztvUXZ1o3O9BpB3UFpBR8OtQ8x14jzTblNHAC98GztMfQistnQzIpglG+ltwTVCEqPf5ScjZcYEJiKIMNpfNlzo8dcSH+jahMqyLBA0byOQlf8fK7SUwpVZRiKw1/keLHE+N6kS4WNLXGLEEhiheIcBZRjWJ5m4b6pOWZwwAdqo3piXiXVW64pZxLmfoP89rEU3FjLa+c58+N9n+uCh9A7NMrYLweRr2Hhy/KEh0LSSA7aOTJ7fOl8PNeXZbXr2oqrEGqTD7qUaIflUCIFowXKhzQzXBNwamZ4WAqCzHitKA9lzWqQnpYW8AEgTrdxlFJw15dEeod8QSbQ4t316KgEirv/BzxlEnJwuH1NyUtHfR4AMGk88Xnu6HyoUtmqewaze9aTUIHZgfZuEws4qs0eGktGSsgE5ubOYGSLpe6T1PD70RVf5dX+Np6RRh1hrVlMRzEb48GUSSKg0RujlwQq5+RC2G+WDCfnFhCtZMwNVM5XGL4wMTQkM2skjpZhFRVlXhL9lZhSaq+WQY+r6Dj/Z/1KBAKAcFHDJnwD7A7DzGdLh04HrRBISuvWgqchv4Ditzdc2ehCGPklRkPJhV1mYmcvoCkvpis7E8FMm9wMMu8MFao7GJAVZiRrxE35opFjceCZk3SzGh83TQHpvK5LhlrquhY3IZ8XTCneAY06SlJKlYkGrUBybd1/gLoQGGX8yBg0RYaLatlSpEUovvHZRPiIkUnGNz9unHWZh0HJrbxlWNtvGCs3Pfbsw5W5pGLMw1Wsb1KmVh15M9DkFk9n437o0G3a22iIpj/jqFWNfhnE2/x2d+Xllxm4vr3K2oyrWJXHkJfSZZ/BEn+UeT4h5HiH0KGn/+ICm02KV2pmgGZWFtkT0RqIjMXOrUISY3mL6j10bmQ1nmyeIpMCR/oJbKRAuJl75FfXwCnpeSJ374HXP3raLnnP1VZuxv4oKPDDNh1GEcF8WyCZ9oe3nvQyIwZF/PuPRnFjmQ1RUd8X2Dp4ws2KneZ4//jFK1N4GgGJyunOFmWHaXwEhL+MYwCnIrTeyrklH6edSZ/T8/EnfTQAs2t8jrewlxHiADdMyAadMUC/1DqlvQmpUwvk9UqMxLLSeGeCVej/NyVQ21uZh6DJx4B+nMdghLT8YCKCAK+VXIcR8FdgnlWSvhn7GJak8qqS3PP7p8R7yoqViY3uOJztxf2ncq7tQItAdC6Nvwyq7hWmPzqC/7wQylvVjwPgXp+5FEDJ5k9bwFzB2yzK/vBH3Ue/VHAdv52XmVrrPM4GHUi9n/+N/xMSjlZ2VxFtGqHavWHJR7PPCyLfyvi39WsOKW2maIN7QcxH1xwOGpgx+fkAhoC3Dwmjj2eKnRRlBWZBX3ZCiqk6dviVc7gVf4u8Kpk8Kp8F3itZvDKUDYR4dcgVv4SxNamE9g3wevddAL7JnitTyewb4LXjzMQWOUrEat8CWIb0wnsm+D11+kE9k3wKpemU9i3Qaw8A4mtfiVmq1+EWWU6jX0bxFanE9m3QWxtOpF9G8TeTSey5MaE/NPyJuXTkDS5ApH3cPVzzdJJuyqhvvR77VsZyatVveAomMi6ZYyWsgzwn6tlnAz5Iuf19JLjMljwW/mmzS5J4qqMZzpzlT9bzjQeTUlFcLUAnCWmElFRbGpCm6kaJXpcJQHJ3rZcKQgGoX4zAl2r6jVw6Zpl9yx5yDvtPn1+NKth8Q2Idra4jS+K3fi2ybFSHcV5UWl4c8+JvGLxZWo4I55mSYJaysaJZOHgzN4i1WOMrFEqexafqX4+AYY7W65H8yhbksjllaie85lriNBN/TE5nrKZbr/nf68pMPgD7jSv+cGEzm8ycezf1RmcNU/cF+eI4/F4D3ThSYF91qISSRThonhCNzUfpvfAzya/MNbfay4xCtTKvtSceCxTFeu/8HDiOkvvrPo+JzmL5+nJnMyobir2+rBmzeWkJK4KDS+oJS7ocZRLYpUK4p0Jmg3fihGQwK9mE0eosnwZLvCKwQ0N5aN9dU4QaZzAMQNxJt6xaG8Ls/me/XA0pdYxtDAzPmOXGbTKyLv3wh6KWIcOlqO9inQBaT50TgTut2c2ZjRDOhrx04SUqKXZk1dOyqxKlV76mGM/j42pKBOfagIYDEP47Sckh8XmwDAMNhH2hl3MBbe5hvek6m1HIR1RuSR3tzBz0fIMyzFjLB2YqistOvEoznUnzrn8LzDn8gvnrALaUcD9xFehSgSQ361T9q5T/Rwc2oyix49K2kd2eHosYERCDjNy4lFGg4xG+omhLeZFj/7Q65QdwM3lKL4w7IOfgkzG+/wDNcMx+RegGBF+PDvVdMoqbD+7am/zCnhM2+gXbfO30BP0moLiuR2X1EkMbkP/JJV16pViLQysXqQz4CbQOZ5kok9QC7JGBZsCzGptZBxH/xx+A5tKA31X2MRaIYNhFHS9zhrpMBHnlJS4/ftwSiR50XgFa0XamKAReFTAKsu7TCjzfvfRf47ElPytkpvjphDvLyYmp9Ye+0wzriJfpuGwPLOxJfdIYwQAeOpOssQs4JbSL8osEGABZcSH4VwUBIyujfzYbY5BuqDW95Ey/Uu0VPFcWubTtt1dIHsSjlW8vQDLE/5bX/NuNm7Wb9Ym1x4yPVMFq0ls1HSaLB3XCvDfxBb4cpu2eHIzeZgLGdnmXWvSLa+U0SRV5eUrWl5/wv8qG/+dl/Rl2dpfT1VAQUe5E5u/NHcuzvePW1QTnAqL33Tx4Q7qD4FMJ5qkDMWoscFjn9Xn62Y0WcLJ6TFVCVZJuxxbLWh8ICc/NxNeGNXQT0YDSj1RxTSeot45TVbmEmw/swFMiE9Sq4M+Yyl7rYr1S6rWa91SPLVcSC3A5JJVLyxVNeOshmbd6Ul1OQ36fckSaGPo74MOK8k+UW6ISVXpU0uVvzAnp8295vnOB6/Z2k1RlEltS6zizmy8GBSYgZOr/qX3V0dueoGyGbfQQgb2YuJ2uf4SGnwNrD7nHeM6DxZHuxQW+TeRWZl0QMHCqKCeyBj9p/SJTkIKZjyeWrC4zFavbslnAPGNjvhs00wdc8tUp5TVmMfhn3lFbQyDRJZeO1ESzIcBVtIaDJPtN6eh5xQWhdoTrmLUC7HZbrzhMpaGSNtvU8w303qzK7vJjfak5bg3l/CFW485AstZCLq5/sLBc6jnBcwhB6eX0FUOiJnoK6evTmIZLmWvW62kk6atzEZQSY9/aspKpvEdktgk5F5Ka5Ng2QjnRcSYB1z/OT1ISm6e+2E3jwUqOt3KIdTZqMVGvCa+s+74dEipo2PrgIdYgfq+DtEXUv5MzIZ08RfvXenLNkrrlnET5HK3f629EOpH+y7oeNf+aBQGMNenUqm0se28QrYDnkfwovnHhP18shQ1EzUH5aMvI41rq5bTQaWG2dLTYmEPl5cWncXERN1MvK63Fan6DotN/7cqYJmtiKpHJ31RqUq8pniVcpX5VWiTPBSlTF1YFfQ41THw1UUqCQMKhOhhIEQ5v2mquJNR2mkinmZlyYL5OyW5mYDghMpO9JxW1qstGQVrJ+IjCMACbNsZ3s8Bl/K8cME3srmpI15cjNMuzXXX2kTxyBPVH3mHxzv1w5y0uJN6tlI9W9YIHbOnVtpZq5EgIamEuZkHtVQkh5dmhl6pxLkicfjVv7mqxgRwcfgt4D8zM8VZAPsr6YHjszlX58FIxehlEYROiPxzstSJg+s1z2mOqRLskpQWebm9b8aLXzKJ8utNYi5M3PgA3c2GD9J+jFqiZkaaba6oOht5/U6bRzzRgtnxDV15b2P5Hnv51VQRKG//vKmNf6TGV2WfvmOVupUXzzud90/1mOeEDPn9juDBQ60YyhSWyxc5g2YvnE1U9MzXbL1wBlExaIPVyqNYEhsLHwv28HVbOkWI3hVmJ9Kb6Qbd2uQOMOFRTJVlxfosaXBUuZk8hiweBSmcU+c8GSBXuKjsmJRPeqY3PQuzsB3LU59MgjrTLlCzeJF1pKaYG+EiE8W9hNtqzyl2LpOK8qTy0kp9AWMzdVPOh7bt6e1E0iSORUW9vPVemC9p6kmUTPTf53HW87j2B53HyoznsfLf6TxWvuo8LkyMxVpJatLhlWWVp+BleyeUS3gUh343ykkOJaqIelE3bAfpMj5U37r2b1ssoRnKF+v1Z3/l8qWm2quYadO8Tbp2NzkKdprp9tVG20sSqlrOKKjCR65IS54/yufcb1R53UvzgCyx5AALWsCQR9Pqm5NXKHWJN6/7g4Nl4hTstLl7sfMH3SJMiBvR9tNSCHLNKLbIn3viPScvQGPaWVphJv4GL4y8LnDgZEkztwWLbBhjOHybIodk4WJzT2Sxn2lFfhxbpk5g+jCCm03oIo8pgtTfr478RwnYjwc9XI5Ox7M+YC0XEK2CXiIQo8R5IScM96bCTpmB4YDoPbZyDpVaPrQ2yXOBhypVHNq1W5ufF7I/ZfZNR+hParTk0OYEPWlVerzDyYV6KXxY5pQU1qe5WGs1/vmmKNPaEr8vbaXGWURW9iknx7WoeNBo1b4uKbSe81pwMAAQh/005/68YNH+JCJvsoggc+duA30IVzAyR9d/0oo/5VxcY9EYhcOnUvEGiEr/6/M09UAe9oxAi6arB+YDlyhfjAksHybonLxJnsap+D2uBx4hTC8pNSBk9hbmDWsCRASk8lB8qtFvz/y3Z/7b7/y33/lvj/y3xymGVsrxWCobrkcassDHSmGU6lhZzXT8nXd8dKdms9FACa0V0xgTBSFKX9Afg2BJ30XMsjIOpNzCHGSNIXcA3o/tItv/eUnmyThonraah6zZOj/9lZ0c77fO5z7oQhz0hl0flO9NcrQVOM/i/xzoLwqoPrb4viEaNA74vx/F5x9b6R7qNKU+156/gFnJe+txjayyveB5QmXx2MMA9HsPGO64D6rN9WDcByvLc3ReKmqlowBhN2NM3hr+htkVYCWvvftg1A+6jlZ6xswK7qFUBFO/HcNg9YLWTt0BCaGgtUsq783cnp6eUmtzfEvrHd6OmiymM0jo7SQnKCwoJYFNaM8lIigQBbNySK5LOiVBFz5Z3j1QHRBedhdZYPjgtYOwuwlk0Tjadtxabpd+ugtsYKOV12UQAzVQR1GQOCKFX4DK7/I4GN1TETsNwKK1LDp32tAT3hA1KPrRWs0Yi1a3eXnG21HY2Q172GbBkOE4rgYHfqypzzY13JJPgecKwLq0kevl9QqiDnNBM3wLmiI407uHlBzTTOhMemAJmTZJIJkOCez5Q++p3fFuR4PxMOhsio0pyH3ZdiSUQmoW2TvlT1NHN+rZ505DNn6T03heWCcLbpojwHw2kVsip0QuiRwSmRP8A38f6GqGYoUFPXbQFPv1gsZtFCMBHqEdf+1kpw9tIbuqUyhJxYq9kqTbKLK9i7PmrpRxjsbsg348eualVt1/XoHHfml3jgadgP2ys+sdHe82eQ/+hvbw+Pjkm8hEHoZMtPrPKxNx5ouTZFbbF8GNUTBjD1jDdJ/pkhHjl4d3mNIBhKIRu7wz6A3hJC3HYS8g8cBkaGbEJtSEldVcU2ai2EabfDup7+42gb7yJC8aiUe1KRL7S0T2l8jsLxHa06Q2rPjP9JBKLbAF4AF/tH6mbd4WO9Cur+3N6Wk5dz5tJTDS8sfsq72RP/PkUGal3jVbP+60TAbk5i9Z+Vl0XIDimCMt6pzFnYKZh09jeRhUatjFiZPDeTSOjMVUW5o/JBXc5APKxUiALKbxyhv37NfWjrd3WH9/lgNnGuLHF+ci4FwintBV6gVWgxxaDM145nexFESEQcDPg3HMeihs4fe7QRQvR2EHW+DtDZahdicd7p3jk33+JlhKBNTGhJSoVtG92dqFpWD/+MfUQCMrBF61sn52tv++hY4uHBQa4gvPcnpRrgeDLgMB7O3Udz40dw2s/qTB3KsfHjbqOweuUf99h3jlOa0i/5mv2GYyz4JiTaDrbNe0zheC1eKhkj9P7l5IEcCsKXqEsqUkskEF26k9PydH2wop6gy2tR+H8TOz1D/FStiSghLnXG1+NgQXeyonQRSNe4GDo26Deo4R5TGZDxpTcXM6KSRkT/WBbn2k3x8CISz7VImEO3ZZFHSDNpVZdx5Cn8UjP4wjjdb5vv6CGwqEc05fbyZqT1qzLli9Aqk/BusopJnEdsZm6z2jNk+7oib5Rh2B9MLz61bDMhP10G2t24Phs9jxX86rVeSWODug1F/hmImRyalsrONuMAofAjJFoqHfDrhKG4winvtF+TDlmZSFNtW6ot9xkbUxkZAeGCZO3+K2o+ksggR4l3G6izpz0MlQdeTe76F2WB/dRsyHvwQs+KlYN7dli9W1L5W2J79UH5iNtJo7vFGSn5ya7KQH2dG+JDVLmTI4MaV3qcs+JcD0fqYNlO6Y0iNMeznhjLqxzBfE+00g2b5e3obfLpE8tDs00UqmmuSteLYNrWXG3k0BH3PguWDHCVhpqpkrxpNh8IYi8bz6WEeEb4ByJ4se6gOtUTtRiHkjZXAmhL+HFzBDP74DC/u3cQhrD+bcYHxL2TgiNgRuAkcHmA+s9gP8ArJTPIQn5lBUcAYj1h/0l6X8YT0QR1GBJ/ZACLCLKqWHNl+cGOY9VZnFZHt8Uw/EDUc/QBQpieXO8QWIW0IMr8zC277fJYwIVtEix4FZ82xGeOK3dEXVyj0SUcsXQZhfCEULBLXrA0ryYgpAbaBtzoSSCcye86HKHGMCWVDWw6ANvsnVrp2LM5QmmUnph0VyQUUR1SQry53f76A2Hzz57bj7zMoqGUKZvW8eHRExcD6owzuho1uuco0//D1g9Zyr0oR33xKTx2nejv1RBxi9I5l/QfF+y5XjLQnJ1PLk1pjEkX4jpPlYwo2CUApCQFguZMTC8ZrLm1zTQY9DorHo3gLTtMi5F8KDioIWhiV8ckfl1O6k+IXeFUg6xVzzg3ws21Sp0lZ+gQ9TKbmwkJ2gDaeBHBZKm5ErWmDJTr7Ap5V11s3TUyc3YCZ07JJAJQ4BVQFrxPfl+cGjg4khgOsh7+yNQdfDzHHcNJ7luIAVg4klqIIielU6SLA6Z3anHihBPhRY9+KTlQUjcJjCA2fPyfmTUqqB28kfE+acwkd56jmb0OZWYzYOwD9d2jLQ/zdbeDlbsBKivPnIBkPM6yLF3JpHjwjWuFswpfiXMy8bAxOjJPxLIPBi9vW6LOzFbOwPuh3/a5F9OD47r8o7g8P6RQtU9NP53xFIDnxALnLGXezAIDmL5eYu/+5QfLXXJ4urU63ewAdoK2+izznXu15IucYzv2cd4gX8lYcGeLGLFjC38Piw4/5g1MFkuF7PH1IM7/qah4kpUmhuM+73x0whIFxGzwAn0fVkP0ZRY/fBs6OqxAIxqZ9b2s8H8nzxOCjG650iEPcIa53iQ59/6J+2ePVX+lR9eFBDqhET4tFw7THwwHE/5peS2le3GLchvlTlj1Fn0/ukwpY+7J94QCs7Bw4s4m7wELaD90Fcl+H95gF4mwCiReftVeMjkrujQTuIosFohzczSiykkNkkZIwZrZbWdLNNrF3ShJZDkqEWEqJIETOG8asgBmbiSl1eCYpEYsI7M+W266vvuGa9tmp3/ShK0eL+z7A/w1H4AOhV9VgHzRglodDtDuNRTY9uUIantYV5N8M4/SwkAZsTfcP2OxTLVcfCcHzdDdsc8/TMjKrcswWTEn4UyKVi3DFpN5rwMsBLdZVxXip6klYuncOHA4NVEoASt3kyXSP+MpVPiO7MeMpoY4mtZ6r5FB+RI/wjiPQ9VBqct9C3kJrMUoLPCxOtq3PIh5EerfQTHAOpo6AXBbFDeJQmoJIGklCg6UbjBLqNANOLrSgSS51Z42oXJj72FHyfw6aM8RqueVHW/9c0unPUTFxzZfZGQaB9aaaGyUDlsin98Vt6DxJ0g1i4oDIN2ADMCj8ejLZmAaEfUbrcPiURFYyMWfHCaZINCqFL4opHU2+mx9jWg3dTwu9SyTmhK7kYHX8pwV85OYq9eVNdT0vv9DV4FoDekjNuE+ROtqMm/RmPa0uzD4n28jafvZMfNiIAaHRlUAAtvwAya2zAhElOjRN4ad8kZiC1QjPFD0xZVVseoZwYtBllxSRQ02LTdMEr7dkthvXqTT2oYN7oqIctS4ko1MLDYNp8e/lpef/+0CR1JyeEclPZFBaDYzaGPs0YcU04nbC3Kg15mCT9agmO4I8HOLKF2WKn7CzfjKOy3RgksVG1REc7HoW3IfqPaeG4Nb1Elm7KenhljexVoo5s6ltaebPqVkZ4CpshSMUK5cCMp8iGb0zuZYvi8DJhHFYYhm/lUIxsob4kqsMK5iuDOw6t0R25ymwmQgMXnFztm8mluhbkkwvohSEXM2jXEyjApmJPhPqCeIovjZfIjD2PsImvi5r48qCJ2cIhOGKLWhCdqD5jmAAShUUtcC5rKJAdn3BQboflm01OrsFuMS5S0bwpjZtsF3zKoaMHIkIYO8p4MGXADCaGzbzQx+BSKDWKm5uR2n7PnB2I8HHyp2mb5E528LwZ2PG3AJhkfWRsDw2p9Lhkfmjfp3wnxq5ZehrfT7JdrGbHFLtlmtXy+jbLvy2Wf1ss87NY8Cm7ir+dl8GypYHNxNJkzRVnJgGcwJ/RNVT9o+ygTNj8XO2gRFc3Lva+J/NI91WR1NnW2ffUtqYYXsiJorfZVc3kMUjEMAUPLD/7YecHuhtsY4SujERc+HN40+8EN/xhSdlrNFs7H2hdF7RuxCfEm4nv/QWEjRPkPlqxsYXkaiQlRYpghMbPjpsK2GkEsCw9H843yCVYWaqltP8zrXXUw8goIPKMgYvfdv3RbcAOdGA5Mbn4V4sfAPi/gb834PcG/Aa0CqbUwZmCknblbeKHawVW2dgAambvypgdEmxWtg4f8t+wXBYrb4P+rwRxbSI87F8pY98fy+sbdng/vgDeKvRaK/11XeKHv38Nfthfn+9L4Fl3YZYdYMqPkIrKPczBFTFFpPgaVkprGzmYFiwWWoEArs20KDBQ5R0s7mrpRwT6bnWdD1SubOQOdFI/Pd/HUmHNXRyqkr9a53DeptO+jeCtpLoxX9Iqp+b95aQvtyu9inPfLkKcNixNw+W/VqYi/jkpxhrizUqai92E/Y6TUYhFZ2R70OtP2W4B9HKTKJMwXt6OAmDUnVnUz88Lf4b+AByjVDOSBuXWNWAFJnux3SYauujGI3+5G/h9Fo2ve2EUYSS9aCQUjLLA0S0iACwAxCO+0PTvBqznDzHw6348ZP/1P/+XsMxRAxuOQSsL+hEQ5FKe57HIozEMmcfCCEwYWD5KesB7lsV3iDeq0G0fIMP/HXYdAMUHLL4LI4QEHeI7QCqAE4AP2/CpGz1/YeM+LPhwNOiM29jtmd0GfS+ZdHH4DBOUon1OfxCc8kmSyUqrDkbysniYk1kqjHWjQz5vVIBIxu2YB9NrflJ6dDsYte+q1XOOwU4tlQ7Niu4lUvQVw4QY2ivGHQ9zABk+GQ5DkAWWzhYvDZjjY5+IsrZhN9D3MXTwLvA7LqlZKqyiC7TAZPQHLQ6dKfkJVznox1byYyb2Q4/40OI8jOgOS7iKilYxVm77rbIPPZqbsqlfDIm1azqebT28Yo50mJgJRIN4So5bh78yGRMEW9TtBqL2b3scxQNpT8wbGZPcNPOFvnAsJCn0W/PDlDKb+RLZo5ERQpHGET4VKaInySm5NUuDg6RB2dqgpb8nSSBJLZjaAImiO0WRqxQByWOYt/xYUFZKk5b0NpiYiT6+BChXSRS8kzypAis4aMfOnw6LdAAp4kfTnuFjusSjBeLa9SfE5nMBZjkY4u5HjlvsUGog0ey+scdVfd3/JeADMPipmBxcw9thMWDSlpfFoNl26hpAzQ7L9kviEZIt+JKuSCDTO6awFEugNabwFFhO+rcl/tVe6/txtdoed/xq9TaId8ajUdCPdy5269wiclzXOP4A/5UYwFHYD0FXZMNnlO/EBAb97jMbCcWGPd75sa4G0LOUeSNy8mtjv7VbLqNKcnHYdM6PT7FC5y/nzdYZaMFeq37ULDDljOsVQRVwfkiYxA8F9jbNMnSjffhcrYL66/xQ/8EtJL8pSkl/ikTwg0u60/8PcGhVEQ==')).decode("utf-8")+ CUDA_SRC = zlib.decompress(base64.b64decode(b'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')).decode("utf-8")_mod = load_inline(name="mxfp4_gemm_submission",
Best evidence level for this revision: reported
JSON