Skip to content

Instantly share code, notes, and snippets.

@phra
Created December 1, 2017 10:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save phra/69710c8a9ec153b6359448de0003a747 to your computer and use it in GitHub Desktop.
Save phra/69710c8a9ec153b6359448de0003a747 to your computer and use it in GitHub Desktop.
-----BEGIN PGP MESSAGE-----
Version: GnuPG v2.0.19 (GNU/Linux)
jA0ECQMCw/LnvQztV8BgyewTel93SMoWhYsFecAR9qduEmOP07CmXS5x+YeDIrM5
C6AU+OMACCpqIjDBjRNeoH+b2t7VAPg6Niwh/9tAj8Me00zMrfyAP/dlpcVG/Sz4
vNbS2VFvgfp9OaQJy3kCssWB1QaocgfRVYrYkSIcshcj16m95ygwETXRrevwXS8/
6hlhSLOj/GX/2d0DksNaZQO5uxh88iusx+NRIcxOPIOLxGjiEd+rC0l6g4e0O40Y
fBNnShjUuBvSPK8RZmCFQ1E2Aukoq13cAA3acQcgnfgs2upKILyad/KdOvRX+o5p
gwjNZsiBU+Lz6sQ8EVUWk4hiMa6zKneu4KB0/xSj12e70YSXVMvy4tVWO2/Z5ca/
P5Btw64EEMIsOVAUlZEIQ5qMdeNPqkBBUHQ+i/mkKQe0jqkBq8DQKxz0ngQGuwtz
e2fk0ehuuFEizPCDyyoDYZEBs+yaM7Lc5bwvD+fBGib+PtpSr20rBYH54yXKWFQ7
4aYoNX+rYogW+iskHI664YsXrjkyk8YuF9Gl0oRGS1RfY6LU4aa60OEYp7BVH4wf
TZdTfwRwJvLLKTPw8/8neYJBc6v3Dt6RncCzSdn3/D/6cbm6xN4UN+ami8eDjiGQ
AbtX7sWjXxHHnpSwnXMgyO/K/fYaNgpIPso3JPS2pAK650sA/36kpJW+AeqoA0fi
s63uxeM9oXL6nhFv+rQ2JLWK/iFlOBAVIGTdd8Wrnkn8HSvuTtrDZh3t1ZQ7D4iE
MwyOQ0LXf7d8XrY+6ERf0mv/DPnPixQU+OJF4aqpSZckepC4wSC9ND/yelXAuk5G
TmJ+hciyZ235kZEjZW2sLSzJdO5urLc2SY8C545Mwv77E/tbm+WiNXzk2JxTYsAr
O5A8tW7sTzt6zpia/yw15Cgl6NMl5kzGd7SYIX9IVh233ZgYesw7ixLPZ35A/0xG
VD1hLaDnDsE+XiyaOXD4RL/GRNUGUmyUh8VsC4dt6yF71OSwEZ/cXAn6pD2VQV72
FSmXP5StPSApkWduxnBvpQh36zHO0XeOCBYdyIRnVovU/92gnpkHtfCAK8cFU3JJ
PzpN1ENAVqXHk5PLEEUfQXyQE4Y6GI+12cnx9BRjwkFyJWr8Nctq2Z3jHAarO0zf
qkijNNCo9qp/Si98M+h9hBcvZ0R3vGdZ3vUD3G2TAThBttQziFnz6Ov+stwennWW
+UKg0NLh1tKviBgjaAbfL/oDgNzMZCKxwnGE+wE8/9pxY2GZkk1PS0bCIuI696rl
GujkZmvCpSJBnTf4yvuODHmWQR1reaWMiH/OIzeoaoALOc7soDZbT/i1FQLsOQLk
p3NqDxpKuODV6sseTQMpsAlZRhbtapOQXDl5g4vBAi35idjD8HMCgQWbdfGICXjN
7xtpeZjTlS6658/PVuTDlwUuUTlJPyPx2LWR5aELZjcF9xhf/jjRbPKUOG+vYP6p
fi6fYsGcj3YuqBrcYYIstu+s+e2V8QlUcoqSpU1MDfnydCjhNLGhTQwg+Goa/gqQ
xcqz5Mi7JQOVaDUG/hN0lZYnzMaRKaAduXePTKBD85/xWjjCIVo4vz1XSqMHXLyX
CsBNVc5IP3H6mTtWJ9ffJeVAJmZ77fanndjmj3qxfCmYhRc0ATfRD7xrEkZpBKH7
g39znEC0lntqT6/2rYVM/O7sVgRHUjKAF8c0Gw0OIi0pIKwaOVBO5BaYzndVUNpJ
/HsD19haHJk62WX3JCrDA8Rx5Bje7OYsuSvZmjZT7+6msi4xEsHBdZx5P0SLbi5v
TlncPUdpvv7iBvVJ5FFvBp8uVFJe+ZwGBeo3KO4qiTuljsEJlsCFY2DS6++zDbOQ
BJjEc1rxK7DfPhx3MOLifQZhz4XGLV1SHTyMwJkga0/MlS7nhcgHkVuU4SfRIKkk
CJbtNm5Z4QjjSoWh3jmhOPEH90oGDuKSi+jPJDxDODuYHsBHNznG4PgIQChYxysc
A0SIixRJDwyJ3Sr6jv91AtBVKdfCfoEILT4ZsWEkQXeqjWA/or3zHmaZIrylknOG
KkRRr8rAXwk9ybhxPbEzmAi3nB/JmBjsmJD2QkamtH0KZBl2g3CMQkBrngvhzvki
h0yn2rio+JRsbr8bLNr3nrh7NW2jwLVSbrYy5wDs7R98AWR+swUDI4+J6C4zpvhX
UP7faEILeO0U45IMqrthoTGOroJ6U2wEkHiDgJRxu3rSu0IaW9cq3ANCMpKZRKh5
An+9IY2P0aXyfTzcYHKk4JDlf1PDNwq9RWU1D4wwwB1wM6UGrOcl6Wp/1pvCiRyF
gWwpcy2tNtKmxXyIPd/+N19NSCtFlirS2xOlU9PxZK1q0EDnb5Kxajc1XAxa5kbx
bUpljCNi71ahY8tEmwSf6vELQvD+dp85Di9Vc1sQ7F23sx0N4f7xDULLbztJ+GP5
s3w6zEwGvGZm6PSk4itttDS82ujq6RyZodzd8YqixKQw8Es2oFt9uXas7YTNNYAE
zZBjXEUTazOJNJMe5g8OcBpuhttN/H0JVkJQECICE0M4iITBn1Mwz6zA1JLviMh4
Z1vnZzTLh3yCu7c9GtrihlJgTOwK6bxGKWtk9GBSuWNuYIYkeFFkx8zSJ309knw+
PAbXFoLyL/IZlSrM6L/+naG2RqGUSgtn6I/9rL6trgq4ogzK/pb2+w9krxxPvoUx
6yUB/KEoZa5IGxmm4DNw+QkURlJVS3LMmS82Ek7XXOClfZ4eJZ4Vibpaj84qPapG
ltM84veqAGp7vHF8zbOWiX8GX+j2fjPQK1Gdd388psF2QecBgvie3+8nCzogEOGq
CAqu01EPX8neWhE0RsIYAMip/IpYx8E8Fj8rGoFoKKecC0UuusoTdy50C4yRSkxa
nHo87owr9oI3ju00/qcfc0a/6lfbIzSJbEMuGPhAc2Rw8SJetxMYRDg/hbFQjEEB
wz89iij9ksofu5tXhL9B5Y20TJMvQ5UyMqhdCRmoPvyKJmtFwIWX0p+5sir0Cdbz
SXqid3JsIWb4whzTwDzDfAiWXNOBUb+YhpjJrX8bChdJ8OPCf0w9eFmyho1WXYJb
0XNmbcuM+v3Rnf1mPXpjzsipTqtxxz6CptZllWcPH9YdlKorcGLQHmRgt0vljP50
0AXGHPKD2dcXTrF7x4sv0gc1XtVG3i19SuQLNd6p1xdRaSqrLoMHxcCr8/E+yphT
rOdq1bORdT5Jb5sQM5XzRoQYbRhw1FPccJX8Tiv8pOhun1g7wDqIW+1fAo5pRkal
Pge0YzPRBvTSpsImrrhw8w00O3pidoaHHb17UPmcNITzxkCbcA/9R8EpxbC01YEl
lctSPX92BYHWfb0uRu1SwjqPwwa0lY7KvQ3nU1+LRd3izSHScfgL+EO4HS47nh/f
HxFJ2AlLewnah2EGuNrYFlmEJRXGDvsPLvOzumqxooI1cCJ89BznrwJcvox9gjVI
LJOZ+78smcwPBDtHV72N4iRApStmfgYuS6Sc083+a9ZX/+YnMK7zreGzsNdna8fo
v2VjwZdE8fKPQcrw32FS3X0NX9k2UudG3PLU2jxfC/xtgzOfmNwGt4zlwx51eHBu
wMrZ6omB/9jO69Tju/5DPUIoMMFf0lmjdpYaNdSTBxq4T6K81BWPbNfF8qZccT/A
jZ6EArMZ1Kd0P8wGzpWDdTLKUPe1Cu7H47XQ7KlwQSpviQ+YnqSoFQ3JOE/RK+FE
NtnfjAIptigFdMWxoH+vYa87sxsKyGZj9Q0chMvTgpiOaVW8IzeGp32G4Z+OIn1f
HLAp0yV+0bH4Pvqls70KioxA9QSIwRjDQfIiJHShbP+QUP18xhJm9KX8/lwXvP0n
Pl8sXjRDfmnpPSyPY6mDt6FOZ8yyfSdaBKuYn9P9QlBoS8RghM2rF8CNRXQkTaUg
i40Q/Zh1cImQs2syFBe2Hai3kMbNHMSqxbRiCJbhFfuYDJfIH6Tl2HAHDNM9sqsL
1TSZ2z3j8CF9ALqnjpb3Ptlg64bKZUsnPYBIufQ6/yDuMdnT6qRJ3+aucnrytUom
yPTLfuRz1UCyES7gawVuhJSyFRCW9X8fJQbXrDDq3Fubm3v+/1F3U/nk2ULCdSMd
KOtYY/qcxRLk0QxctoPDnEozwBdFzBPqXGIrXD+YPZr/kKJcPeDFiX9DAWrhLTFP
UCwnDzt+xhXuZ7XXtiUD3DbtJgVoNEILHnZpzN05W2tzNiETqXXmllG+u7yroiRq
QLe7OPMS6vAS92hkc14co73g6AvfOa0X/CA0juX0xqb2LWp9PqKoDvC/h+GdY8hi
x83YxoMrMbSwZjySqDMuLd+bSMVqgmR3Lo3mWQOkrfWdlo0x5ghLnbLX8EpDOB+e
6jNjEsCTsAx71DBTFhvEvjrqDqTYv/NiHd/0wp/7bvkEQVgA+zkZs+3/+NiVYWDX
Zo8ZIv81mvoZvLZ0ZR1BAbyG7n77htAr8f4eOJqhF87lIhUAORy5ppchQeqJSYPA
r85om9skZ8Z/AdiYvjDJfHkl+ih7EmpsY5J6s5yNweiCnk15NaHT1UyrVudxnBPw
B0/029PUZldtHpYo060cAslm/0TFpyJe6tVlEnhpmtTWUJYJAfgShrNoRqQn5Nv2
fcdaL2YUTB70gaYEY2ZyCDNmlRMG+GH8xc30MGkzTQzGg4KknSwJ3cT5DOuVXjrp
mQE12uzghMU1arXckXshPzcP2ldjVafslaT/C7vqiSqFjLs78BmozZs1uIStPa8T
1cGxNogA/j9Jgj11vrhV4YPaAkLezV++bEQfut27VK15v4bYp5YYz0cvOytBIaNP
QqMUIY7qBAlWzjhHSfLu83Ev4i9vYXhOk1w7+9iWViKHX2jMWTzUk4CApYZbtX3P
Re7HTB8uXkFKJl6pdqbojktusRsLSCxZMyyAGxT61gqFsZSmG3Ojf70+EzNSofBK
NAdFLgSGZVMmajHwQGSWOSJE2INMRsQbr93Qb5g1SOIc84psjm8pSX/tV3ZaaF8Q
K4CJdJrF1Mbfhgl5kdKGpzCMeAyydPd3X57sov8zjaM56rZhrKprxHMKC5yw0oIh
479mH3xbVJHRDSUxui32gjhD+D1QEnVwHXHxX7c/3M8qciJLiBqKomP7ckMTz2xL
dpDFK19FaXEb42MUeEpjn4bYc1mo2CDeSCqhPQUn16JTr15Aps11wo3fLT63mdGU
NqL81NoB+dOsL4Fcw98NIPSqoQTgTgTIBV5EodbrevN7Y7Zjdbnir3Zem/jc6KUW
jVVQbe5uWXKkiivRfSHXKHXSo9CYQQpKuXiTEaB0W2wxBNJagYdDr3/R2AKZPZR/
ZVT7S7ZJJyS4Gd1yEdYs2BeSNA57+ncro/vZzURQaPOpXcWhY+Rf0S0moDGaKcV7
Rjl4IjBdAPVA8AfBp5n5GiH7qd/lJkp6QpCa/4yvWkV3jy6R0wBFsIgzG6tkhAQA
WR+i5OwITdbpm/GQZh30sGvJP14J+PKtR51I4QoPVjhj6k1VQPnElbMTzmfX+paK
kJ5qVUhLeN8JKWg933dZn1CvoJAEzvhRAxKLU3KBqRUTa3pJkZd5KpVeksZuKAC4
cLp89FzAAf0zSps+OshdUeX9ZuT7IU/Lx/AoNrQ4AdbbH+LMi5ek3HenClpDnRK9
tM7F2xI3xIwccv3WxAwnMKsjGJbHep702G+7gK97ARflL8hfgKR+L3ldhv8IW2jw
k5gs5B2masbFSAbdFiMbXyXIjCbT+xEWsp0/tUVynDta4004XJjTXhUKcLRl3qiQ
Vwr68uBYe8Vuraruxq8uiJhZ+k8r1T8u12hhTbxaAFufSs1ZykSDMA7tWOQ6qdPw
AWgl5Nr09v7AXxvvvNUDD21P+YIyQ7YIeLtrLgeZEdzbNgap1r5eAWUYJrBCtDEt
N1iWbD32MQxTs8nRZKF13gSQUpCHa4vdpCMVLwRidbInd/5NdPFUdmotKnrztUIJ
P4YblCWdWi5Tt7jiLxWqf30GsUPIk10PNlrWW5z3Ls6HtawPoxx+DjvhcWJx7bW7
4KQUcEihcNDP+ZvOxJ6ATkommB2KoTrZqOcBXaYog8hBDAhwEdStO6UsqYuV1OJ+
/v0aUu2nc3QRHUpHR9kBeLuD+K7zn8oQv+NlZgfEv9FrnSTMr59KmgbBZlUrSZHe
QEQZhoaCs0B7eTRtnw1I66mwwHVbHmVwumIAn9R1LsbJ/l/Fo8KlHvi21pYiG6yS
MI7x1wTDFDRCKvSrcPuTLYmHKN+BOUVH1lk6wkXjaMSdvD4aunSKgNDwjARrzVkH
6TR8JsjSdH0Tfu7NhACWtS2CHoilTxW6e9jxTTz2BQ2tNlJXP/uxmegBbl8wv8cj
KzaKbU9NiJd7eOefYE8tQYQGP1E507WXN3tgNCTRoQZ2fZBzhXoPo9jx28/BY7x6
1oNjOWQCd3pg1cO1f2Vzbar4023O4IFTGFi1e+8Pn3TrxzBPAF6Va4ktRfmTL+RS
Jg/mMQ1/bvN7uq3JLGN8dpqlOJPG12HjDWZLoL6w+fNM/A/FbyEaCplyOUoxzyLt
iI520oVTSsclYmOcpjJKpvB7I8Xy9DcYJmOR8WNSn8JpxObucby1Ha3jxd+8NUni
7FEG1kdIexYsZ65HpCQKHOfQX5DNIVS2U6IRO24YA3PFYgNMOgYFAbnMcdVg4dIB
khiIKbdpp2bJTaiyXQmNRwVAOcbNvNrIPBZtAKCsPdxN4r703WKXF5YXrAVy+tOH
uAtjycJT3bkpuQeKh1wNcjM4eKRolQe35oRs/gnKvbVa/4LjRjG4w2LwChvBIzR3
xHDsk5Zlm894fm8vodEwGb9h8/xzRO3+6F93UTih8c4x0yeA0dhsBChTpVCiOexr
Y0rpoPhsH6cGOeSAEqmL1BZcztnajOT9uvBxjCHudvqoMcgwikn/YYH3t7VlU0mM
3OKomEMN4frscAoJYyB+Xu6N+s+37VcaKP61/Ga0sA9+yYPuVp13SIxPPPgDrMp7
bz1KVTNr6pYApajr9vy7/8wrSMnmg7a5VQ8doMWHJ30TBangwUWQkqVTjvHeTJ3y
5IjwUnHEBnw128w0El/M6U+0nEQuxN8Q4yevDTL4Qeu8w8QnmzdUjGbyTFE0s94T
3kvJG3+l8zwv3igTI8ntpaJ+yZSwJtFLvfXEv9gWqVkg1tZFqqXVWu29sPmaaQ+F
fADWhgh264BYfsnoneWKPHYiGQw5BbSE/6DaVVljOxaUNvf3FZ2rQ5Z8fT5yv0JW
NTmQTNQjSagyJL3uBRay3Um4Iu90uPk6pmseL2oyany+/uePPrnt2D+BfWdWjN4B
YZBguVvDv97cqK9y+9hsmu/JEwJ3b4h/57M/n/px9jRbv/hoPw3FpIOquXiMD0H3
ZwlB6avHHxBZPr2IfRmNpCl9cjkvsikGtwsjh7tqPykskpVbFqcA62wrVYkk+nxc
E9xE75IsRFLCXEnELNb8A7JfiAba6rz2h62LpoGD8FkggmzqLYk1YU0dUHNzpiUd
r8Se+3BiXiaQTr7JRBlkj+26mZOVsj0P8h0LeB/vYM5hiNHAkguf+5jE7DCfjlCr
U5keKSdUi0ydm7FjsCEREmmxMBTvwO0V3ag6e7Ve0np738p6G71trV5zAFhtXnyG
DeOwc5APjQDMtdW4J3hXRoRZS7lLxB8wox7sVplkiAGlmVheKy02llAjTqCJ0r21
yAGQ2eSIV0JfK3qoJZZ6a8KpovbthppY9aPaBmxvokVhupegknKjAfMcdnucdAhi
LP2zufRvbQGVPqYxjzQtDeXikClcsBW6+jvwBcGB71AZiKUqyf1XQhcRaut0r+YW
rx+U1GqUrIJsM1zVP2y4rqshC7x3OCJZhMKlJK3lylOIMu31paD0+vM982Q8Yx7s
1NPjHhU67W0/5T1PAuDE94msY4IKF/6aIzWpL1gaThfRUw7uBkNySdbEmQm028Fk
BvFe+AyFLzMvqqjRtCLSmw915vK4cCYVydhaxIeTLSclU5CFWsUs
=Pv+O
-----END PGP MESSAGE-----
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment