Created
November 24, 2016 18:51
-
-
Save Voultapher/157f479911d97fcf28fb1265d9c71f16 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
https://gcc.godbolt.org/#z:OYLghAFBqd5QCxAYwPYBMCmBRdBLAF1QCcAaPECAKxAEZTUAHAvVAOwGdK0AbVAV2J4OmAIIcAtiADkABmmk0Exnh6YA8mwDCCAIZtgmGfICUpDgOLIj0gPQAqAKSzR9gNQA1VKh5uAtG78LDyEAJ7OrhHuWkyhQsAIBG4QyCZuAEyytABsbgAy/ADWuhxuAEKYxMDoPr4BAO6NAHQ8RSV%2BAEaV1bVNbJgEUVFuACoIwm5oWG4TIdacmOiBbFjEbgQImG6ijLrIm/l48yIZTbLJiQSMXLa2TJicltZNJMC2cw8iHLY7e5t%2B6TOJiitgiYPSAGY8AAzFaYaGedTqPIAfQAqiMAJJ5TEjACaKIAEijMQA5LR5NEAEWwVPBEKw0Lw/URyPRWJx%2BKJJPJlJpdJc9OZyFa00cEK0ADdMMgiMRxdghWwRfwxRKOAQhAYFUqVWqtAR%2BIw1DrBS42LoJJgOLtrG5Jd4eGCAOxlMHmy3W21bIKqF1us2iW7%2BPwBSW6IS6fDISaoZSqLYsK1uRjEe7EAihSabZCFEN%2Bd2iAiYZQ8XTFtzirQdR1uGIrBVuDXEfiy9YtzAomEopIgJsEdAgFDsfAsdi6J0S%2BvoUjugCcGsHIE1/E7mcYmFnZoXA6H0InIh7oQ3YIh2CH662jld17pEIDogixdL5cwVZFJVKbrP/Zbbf6wDlqwbBuH2i5DsyxbAMQE4omgnAEPogwSjWPikG4YBgGUQ7hq0b4/tebrOneD5PiWxqvlWqG%2BNO6GXhayaiHRx4PJ65SNvwHDMsAsYrIQwGwUk4oCo%2BshzvRbHgcOfFjhak5aLR2zod%2B57Lix4qkS4z4UcWVYSVaTSGaMHCmqInHcbGEgSOwR4bj2lYQlS6wsQxWxSUo1lsLZ%2BFaCMHCGU0CoXup96FhEwahmGEZ4FGRxuHwwBHBObgdMyEZZlaiHQvwyqyaUkWFtpZa6ShjoBY2zatkk1EorahQaWRL4ldWZVGR0HFcQYvFUDlsrAQ5TlScIKIcJ6VbzjVdV6R26EdOVZ5bqJc6TXs9UoQFdEdqZOqhVp5HFT51EBSlHUWROPAovuPAnMJ/ZLsNo1WuN24rbmVZXSIs3zdgi3OMtjq1atVEbW4H34Yqgpng1e1NYdrVNCdP7mV1%2BAcD1uX9bdK6dt2yFaPOAFAew77sOjfXE%2Bthk7apuGrpW6TZI4DME5ggGyVW52XQeh3fUFIC02%2BkOKrtolFvtlESvpmDHX5FUrm2nMRp20UbJlcV9tjXbQj2z1LfBZPs%2Bqu4gMNKsIGryBVrLZ44ROq7fbbeGntglY3sR0OixFoaWZ5bi6HgGbmwMcWXvmhXi81UtuGSIwoiMzEbq5bhoqSuJxwnrEGUZ1vYJVbbDZBKKoNKxDQnw9SgfOmu47rf0QKjBvAVWQ0cCNY0Sn56Ex3HfMCw7/N24LS1/UzjMM24De9YbWgt23T0dxw6Ep2nIy94P/cC8C27XvjzpaMkk8YxTM94AAXpgqDQhA3cjGk42OU2Z8X1fflpBvg/ziPzPj5zYPN8bw0y6oCAgYWqqBIJWxMjbAeeF354S3sPAibsSLh1hlRWspJ1Cx3IpmWatYzYZ1cjLKBLs85JA8jZS8KJNg8A3PKQUN5twaiAsgFEn5KgEAgJg7ByhcH03SGiTqPF%2BiLDYUIDY3k3ChAEG4ERSxyzxUwCUJI7BEwsUwkzdIwIRZ/WYSwVh7CMwQAIfwwRFk5FiMIAgby6FzrOQ3KUPQ0p1ioBSlsM2FsNHpC0R7P6yMeKh1ug6PA6BfHux0TDHSPkpbELln%2BchcZPLeWoZgWhlRpqrk2pk4yvMGGaTnP4%2BxV5HKfzEvBUcAkLp4wLmwAgRcS5APqFWSC2QAAsPZ0L8Bae0gg6E/JwOyTUfgHQ1C/TEn9cp/FxxVOaa3QuxdKiNOabUiE6QOmBEgqs9Z/SqbQIFuhbpHTSlzkmbJQSsyuy1PqYs8uyyCA5HWV02pDzek5N2TTQeByVlrN6cc05lSdYShqXUhZpdblAtqQADkeZBaFrydmBT2Z8mYzzshHO3mJKO7lEmUJCr5fy7zgonihiS4WwtSLhM0mLNBksXKeliVDFwhSKFeQ8cHVhQkH5RxZckmhdDa5iQgFxc%2Bl8AoQFfg5F2sgzDzmMTwC6StLGq3ZZAgZmAZXbgRc7Il%2BEqWNSiXpOlyYABihD6WGRzvacBSxoQ%2BHQBAecxrR6j1Br1MZc5Zbf2yMdCMwATIuAQYReceijhwWUVWYJoSzwOoxTue6bB%2BITifsQFEIQNR3O2uM8ZrpkhSVtcQeoEYo1aCddG7KyoTBCuNvmwtxBi052MVUDgJgzBuGlcdW885tEUpEuFWw%2BZvb1msMwfKkUCyBjIbI1RHBWwIF8R6K0No9hbCwIhP0eS%2B1FVfA5A0RqtjxyKUnXJQZbCTqTSUV2ZRAhCKKQNUYGlXYoIYb2yJB0BXiT3W4Kk8JdD8B4L87cW7I57u%2BpMMsHBSjYAAB6pmtFxdg7qYnZ39Y%2BRlogPwQYngMGUxZ0BF3oY%2BRhOwhDhmLCAKuEcfLHKA9EkD7ywOfm2CEEo7q/pIYRqIJtrHMWfoAEoDHsrdUQzGoFaE43649I80O6MQvov2QRXHFwgJBFMCATAFjPPxupyE9WYso%2B%2Btj%2BnaWJ3NYil2GHSjCZiovajdGONNs/tJsSIaYzfv3H%2BlRkoIABW7YWRgwy5jke3IUwJD8sAikvBAYuVZoOwYg8BPpBKzMQGlb5wMfib0C0Ew/Qm09Z6PSo7Gy83G5xud/f%2BxzZL51LRc7xDUmAYNrGovaQed6ssEEdquMJT7qUGolFXT9ZWPOIcozu9jjYLNuFi8QODCWBsmazgjWWQsIiFNXTh0RJBstOSjut2Um35QSiG/%2B9C03ZsIbeWZnV1X9VvslqNw1C3pb0cm2d%2BLF32PGVMoU4ae3cN3r%2Bwd99DofBDl9DwIcbBp2zvdW9%2BDbB3VapWyLGjekHvGczs9szDHMNw4S4e0zX20M/dboDvDnKduft%2B9h/bxa8cXa1dAy8N3X0S3xoBz9sWNszgo7DMbdmJvgcg4187CP5uY9iStplN7qfFlpyiBrewKd3Qgq3Ar76sXG3C7ocIEoue075sV8XScpLa917up7MxSc09wzFkX72EeXcNyFVSzPke6d63d9nS0aP86e6B17MHucjb549iXL2hdTft/DxDdmvtS7MjL63cvcMK%2Bj5jB%2Bsvudp6Vxrz9ZP8P/3iVbtPcX4c9l0MAU7QfaeJf7kb7c9OxeaqS87FnJ78xYYRAVVnwHLeryRjexkKIuiJRArdcL/6WJVqXJP3CVsFQQBME0UfzIl9pc92zqOA%2BXZrfhArlYAOZRT43DPocc%2BJwL%2Bjcvh49qW3VdRxjpOO/r0WWH4QSo5YturHhEfiL0/g0tdj958n82IRgIJiwYI5RF9l90wv9iB7Al8IgN9bst9P0d9Vsh998iARpNQLIJ9j9IspIcDmxuIz8QAL95Id918UCXAvYAhQ4e9N8%2B9Md71B8LIqEP8oCSA71t8IDP9oCUcjMLdWCX8QsWIuxID4C4J2ANQ714I5C%2BCTYpDBCqVH8RDn9TouoqFcJeD0DOs1wQoHx1Dt8tCAkJDcIZCEJ5DZCkglD2sjDUE%2BsNCwCzCik4JI8sZP1Z4LMr9XdHDAx6C3A9BR1x1mDaN%2B83CQiUQYIDBOxV9x8uUOwtZAVvc/os95cGsy8m4MdJCBCSB0Jh8Ei%2Bk14nZt494d4S8C8siZsHcw88juCU0FDXkijWZmQSikUyjUNyVUCWDND2CupojYjDAD8lgsZkia5%2BttwMjU8ajRd6iuD4DCj99b8OiPkuiR4Ki94qibdRE5i6jcjFi5QrCNRljtZVi2D1iut3cnCvdTCBieIhj9ARijieDxjVwUi8Z5wZi9j09j4dCJwziGjpCf9oQ1iDDP4tj94fi8N9j4d6jLDmigTXiU1QTwSYFrjujqsgiJgmCTD0C3DhphjikdsJjtYvjtwni4iR82i2A/CITt4vVgiSgYjnjOxb96SMSh4v4x5cgqSXiVCSBOSBY28Ilwiw9%2Bjd8k9aotREIRkST2wPjJi0ixIYSqxh8SC8CDB0SRTyjd594fD2AS4WB5T/4lxSDtTLiGSsSxSHB8TIiHiS8Qi9B5TeCyTUj5xbg1SJRh9nSdSP5AMtobje8IjRCJtbCaiUpaxhpnTdB5SURJQ70YySgXSTQO5Siut7x7BQRAx7SwzHThppRZQ3iH58t24VS40cIcMhSgVk9s88YASeA1iFREdRSPcgiZsABHLpWosOEMvPS3fjGdE7Y3MAkPZwqWQXT8Y6IdTAEdNvaXCyLsns60PQy3KSVieMmEd9fWKeHIhSdgYdAgUTHfAwtVd1IcjzbVNSYlNQ4Q0c5MS8kcjnfvccu4vdKciDGcw8uc48hcxPCyK6HgDoVaNc1gjci0Lc6Ed9X%2BbmKsWc%2Bc9Mzo%2B2QlLki860K8oWa7MUvtTvcMSMV0mjUIsKSEGERkOsAABQotoHaWwFJFEDKDyFpF6OiXRxcMW0/OF2yI%2BzjxzgiGaMjOaxhITKTLrINz1z%2BMd0ZyuN1VuLZwfK2H11wzfO3QlNM04qj24ubx914pQ1MgEsayjJ8B2JT1%2BKVxEtumEsV1lHfSUsWFh0ksR1bywq5If3vMAzYvGx/EDw3Fr15yiT93D2xx8tqJjwUslyxJcAMtTCMt8CsskosszzEtmMktspr2UvnCbycvKhcpFLFLzMlLq2LEMqEtbmJMSqciJLZOFI/nyuEPuPMwjJKujNblTEgjjLUAqpLzatqQ6p8lPNcrqppXYv3XDIQkEpaoTOrJTUTMstbiLMEN8gzNksFEhFvxhDcGDC0CopopRDooYqYpfUI17XdnSzWr4gRGDA8CRFRAxGxFxAJGJDJApGpGYsCKcBcHcC8GMoCDRATTsOtGPNBh4LRGCDCCGE%2BrrFiHiESGSFSAyCyFyAKGKC/G6BqHlX8DcEaHqBaDaA4E6DRt6H6EGE%2BuGDGAmCmC2FmCOE%2BEWGWFWHWAOF%2BH2C2DyBpoWFOHOAgEuGuBAFuHuEeEEGeFeHeHZq%2BB%2BFtH%2BEBGlRBBIqhGVFFGKSlGmu2lIoVtVCVpEGQghkfDVr1CVokF0EYFVvlv1p3RyhIB/zw0NuNukz1sVp3SwG7PBkLFciXTtBBydA3UDDdu9HWEBr0qIwiEnShzggkH9G%2BNqRa0nHySyLmEICnTDpSFsJRSSElDSD7FwggHTsvU7QiTnAAD9Q7kAJAl9c7KUwoxJi7S7mjE6S7R474wtUlsN505xq6IBq7nUGZG6nIsA1ASpdM27UAw6XU4DBCnJk7rDO7u6j9%2B6Vqlpp7cgx6ayJ7F6G7Z6W6dEK7cz6r0C8FjL9dGxI03ByriwNQOAkDvalpgwmYIRRYJkmqYrmtWix871wdVcUQycqx36KD99iirTBr8kXM2EIMOEIBMJ9dXZ9Su8aSx8StNEYS3AsjucXEUVoxt1iSV9aSl8vEfEcLnNZNQ1DFOFIGd5KjMIX72jjkEHkq6bkHadUHmR0GKxMFRgsGx8cGwBNFaDr7%2B1b78loqmtaxGy37ggP6v6JQf7Gz/SnZ87gHiHwGwBSGoT3DcJ4HvFEH6H/siA0GkoKxiSDDvJcGeGZMWEQGRAjFlHoHMJpHqGNHaGlgtG6adGmG9GthWHwCuSjGuHvETGxIb7IQKzBHYqT62TYHmRJDRHVAhx%2BT4jaSarZGgHCGDFQGjEIGa8oHKjyqEjJD1H0hYnwmQInGlgXG%2BJkBt1dBQm4j2G18TBjGWcdwzGFGrHyGwBsnaTcm7H8mWT2nX7inGGynt0PGam2BOHuGGmAmSltxgnmtyrb9Inbof6CmOSkKZLW75HUnOF0nfLMnti5mVhOnY1NFlnD9%2BnSnmH3EqnDAmhb8xnfGGmNmLGSGMmyHtjMJ9m8NCA8mTnHH0rnHXFXHymWH1A2Hbm6mfG8HB7JmdaH7xrmrjLyqUSomIcQACmUSEnMykmmnNnFGWm9mwmUTvmemCXBS1gzmAXBmKxKnEXSX6n8HGn9FzGwG8X953mSX8iyAum0XSWkG/mSmKWLm3BWGaWOW6WoW%2BHIQnVpnH6hHjKqq4jkWP7iSMX57THGWFHtmZRdnoSyq2S8n5XDBeXfLtGBW3G/YrnMAxXK6GWiGcWWWMIwADXNwumnWjWUHzmzWRhUHuE3FzXiSrXn1Cxj7DB%2BgYIqkA7L7CN8lmVElttAgxHf7TK8MtsKTh4CGlwwYbFjkf6eUqFXlIJ0J9gIxCiBBTTt4SUsX1WcWyz54tAPJ1khlTTkLnWjnvEC8U3QZ/Y1B%2BXdGgWthc31EIW/GCkb0bauZVA42f722U1U2R5029xuYs3Y0pGJDCXU7Kt1nkmmWjEa2fIx39wJ3Xk81F3mdm28np37ID3u2BnBXWHQ5IJ%2BDGiA377/H7BHmwGf7kyOBUzOxJQM0FpP4NGo7v2BAeAlguhmTv2%2Brn21XbWnnFHP3W5Yz4y/2JRO6APGT0hq6mwEBQOlgodqothkO1AxXszrX32jFEOprizDsZ5jYFqaytAIFSUDD9X5rpqEyI0ZRAVSFcO/1wPEwOwYOCHsX4PMIqOGPaP0OZK2PqPjjUOtBpOcO8PfWwYYPTrRYCrXCfxj74IjzW4z7OFA0g6xIQ3P9w3z6kD6XCkiy42pJJO/DW6bPuPbPld7OVajYlwHPVmdpo2b0ta7PjYtbHP86HBCkx3lcp3djk2Z2DN52QAbarY1iSspILa61KhREbaSsD0vXgwNgJg5FSgEU3BQVRgUUTKcMN2sycylpwujbAulxEuO5mz6XT6A6uOOUslwYrP8k2vz6OvqP1lsYYDW6%2Bu/z1QBNXlhvr9RuwnDPRMIuuuRvWu5v2uIVXk/4Zv86xvRNG3RlO3rpuvaC5wdv3w9AyADuRBlvevVv%2Bu0Ph6S70JNvsAev5xTuJRI0nu4Ktue0g3rV/aNR0QwbMxI2g1twgj8KYpoxLIVA1B1g8BkxUx0xMxswZQ8wmDrWIfopYoYwEokpfBUoLRiAMoBhdBy1yZOA%2ByX3eHO8WU/YA5lU5NGDQxADROwHd24uCkE2eU2VGXqlUUYVvkeOStDkSbEEZP%2BEefxEg4%2BeUVcIQkLXhOafIp1gjQ4ejj%2BoMf0twf%2B0x0AgEKga9f5w9PfyDPAb/2XvjuTeR0exzf7uR6fuXQjrO10sNOIgVNDbamI6XA3ArVQdlwA6LxAagfVAwhXufeT6BhBAQJZAH0neIhfeE%2B3BpAzAIdpAABWBQNgGQWgBQVAGQfGdIN0IvpsJ4K8SEXP0gDrOQFPswQoEASEJoOcdP9PyFZ0WQZ0NpCESFGi2gdIUgNP1pLP4wPPmQBQLgWQKvkfswOAWAJAJQWHyocgbgOMRf4gFAMsAwCECEUgJkf9SoLgCADoEfxQRJB4AgTQHgUIE//AGbPqaULgGv8gWpVJafhgZgYCR/vwdQdIfwRcYSS2EXyZhlBaAufVPjIEz6kBs%2BT/fPtIFvq0AsaViNwFBkhTZA/AbSBjF1AhBNAIQCgavqYDr50BsBc4VpM6DnBzhZA6fVpBCGdAQh0%2BkIAfjICH5QCT%2BsA8fiAEn74CU%2BpAWfogGHDxg1AZACgMnQEGVAN%2BzxCEBQN36qBICh/Y/k/w8jn9L%2B1/J/rfxwx4AH%2BJ/SCK/xr5mAmAeUGQN/1/5%2BB/%2BjkQAcXxAFgDGBGfYfjAJkDwDEBGwZAagPQGtJMBPEYgWcDwHT9CBOQJoNkBIGtJSBtAOcJClaTkDnQtA6wcwOgHyAGAY/cwBwKn66CeBMAPgQvwTBCCV%2Bog9fsAFaQ99pB%2B/YgHIJP6KDakygm/gHHUGaCn%2B2gtPqYHf4GDpARgv/gOAAHADgBoA7gWn0gGxDR%2BcAivo4IQDOC0BGA4AMgBjCtImgkKJoJXy4EtpSA9fWgOnyaDt9Ih6w1pJCEhDZBsg/fQfrYLiFsDEhnAt/rwO5r8C1%2By/EQWvxADABnQHAC0NcFw69I9%2BsgygPILiFlCL%2BbAK/pULv4sAahcQuoW/30Gf9DBP/VoVGipDmDOhVgnoQcP6EOD6gSAlAaMLcHjCYwzoXNI8JA4EATA3g3Qb4KmGtJ6BYkWgLICyC0BIUHfZ0HsKYEIj4h0gdgScJSFnD5%2Bq/TIVcIyGCCTYEwnIIULeFH9ShZ/coT8JUFxC1B9/a0FoJf71DuBoI2QuCOMGmDoRHQovl0PAE2CWBdggYRCAQHIinBqI1wTMAmFuAcgBIggYsLoArD0grSKkd4mdDhC2%2Bc4WgM6HT7RCGRRwifskMtFp90gnohIfMLMAlx4cIAVpEAA |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment