Skip to content

Instantly share code, notes, and snippets.

View nosalvage's full-sized avatar
🏠
Working from home

Peter Litvinov nosalvage

🏠
Working from home
  • Moscow, Russia
View GitHub Profile
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiU0ZRQlNhejdBdkNLcGhHbXk3eW5pQzJTbk9xbHVjb2k3QnFmcHFUbm5xRFNCSy9idGsvRUtSRE5Jbis0WnI3b2V5aGMrU3pHQXgvV294R245VW9UcWFuZllVVzRZbHBJczVwTTVUZXJoQlI3cStodUZxbjN3Q0l4eTdkcm5VWS9WTm15NGpoc0JEWE5LUnpaNTIrbWlCU2F5UVZuRE9INGxjOE5iYy9CRDFzVUZiUU5MSVpnOUUzZ05GMURmZWtyT3lFRXpPYjk5dGtiZXNLcXJGWEd6NnVsc0MzWXJOYVpMeXZiR1VXZ0t6U3pmbVlQcVZYaEhXQ3cxeURRcHozRlZna2lIT1Q1UzJKL09OVjJiQ1Nac3ZFQlY4cUpRNElFMjZ3aml4NUFZVXFzOFRKdngweFIyZ0cyNE1nUXlMZjFrN3FqSlFDYlJrWEFOeXkzK2h1NCtXSWJaZ0c2R2xhSUxKU0pFbkxtY2txTlJoRTFmdEt0UGRvWVQrK251aG5ncFR5bk9XVURtZXFzckptSVhoSnErUT09Iiwic2lnbmF0dXJlIjoiTUlBR0NTcUdTSWIzRFFFSEFxQ0FNSUFDQVFFeER6QU5CZ2xnaGtnQlpRTUVBZ0VGQURDQUJna3Foa2lHOXcwQkJ3RUFBS0NBTUlJRDVEQ0NBNHVnQXdJQkFnSUlXZGlodktyMDQ4MHdDZ1lJS29aSXpqMEVBd0l3ZWpFdU1Dd0dBMVVFQXd3bFFYQndiR1VnUVhCd2JHbGpZWFJwYjI0Z1NXNTBaV2R5WVhScGIyNGdRMEVnTFNCSE16RW1NQ1FHQTFVRUN3d2RRWEJ3YkdVZ1EyVnlkR2xtYVdOaGRHbHZiaUJCZFhSb2IzSnBkSGt4RXpBUkJnTlZCQW9NQ2tGd2NHeGxJRWx1WXk0eEN6QUpCZ05WQkFZVEFsVlRNQjRYRFRJeE1EUXlNREU1TXpjd01Gb1hEVEkyTURReE9U
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiMEwzUFJSMll0OVAwcGg3cGt4L1RhU2M4WXhveDQ4WmRybEI1aStweE1tTDkzckNNYjBWS2VhNUZKWFd0QWt3cjJLMDBIdDN0V2FkdW43ZWpyRXBLNktkZWo1blFoUW5WU0pMWEhIT1ZhNzFsd0tlS21zZkZBMnlCV0ZWYWJDNHI3ZUViREp3aDNDS1JRRm5iczlKQU9MYVhneEpOTjFEQ2Q4bkRBMGp6YmZBWDJ4ZkR5b3VGSll4dlJua01UTUhpcEE0c1hQVDBuMm4rcCttUVVQUFo0c1BLdUxLL013ZmpxK2cxemE4bTJVamlKbjV4U1FDQXVKMDF2MVMxbHNxWEgxOGZUNmp3dm1LSklBOElSS04wRjFHL1ZuR083d1lhWXZ5dlgrS3RmMEdWT2R4cGtnYUVmemlnRGtXYjdIQ1RCOWhLUlM5ZkNKWm9CN29vSnhnZGFnRHhOeHN2azdIeVJwY0g1QmhabVpzMEh4eFo0SVFSMTVMeE5NL0V6aWhUZ2piajNpS0lpZ0dWNmxKazZNNVkiLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RHpBTkJnbGdoa2dCWlFNRUFnRUZBRENBQmdrcWhraUc5dzBCQndFQUFLQ0FNSUlENURDQ0E0dWdBd0lCQWdJSVdkaWh2S3IwNDgwd0NnWUlLb1pJemowRUF3SXdlakV1TUN3R0ExVUVBd3dsUVhCd2JHVWdRWEJ3YkdsallYUnBiMjRnU1c1MFpXZHlZWFJwYjI0Z1EwRWdMU0JITXpFbU1DUUdBMVVFQ3d3ZFFYQndiR1VnUTJWeWRHbG1hV05oZEdsdmJpQkJkWFJvYjNKcGRIa3hFekFSQmdOVkJBb01Da0Z3Y0d4bElFbHVZeTR4Q3pBSkJnTlZCQVlUQWxWVE1CNFhEVEl4TURReU1ERTVNemN3TUZvWERUSTJNRFF4T1RFNU16
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiSXJHM3huc0tJSHd5a3Brbyt6OEc5SWpQd3lyOGV6dEtPbGM2RDl5SjBWOXVkRkU2WDRFcnJ3WnVweDNvRTZ2YjhoVXRRNkZQNC83ZzFhcTJQdDI0dFBsbFFuM2E2WThzcTgwWm4vSWRGRFgzbFByVFg2RFVRTkY2QVdwVkRvTmpLaFp0d3NUSlhDR0ZJaXRxdkxlcEl4TENycVRneGpiVWlaY3I3alZOdGhwNnlMTU1kRFF2VnR1bHJuN1hsWFViT1F1bEk3c2xyZmlrWkpvOEF6SkhWYmNIQ1ZLVnMvdWJOZTRUR0h6enc0TTh1VXhueUNjVkFZbmZnR1dGL091UVNFTWFjN1lTVzFYWnNpZmN2bXF4SWl4TkdZNVJDc2Jub1pjTjI5QmhCanZ1RFgrVFJ3c2R5N1Foc1JIRU0zVHY2a3h6dHZhWjQyMHJ5R2FrRXNVT3d4SERvdVVZRkkvajNpd3p0eUhocXB0aE5ZTjd6alpURlFrYnBrSngvdlRKN1RZeHBvTHR3UDlXeHJHaE10NWQiLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RHpBTkJnbGdoa2dCWlFNRUFnRUZBRENBQmdrcWhraUc5dzBCQndFQUFLQ0FNSUlENURDQ0E0dWdBd0lCQWdJSVdkaWh2S3IwNDgwd0NnWUlLb1pJemowRUF3SXdlakV1TUN3R0ExVUVBd3dsUVhCd2JHVWdRWEJ3YkdsallYUnBiMjRnU1c1MFpXZHlZWFJwYjI0Z1EwRWdMU0JITXpFbU1DUUdBMVVFQ3d3ZFFYQndiR1VnUTJWeWRHbG1hV05oZEdsdmJpQkJkWFJvYjNKcGRIa3hFekFSQmdOVkJBb01Da0Z3Y0d4bElFbHVZeTR4Q3pBSkJnTlZCQVlUQWxWVE1CNFhEVEl4TURReU1ERTVNemN3TUZvWERUSTJNRFF4T1RFNU16
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiS28xU0tWQmZCQ0tlc2RRZDdEcGNoZjl5ckJPeGlIcFZ5RmxwS2h2dVBHZ1N0b0pqTDRGRVAvNFgwN0ZXWmprVW1CY0N2bUlQR3lxRUJWSDNXYlUzMENiUW9FaWJEcTdBSHRRR244RjJRMEZVNWxVdlV0bGR1QlpmQjQ3NGxGR3Zpay9ndWt3bHIrR3BZbW1Zeml1V2xSNXZKUXAvOHROYUsrR3A5cWdyWE5KOUZseUlsbWV2aVBaQUJybEg3ZnFaUlM1d3BBbGtUVE1GaHIycGwrazFXY2UzUUtBbjByOXFkM2M4OGlOdGNIbUhKdVFiTzhOQis5NmtaWHVXQWVDWXRRR2llalpyZ2pNOTRsR2N3bmp6d2pSMnFBYVdTVUxFS21ITFlEQTZsa01PNmZaVzM3VW1EeCtTK0RCdnhLQXZ4TzF5clR0TjJWWUdYNTFGMlBSN3psQTc0Z2dDRXkweEtpSW5uclNCQzI0cVZiRTBaaFZsbGQxTWtVV2Q2MzRiYVkrWlR1OVpTaEIweWZHbGRYUVFudz09Iiwic2lnbmF0dXJlIjoiTUlBR0NTcUdTSWIzRFFFSEFxQ0FNSUFDQVFFeER6QU5CZ2xnaGtnQlpRTUVBZ0VGQURDQUJna3Foa2lHOXcwQkJ3RUFBS0NBTUlJRDVEQ0NBNHVnQXdJQkFnSUlXZGlodktyMDQ4MHdDZ1lJS29aSXpqMEVBd0l3ZWpFdU1Dd0dBMVVFQXd3bFFYQndiR1VnUVhCd2JHbGpZWFJwYjI0Z1NXNTBaV2R5WVhScGIyNGdRMEVnTFNCSE16RW1NQ1FHQTFVRUN3d2RRWEJ3YkdVZ1EyVnlkR2xtYVdOaGRHbHZiaUJCZFhSb2IzSnBkSGt4RXpBUkJnTlZCQW9NQ2tGd2NHeGxJRWx1WXk0eEN6QUpCZ05WQkFZVEFsVlRNQjRYRFRJeE1EUXlNREU1TXpjd01Gb1hEVEkyTURReE9U
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoicXE1SUxJMEFlK0hjcmVpYnhOMkZ1aVhEZlZxMzZ0Ty92RVFYb1B0dWxBMDlXbWU3V2RpSFBuT21aTytSd1dmWkZ4bGNEMStDQU94akFxV1lUTG5VZzIzc0UyOHdGMFc5bGVSQWNYQ3FXOTFRSGVYQVE3ek9oTHE1cTQ5dHlpMFB3TEJPSGVnaE5IQURnd2IxNi9hRmN0WHpkb0NjNjRPcDdwbWVKQ1EzU1B0ZVNZUGRFVFFxS2RnM0JIY3BhaThyR0Z3eHBrQ01hQkRyRC9iTWZvM3k4SGJsYk9lMEU4czd2MDRINDJUb29pMHdpSjlaQktUd0VHY3hiNWNnZHduOGI2dTh5L0xlYkxJL0tsZ0RhLytTdkdybVZ6TEZPSG9rODlaRm5JcWpyNDgxdGtQWXJoZ2g4SzV3ekY5d3gxZno0ZjlacGE5TU1neUk1YXVDTExqVkxqRjczMXhhMFlPeXpySFVLc2lib0VXZUhYWDNsZkhCM2QreCt4SlBLZmMrN0dYNklib091d1ZTckpmQVRpeDhjdz09Iiwic2lnbmF0dXJlIjoiTUlBR0NTcUdTSWIzRFFFSEFxQ0FNSUFDQVFFeER6QU5CZ2xnaGtnQlpRTUVBZ0VGQURDQUJna3Foa2lHOXcwQkJ3RUFBS0NBTUlJRDVEQ0NBNHVnQXdJQkFnSUlXZGlodktyMDQ4MHdDZ1lJS29aSXpqMEVBd0l3ZWpFdU1Dd0dBMVVFQXd3bFFYQndiR1VnUVhCd2JHbGpZWFJwYjI0Z1NXNTBaV2R5WVhScGIyNGdRMEVnTFNCSE16RW1NQ1FHQTFVRUN3d2RRWEJ3YkdVZ1EyVnlkR2xtYVdOaGRHbHZiaUJCZFhSb2IzSnBkSGt4RXpBUkJnTlZCQW9NQ2tGd2NHeGxJRWx1WXk0eEN6QUpCZ05WQkFZVEFsVlRNQjRYRFRJeE1EUXlNREU1TXpjd01Gb1hEVEkyTURReE9U
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoibEgxVzZ5UkhqSU5TZTVITEtISVRidm1WSDRmVk9vZ2Uwc05ZQ2kwV1lZdFpURlNVbDhBS2pKOEtkN1pwb1BFa3FIMUZldE0yeTVJaHAxMFpDdkkvOStiSFZBV05YOFZEenRxZFU5bVQ1OVJtV2NPeEZRRElwQUsxUWJBNVluUnBwbm1JS2tYMC9mSkxDSCtuVlN5cjZPNFNsNTZteUJEd1UvYWpZYXo1MkpjSUV4NGZqeWQzK1EzVkJ2NnlxZ0laUTZhRnVkMTd2d2p0U1pPWmtueFpJeGRKYXVHekZhTGpRNWZoam1qZTFtbEJmdkFBWHIwMUdaSi81d0JUZDJtTXhvWUdxYXdkWVg3UDBCZ1Rlblo1TzVmTDN3OWg1aWxYdy8wZktnZ2J4Y1N2WEt6QTNvUjhzRkpVN2FCaFhqMlpSY0xLWUJMclUzRS96WmxsQmtMdXlpdTFJaWJMVDd3ZTZ2bnA2NnJjUCtrT01lbDBsbXpsNXdsSU1VUFpyQk1adGdMaVBBVlNDNjI3d0hyaHhDWGEiLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RHpBTkJnbGdoa2dCWlFNRUFnRUZBRENBQmdrcWhraUc5dzBCQndFQUFLQ0FNSUlENURDQ0E0dWdBd0lCQWdJSVdkaWh2S3IwNDgwd0NnWUlLb1pJemowRUF3SXdlakV1TUN3R0ExVUVBd3dsUVhCd2JHVWdRWEJ3YkdsallYUnBiMjRnU1c1MFpXZHlZWFJwYjI0Z1EwRWdMU0JITXpFbU1DUUdBMVVFQ3d3ZFFYQndiR1VnUTJWeWRHbG1hV05oZEdsdmJpQkJkWFJvYjNKcGRIa3hFekFSQmdOVkJBb01Da0Z3Y0d4bElFbHVZeTR4Q3pBSkJnTlZCQVlUQWxWVE1CNFhEVEl4TURReU1ERTVNemN3TUZvWERUSTJNRFF4T1RFNU16
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiT0N4RVo3RzRxVXhzQjV4OFVXSXF1ejBwcEZ0eTBLUEZ6TTl6SlkvV1NiSnZHdCtOdUdtN1VXOU5KOE5lNUkxVktIb1RJb0tDakl1bS9ud0lscTFVOTNWaGV1eUxYUU0rcHZ0QVVud0JuV0dnRVpGVlcrTjlsTDBVY2tiaHZ5RTdiUUllSU4zVVdEMm84WlZYMHZHVWNpNnBOUFRCbHJ0QWxDRWhpR0FtSXU2aXlLQkcyWWZwRFBnTWNUMGR4QnpTWWIzS1FFQkIzc1V0SU9mekgxYXlRemVoZFBqaGhnQkFqZlBvVmptVTdzNkQ4SWF4ZEYzV2dYUGVocXVGWkRGd1pUQ1hieWhXcTFjeVdMMG9KUkVsaUtxWnhucGlvZEVxK0ZOSGtCUGxmV280VDRQczdmOGE5Mnl1Q1UvbWRlN1JsTE1TZHdQVmt5T2svTm9RLzBFaFBsdkRQbkRQOE1YR0tGYlVLRDJJUTVkNUV0Y0ZZdWt0UnlqbXdLb282OVVxN1BaWGxmUEpYVmRUNS84OUtJZXEiLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RHpBTkJnbGdoa2dCWlFNRUFnRUZBRENBQmdrcWhraUc5dzBCQndFQUFLQ0FNSUlENURDQ0E0dWdBd0lCQWdJSVdkaWh2S3IwNDgwd0NnWUlLb1pJemowRUF3SXdlakV1TUN3R0ExVUVBd3dsUVhCd2JHVWdRWEJ3YkdsallYUnBiMjRnU1c1MFpXZHlZWFJwYjI0Z1EwRWdMU0JITXpFbU1DUUdBMVVFQ3d3ZFFYQndiR1VnUTJWeWRHbG1hV05oZEdsdmJpQkJkWFJvYjNKcGRIa3hFekFSQmdOVkJBb01Da0Z3Y0d4bElFbHVZeTR4Q3pBSkJnTlZCQVlUQWxWVE1CNFhEVEl4TURReU1ERTVNemN3TUZvWERUSTJNRFF4T1RFNU16
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiRGlFOVFWQ0tMdnQ5RmQzWHYxOUZHeCtKTjl0VXltVVVielBZU1I3R3NweDRCeUYvT2psWmdiWWFhTllkVys1TTNsU3ZDMmFuRDMzdExjYjJQUWt3VmZrZ0JpdlZSN2JMZXIxVzNuOVgxKzZtandhMVBIa3VBZTRMZmU2MDRsK3RKTVA0VStjOWN4UWYxZkdhaTBlNmxqckhFQ2VEWHRDSnljeUMvVzNOTW9sN2RnODhscjhFYVJMSkJ0a3IwMEh3eEoxY3p1bmxBbnh4ZVpzNWU3cFFibnBPYTNodFpMV3lZL3BhcmdCOGJLWEZjRjA5dXJFWXIrL0ZlSGlvZEl2WnMzb0wxc29YVTI0S21qc0JNSVlUYTZQZmRtNThYYW1UWVZubDRyQk9zaXp5c2k5dEtaaEg5Y29FQ0h1NWRQVnFLdmJTeEExMVJwUUdzaVJCcW5RVGdMa3pRdDRERHhtTGNwNWZZZW1sZS9MSldLcENwZFhkQy9idzNRSlgrWG9WYWw2YVJneU9rQ0pUMVQvd3o2VzQiLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RHpBTkJnbGdoa2dCWlFNRUFnRUZBRENBQmdrcWhraUc5dzBCQndFQUFLQ0FNSUlENURDQ0E0dWdBd0lCQWdJSVdkaWh2S3IwNDgwd0NnWUlLb1pJemowRUF3SXdlakV1TUN3R0ExVUVBd3dsUVhCd2JHVWdRWEJ3YkdsallYUnBiMjRnU1c1MFpXZHlZWFJwYjI0Z1EwRWdMU0JITXpFbU1DUUdBMVVFQ3d3ZFFYQndiR1VnUTJWeWRHbG1hV05oZEdsdmJpQkJkWFJvYjNKcGRIa3hFekFSQmdOVkJBb01Da0Z3Y0d4bElFbHVZeTR4Q3pBSkJnTlZCQVlUQWxWVE1CNFhEVEl4TURReU1ERTVNemN3TUZvWERUSTJNRFF4T1RFNU16
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiVTNaMGZxM1FNMW52UnJzdlJ0YmZ1TnN0bkpTdjVRdGVGOHlmZnQrYWV4UWlyajFSa1l2Vng2Q1JtV0hlQm9HVDdMc2Vhc01KanpYVytrdHhBSnJxS3pYQmN5U0pITlJZRERkNEtDbGYwOHh5UUdwVERTeXBoK0JrbG52MDdPV0xKelBENTZ1WlFjUnJzay9NaVJxVzloN1k5ZlRvTWg2aC9kTXZyT2ZDZmNwOXFmcW9hSldCcDUrN3ZZRVJoZkpVVGpFdng0eDlZb0ptSnhOYS9STkdUR1ArSXB5TzJKcWUxN0kxY0VIblBLRE5nckl3TXd0cVF2ejIzYlBicW5pUlhINS9UOGdiQlJVcFVpb2ZDczNGdWlwOW9vOFNmUmNtdjlvUkE1OXN2b054Vlp5a2dtSGRqY2s1NFM4b1FrVzhmQlZCM3phejRJb0ZOZnBjb1g2MVJ3elpDemx3UTlsaXk2dnFPT3ZGTjVlUWVzTDN5TEFPYVo2YndNaDF1UkpMMFZOVSsxOFQ2aE9nYzdkQWRqWkQiLCJzaWduYXR1cmUiOiJNSUFHQ1NxR1NJYjNEUUVIQXFDQU1JQUNBUUV4RHpBTkJnbGdoa2dCWlFNRUFnRUZBRENBQmdrcWhraUc5dzBCQndFQUFLQ0FNSUlENURDQ0E0dWdBd0lCQWdJSVdkaWh2S3IwNDgwd0NnWUlLb1pJemowRUF3SXdlakV1TUN3R0ExVUVBd3dsUVhCd2JHVWdRWEJ3YkdsallYUnBiMjRnU1c1MFpXZHlZWFJwYjI0Z1EwRWdMU0JITXpFbU1DUUdBMVVFQ3d3ZFFYQndiR1VnUTJWeWRHbG1hV05oZEdsdmJpQkJkWFJvYjNKcGRIa3hFekFSQmdOVkJBb01Da0Z3Y0d4bElFbHVZeTR4Q3pBSkJnTlZCQVlUQWxWVE1CNFhEVEl4TURReU1ERTVNemN3TUZvWERUSTJNRFF4T1RFNU16
eyJ2ZXJzaW9uIjoiRUNfdjEiLCJkYXRhIjoiaFp0aXg3N2liYlVXcWdZUEdTZnREcklRZEMxbFQyUzBIWGpqZFp2VG9hLzU1RUcrWGZaYVgrMExIQ25CTEw5NklUOUI0YXpPQ3N3R1I5ek9TcXhEalRCdTNuTEZVWTVjR1FZKzRlVGVhZExIMXNKQVlMOTBBYlUvb2s0anhKdmZlQWkzV1p3aTVObjFUTmFBL3VLYnZ3RnNNRWlTQjZyN2oyL3paY1hDTlhKc3ZheXdFSGlSbU9nQ1Z5RHBQR1NMcWJwOGgrdnNxbERGbGUzNkoyUDlFZmNyeHJ2a2tQVEpUYnQ2bW45cmhGK2RHNHVEMzFwYnR6KzhHNWpmaHdnKzZHZWkzcnNxM3Mzay91Z29jRnRXL3JyOVFFL3hib2kyRDZaaGVzUFAzcmVzTkxDaXBTYUdKN1puWHlmZDB0YjN6OXVsUVgxQTRGQjZpeHVUZW9maWpQMGpGQnlDTW9WQUxMcjNUUGRaUit1cHFmUmZTZmttanVhaDhJNWZWb3RyM1FoMEdOSkVKRUQxS3B2YSIsInNpZ25hdHVyZSI6Ik1JQUdDU3FHU0liM0RRRUhBcUNBTUlBQ0FRRXhEekFOQmdsZ2hrZ0JaUU1FQWdFRkFEQ0FCZ2txaGtpRzl3MEJCd0VBQUtDQU1JSUQ1RENDQTR1Z0F3SUJBZ0lJV2RpaHZLcjA0ODB3Q2dZSUtvWkl6ajBFQXdJd2VqRXVNQ3dHQTFVRUF3d2xRWEJ3YkdVZ1FYQndiR2xqWVhScGIyNGdTVzUwWldkeVlYUnBiMjRnUTBFZ0xTQkhNekVtTUNRR0ExVUVDd3dkUVhCd2JHVWdRMlZ5ZEdsbWFXTmhkR2x2YmlCQmRYUm9iM0pwZEhreEV6QVJCZ05WQkFvTUNrRndjR3hsSUVsdVl5NHhDekFKQmdOVkJBWVRBbFZUTUI0WERUSXhNRFF5TURFNU16Y3dNRm9YRFRJMk1EUXhPVEU1TXpZMU9W