Forgot to push for ages

master
Jonathan Hodgson 4 years ago
parent e17a042f52
commit 9d8c010bad
  1. 44
      assets/css/main.less
  2. 15
      assets/key/jonathan-hodgson-ecc.asc
  3. 56
      assets/key/jonathan-hodgson-rsa.asc
  4. 996
      assets/pappy/password-brute.cast
  5. BIN
      assets/pappy/password-brute.gif
  6. BIN
      assets/prompt/focus.png
  7. 97
      assets/rev-shell/reverse-shell.cast
  8. BIN
      assets/rev-shell/reverse-shell.gif
  9. BIN
      assets/word-complete/currentWordComplete.gif
  10. BIN
      assets/wordpress/login-username-enumeration.png
  11. 2
      build.sh
  12. 1
      content/blog/001-fuzzy-search-hashcat-modes.md
  13. 3
      content/blog/002-the-switch-to-zsh.md
  14. 8
      content/blog/003-exchange-mutt.md
  15. 6
      content/blog/004-tools-that-make-my-life-easier.md
  16. 2
      content/blog/005-keyboard-driven-firefox.md
  17. 4
      content/blog/007-mutt-setup.md
  18. 149
      content/blog/008-current-word-completion.md
  19. 230
      content/blog/009-upgrading-reverse-shells.md
  20. 207
      content/blog/010-wordpress-username-enumeration.md
  21. 140
      content/blog/011-my-setup-jan-2021.md
  22. 110
      content/blog/012-starting-out-with-homeassistant.md
  23. 11
      content/card.curl
  24. 4
      content/other-stuff-you-might-like.md
  25. 2
      templates/blog.html

@ -79,6 +79,10 @@ body{
scrollbar-width: thin;
}
body .commento-root *{
color: @gb-dm-fg0;
}
.container{
display: flex;
flex-direction: row-reverse;
@ -150,6 +154,30 @@ img{
max-width: 100%;
}
blockquote{
border-left: 0.5em solid @gb-dm-fg3;
margin-left: 0;
padding-left: 1em;
}
table{
border-collapse: collapse;
}
tr:hover{
background-color: @gb-dm-bg2;
}
td,th{
padding: 0.5em;
border: 1px solid @gb-dm-fg3;
}
th{
background-color: @gb-lm-bg0-soft;
color: @gb-lm-fg0;
}
.blog-name{
font-size: 2rem;
font-weight: 400;
@ -181,8 +209,6 @@ ul.tags{
}
}
a, a:visited{
color: @gb-dm-light-aqua;
}
@ -212,7 +238,18 @@ p code, li code{
}
}
.tip{
background-color: @gb-lm-light-green;
border: 3px solid @gb-lm-dark-green;
padding: 1em;
&::before{
content: "Tip:";
text-transform: uppercase;
text-align: center;
font-weight: bold;
display: block;
}
}
//Pandoc styles
code{white-space: pre-wrap;}
@ -304,4 +341,3 @@ code span.st { color: @gb-dm-dark-yellow; } /* String */
code span.va { color: @gb-dm-dark-red; } /* Variable */
code span.vs { color: #4070a0; } /* VerbatimString */
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */

@ -0,0 +1,15 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: OpenPGP.js v4.10.4
Comment: https://openpgpjs.org
xjMEXMLhpBYJKwYBBAHaRw8BAQdAdP4j18qDM+5einbcOoMmbygC7blelM2D
1WjQ/QK4CzXNNSJqb25hdGhhbkBqb25hdGhhbmguY28udWsiIDxqb25hdGhh
bkBqb25hdGhhbmguY28udWs+wncEEBYKAB8FAlzC4aQGCwkHCAMCBBUICgID
FgIBAhkBAhsDAh4BAAoJEESBz3saoNE4wecA/R94tVukEZISL8dPYN17+JLl
QYo5U9NpSlYM1bjbKdqPAQDophGzo6KaCwNkm3/05xJvf+ZnsOBTG4PkvPFJ
5XZZAM44BFzC4aQSCisGAQQBl1UBBQEBB0BgX9KpJi1EvI74EU5jb4PVjo+H
0DuuN58sodzsIpQQDgMBCAfCYQQYFggACQUCXMLhpAIbDAAKCRBEgc97GqDR
OGapAPwNdh8veidfCqZuXoyBfdRGPRv9zb7pA3JvP85hMsTxXgEAld6Rqey2
dw17AxOy5uHs/nj/3Zwl2SvGNR4htgPv1go=
=qcW+
-----END PGP PUBLIC KEY BLOCK-----

@ -0,0 +1,56 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: OpenPGP.js v4.10.4
Comment: https://openpgpjs.org
xsFNBFyP9g8BEADc2ljwXe+WWTGXr4m6A0MxRu0CDMO++HayoEt7OynSPyec
kHs6k7tPjwJ+OcxAGiQ/FD3yuJDR/5xxwL61bqiF8CTw62fA2vS8J8PNiQ+g
wDrM1Gl/iUrRuD3L68NTRk7Ru0l3QIUCRwf/fphSP2D0TFT8JP8cLkAcRhee
3oElE2Gi8/qowW+xzXRcYLQnxks22Nai2p1SCzwIUSxx06lvfapuf16FVpZO
0+U+E73r2XDgFVk+MhFugZ57xgnBwTKWCorzIgQXU+DLbeFZp1yMS6aMQENi
mTX6ATLgDxVk7JeNjk8scQ/pqPGkA5oC6agxBJJWrRn5/8W13//7EQlwyMqP
zWanioniavwvX1PkJgLUrAuCjderqTKrIk0cor3H4pAqQYKySFdOGTX2b28k
WO6M15yFoRYLzIl7kKzr7kg4fXF/0TptkrbLmQD0HG2iqOPcB8vp6B7qPe7T
lL3IXyv7C9kSL7xhReO6hg7pjdrWfp7n8ZOPXhj/jmmjkx3+8wsNLga80s1C
uplJveuGSO4OUyrekt9ZRtL6KcT/TFoB98x/I0JPr7lsF/U3ObzExFuBTwtl
pOvKmhbcg8vE8HzwROlAJdtukonCtlMNo2Gj9+QlujMUH5EOIMhc+uIh6v2m
SntJ3mIPMgA3yZ6XsYpK8Bwy4yjJc+XIvtoF0QARAQABzTUiam9uYXRoYW5A
am9uYXRoYW5oLmNvLnVrIiA8am9uYXRoYW5Aam9uYXRoYW5oLmNvLnVrPsLB
dQQQAQgAHwUCXI/2DwYLCQcIAwIEFQgKAgMWAgECGQECGwMCHgEACgkQ1slB
UCE4fEg2EhAAk9RDhBV4gaHlhNejUQhxwPrXJ2C/mHD2FafcpsNrWDykgfNg
9iqQ5gN57xuHNK2MWxK0qTEtKBlW4KpYxoyG6zvt2ebpE2FTx/tCKlJ5BPHn
Dx8g94MPWcK08eXQcS2BfM8PLFDmw2+B0m+aJ+O94SDgsbi1SDM6UuqyodG5
4E49Lqhk1Rl9gE43NYCi1QpRoHFkd9MQkslHEIuvAY544AQ8iO0jXowUSIym
OBC8bXqWdLaS9SY6tTDFtBB56ClyYidFK1buiJPV/k8LYmgZy2ep463CL4n+
1mjxH8LMW2Ywx80XQx0XXJxDgt5XjRfzX2btQtx8PdatXLUxp97kL4G64B2S
BJs/B7asjRtq3PkFl+LywrguyLyZ3xlcsJAeeQVDlw6lDWcdyK6mZY5LVNA2
wtom6Orn4ctx3YyaQEHSAevkO5YTk4FA/s5/ToLtV/lyHJ7oy8vmsbnri+i/
UHOeevkCgP1Y9Y6/FH4lCJ1Yqtqmq0rT4qJnr3S6vFkPL8lx+aeTcvPm/Aeb
Qul/CYlSxmUAum/pA1Fsq5heRD1mxro9kqq95cSpIsdFmgoVOkngMPf2NPVt
4Y/VLHBoevd327+uUmjl1VjpAaccT6BX4J57dCjINQcrgAppAvMvpN6eoebk
XYaycTnSZ+Sd2jIWEKxadAPBK4cv1fXtoiTOwU0EXI/2DwEQAK9VW2MPxr96
GddgjO7Z8XYUKtgMWIxGtD9/WYGTnYGkje10QIGQRlsDtiJAJUBcaSNDIxrr
cPE9n7SkaaLUx9IH7X9g6LmiSPwdkI9ImX0AOzyjIrzbXcttoyYFrsMovF9B
dzjzDAzXZNkncB+L1GWvNP1UsnTWl9o/wVtuyWVCKSh1JArDC0QES4ysHoit
fu6ezx36woO8SBCY9lvcEJb/5kp9UXnWND9imYYrDj0+htEvq+Ne91I8eGMa
uUxBeiBgRwMzG9tXwJE6K1SeGu5jPIDfXfmcyZUlpRyOChTDcTRM1hPuLQXL
QIJO2RgtK6B4cQBZ8OyDSxgMlVWpPyCJFMAABg24hJGonNavIvOr7zlTCXt4
bLCMrtgrbSFws9o7a9p9SE6RM00PQgZurFUqPWHOe5fXAWHhmINl8yLH7h7T
gXebUFJhf50YQsFJkjy3krOXWyYMZ2Wlc+TLItMVSoVfmtHyQj2KVXcGOt18
l+c9LDW46pDGFrvMMU5eo2sWm4PNO7471SzlYybORu8LyhrgFSDyuvb7r53A
mW4c7sLaoCd3mg3LOUm27pOgDjC4n2f4ev9aoYw4r+H35xXIQS85kWYVIrvG
AZLWl7GBiOpk0HiaY01o9yx/ED9oupxh7TRvGrNqg81tHp+h+8HG7SNO10wp
f+ZCeqqJAqHJABEBAAHCwV8EGAEIAAkFAlyP9g8CGwwACgkQ1slBUCE4fEiW
MA/+PjF0xU7RMhh50lHkzrLQ3iAGjV8GV7HzdjIypqpSpReODTR8iqfM6WDu
CCntEUTPaGnCBdpIyOA0gRz+Lpb43JCAUvZiw5EsGqdZZuboIskSSCKszHpB
QxuJLcFpT8ELqiVEAAD7lkQGDYu72iME7+rn3tMG7NbuV3ayVF1l2C4cSnC1
nbDDxtdq0jDOQPZ1rdqkSnDJcB1YIHblOlHcuE6dyOdtuKBnVcgprlevrPgk
nefHyBnOk1PF9HiPTkNFRo6RvD01kPJkWV8CRicafL2+y8sl6nRgjoNMjYbv
D3lyHmhPDxWt8HlRw2sm3DrfVdb//4IlqDu4qCMsRUMF7Bdh72rHkq4j7quC
l7edYn0JASetV4uanoYvFDPRiIE+vXnME4scKCiMIg+nMM3+7K5cEjDZsOXg
hmvK4HItivUk1e0adxeXzPwsfLU0HyGovumN39GLxV0fU9nVTTT4jIR8rpSL
f8C23A1NfZMDqoL01RZ71uA6SRcsznd2debM5YtRGWJWI24f78NMmFAeX0Hb
FM1aKsSfeuCYSrmiiDUttHNKUCjKgx+C2w68tTuYFxt4GI25dMFr8OszVIt9
hJV5vVOp/78gR4rImj9aaa8z6vptmrM57nPk1U/27s2Qf4k0C8UlnaEihMXf
YDlctaOrI9VzScwGG3H7z+kzCKU=
=h4NF
-----END PGP PUBLIC KEY BLOCK-----

@ -0,0 +1,996 @@
{"version": 2, "width": 136, "height": 59, "timestamp": 1590067123, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}}
[0.009294, "o", "\u001b[5 q"]
[0.009609, "o", "\u001b]4;0;rgb:1d/20/21\u001b\\\u001b]4;1;rgb:fb/49/34\u001b\\\u001b]4;2;rgb:b8/bb/26\u001b\\\u001b]4;3;rgb:fa/bd/2f\u001b\\\u001b]4;4;rgb:83/a5/98\u001b\\\u001b]4;5;rgb:d3/86/9b\u001b\\\u001b]4;6;rgb:8e/c0/7c\u001b\\\u001b]4;7;rgb:d5/c4/a1\u001b\\\u001b]4;8;rgb:66/5c/54\u001b\\\u001b]4;9;rgb:fb/49/34\u001b\\\u001b]4;10;rgb:b8/bb/26\u001b\\"]
[0.009628, "o", "\u001b]4;11;rgb:fa/bd/2f\u001b\\"]
[0.009643, "o", "\u001b]4;12;rgb:83/a5/98\u001b\\"]
[0.009678, "o", "\u001b]4;13;rgb:d3/86/9b\u001b\\\u001b]4;14;rgb:8e/c0/7c\u001b\\"]
[0.009927, "o", "\u001b]4;15;rgb:fb/f1/c7\u001b\\\u001b]4;16;rgb:fe/80/19\u001b\\\u001b]4;17;rgb:d6/5d/0e\u001b\\\u001b]4;18;rgb:3c/38/36\u001b\\\u001b]4;19;rgb:50/49/45\u001b\\\u001b]4;20;rgb:bd/ae/93\u001b\\\u001b]4;21;rgb:eb/db/b2\u001b\\\u001b]10;rgb:d5/c4/a1\u001b\\\u001b]11;rgb:1d/20/21\u001b\\\u001b]12;7\u001b\\"]
[0.081135, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"]
[0.105635, "o", "\u001b[?1004h"]
[0.229151, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[44m \u001b[30m๏‘ญ ๎‚ฑ Projects ๎‚ฑ natas \u001b[49m\u001b[37m\u001b[00m\u001b[34m๎‚ฐ\u001b[49m\u001b[37m\u001b[00m\u001b[49m\u001b[37m\u001b[00mโฃ\u001b[K\u001b[111C\u001b[49m\u001b[37m\u001b[00m\u001b[49m\u001b[37m\u001b[00m\u001b[111D"]
[0.229491, "o", "\u001b[5 q"]
[0.229974, "o", "\u001b[5 q"]
[0.230895, "o", "\u001b[?1h\u001b="]
[0.232336, "o", "\u001b[?2004h"]
[0.495608, "o", "\u001b[4mp\u001b[24m\u001b[90mappy\u001b[39m\b\b\b\b"]
[0.685124, "o", "\b\u001b[24m\u001b[32mp\u001b[32ma\u001b[39m"]
[0.878024, "o", "\b\b\u001b[1m\u001b[31mp\u001b[1m\u001b[31ma\u001b[1m\u001b[31mp\u001b[0m\u001b[39m"]
[1.043208, "o", "\b\u001b[1m\u001b[31mp\u001b[1m\u001b[31mp\u001b[0m\u001b[39m"]
[1.159698, "o", "\b\b\b\b\u001b[0m\u001b[32mp\u001b[0m\u001b[32ma\u001b[0m\u001b[32mp\u001b[0m\u001b[32mp\u001b[32my\u001b[39m"]
[1.496722, "o", "\u001b[?1l\u001b>"]
[1.498992, "o", "\u001b[?2004l"]
[1.502209, "o", "\r\r\n"]
[1.517399, "o", "\u001b[5 q"]
[1.523316, "o", "\u001b[?1004l"]
[1.69889, "o", "/home/jonathan/go/bin/puppy\r\n"]
[1.754149, "o", "pappy\u0001\u001b[33m\u0002> \u0001\u001b[0m\u0002"]
[2.270945, "o", "l"]
[2.461025, "o", "m"]
[2.545502, "o", "a"]
[3.074592, "o", "\r\n"]
[3.081346, "o", "Loaded natas15-password (./macro_natas15-password.py)\r\nLoaded natas15 (./macro_natas15.py)\r\n"]
[3.084313, "o", "pappy\u0001\u001b[33m\u0002> \u0001\u001b[0m\u0002"]
[4.218342, "o", "rma natas15-password"]
[4.971896, "o", "\r\n"]
[5.085955, "o", "a\r"]
[5.206945, "o", "b\r"]
[5.326547, "o", "c\r"]
[5.437393, "o", "d\r"]
[5.549147, "o", "e\r"]
[5.664011, "o", "f\r"]
[5.775954, "o", "g\r"]
[5.890659, "o", "h\r"]
[6.000321, "o", "i\r"]
[6.112878, "o", "j\r"]
[6.224215, "o", "k\r"]
[6.34291, "o", "l\r"]
[6.455094, "o", "m\r"]
[6.570645, "o", "n\r"]
[6.680533, "o", "o\r"]
[6.81024, "o", "p\r"]
[6.977327, "o", "q\r"]
[7.103245, "o", "r\r"]
[7.289806, "o", "s\r"]
[7.446911, "o", "t\r"]
[7.556574, "o", "u\r"]
[7.673027, "o", "v\r"]
[7.786883, "o", "w\r"]
[7.901044, "o", "x\r"]
[8.012249, "o", "y\r"]
[8.121503, "o", "z\r"]
[8.24445, "o", "A\r"]
[8.35835, "o", "B\r"]
[8.468958, "o", "C\r"]
[8.593344, "o", "D\r"]
[8.702621, "o", "E\r"]
[8.816087, "o", "F\r"]
[8.930272, "o", "G\r"]
[9.040616, "o", "H\r"]
[9.151716, "o", "I\r"]
[9.269707, "o", "J\r"]
[9.38981, "o", "K\r"]
[9.50179, "o", "L\r"]
[9.620189, "o", "M\r"]
[9.730245, "o", "N\r"]
[9.83835, "o", "O\r"]
[9.963039, "o", "P\r"]
[10.073541, "o", "Q\r"]
[10.184917, "o", "R\r"]
[10.302333, "o", "S\r"]
[10.41378, "o", "T\r"]
[10.526031, "o", "U\r"]
[10.632808, "o", "V\r"]
[10.743539, "o", "W\r"]
[10.856169, "o", "Wa\r"]
[10.967108, "o", "Waa\r"]
[11.080604, "o", "Wab\r"]
[11.191907, "o", "Wac\r"]
[11.303536, "o", "Wad\r"]
[11.415241, "o", "Wae\r"]
[11.530972, "o", "Waf\r"]
[11.641707, "o", "Wag\r"]
[11.755344, "o", "Wah\r"]
[11.882111, "o", "Wai\r"]
[11.990773, "o", "Waj\r"]
[12.108172, "o", "Wak\r"]
[12.216477, "o", "Wal\r"]
[12.326423, "o", "Wam\r"]
[12.461, "o", "Wan\r"]
[12.5894, "o", "Wao\r"]
[12.70967, "o", "Wap\r"]
[12.82729, "o", "Waq\r"]
[12.938261, "o", "War\r"]
[13.053397, "o", "Was\r"]
[13.171885, "o", "Wat\r"]
[13.290897, "o", "Wau\r"]
[13.406958, "o", "Wav\r"]
[13.517919, "o", "Waw\r"]
[13.629137, "o", "Wax\r"]
[13.743345, "o", "Way\r"]
[13.854087, "o", "Waz\r"]
[13.96501, "o", "WaA\r"]
[14.077861, "o", "WaB\r"]
[14.19219, "o", "WaC\r"]
[14.301841, "o", "WaD\r"]
[14.413127, "o", "WaE\r"]
[14.535247, "o", "WaF\r"]
[14.642786, "o", "WaG\r"]
[14.755171, "o", "WaH\r"]
[14.865018, "o", "WaI\r"]
[14.978131, "o", "WaIa\r"]
[15.08807, "o", "WaIb\r"]
[15.204615, "o", "WaIc\r"]
[15.322641, "o", "WaId\r"]
[15.432938, "o", "WaIe\r"]
[15.546864, "o", "WaIf\r"]
[15.660372, "o", "WaIg\r"]
[15.76967, "o", "WaIh\r"]
[15.88513, "o", "WaIi\r"]
[15.996749, "o", "WaIj\r"]
[16.10822, "o", "WaIk\r"]
[16.232082, "o", "WaIl\r"]
[16.343544, "o", "WaIm\r"]
[16.461922, "o", "WaIn\r"]
[16.58825, "o", "WaIo\r"]
[16.714211, "o", "WaIp\r"]
[16.829112, "o", "WaIq\r"]
[16.953916, "o", "WaIr\r"]
[17.175998, "o", "WaIs\r"]
[17.340569, "o", "WaIt\r"]
[17.462973, "o", "WaIu\r"]
[17.573631, "o", "WaIv\r"]
[17.683688, "o", "WaIw\r"]
[17.799298, "o", "WaIx\r"]
[17.913619, "o", "WaIy\r"]
[18.024695, "o", "WaIz\r"]
[18.135448, "o", "WaIA\r"]
[18.252172, "o", "WaIB\r"]
[18.365551, "o", "WaIC\r"]
[18.483037, "o", "WaID\r"]
[18.59954, "o", "WaIE\r"]
[18.725284, "o", "WaIF\r"]
[18.83585, "o", "WaIG\r"]
[18.947164, "o", "WaIH\r"]
[19.06417, "o", "WaIHa\r"]
[19.17527, "o", "WaIHb\r"]
[19.290641, "o", "WaIHc\r"]
[19.402477, "o", "WaIHd\r"]
[19.519582, "o", "WaIHe\r"]
[19.637197, "o", "WaIHf\r"]
[19.745739, "o", "WaIHg\r"]
[19.858428, "o", "WaIHh\r"]
[19.978077, "o", "WaIHi\r"]
[20.090617, "o", "WaIHj\r"]
[20.203066, "o", "WaIHk\r"]
[20.318722, "o", "WaIHl\r"]
[20.428155, "o", "WaIHm\r"]
[20.540727, "o", "WaIHn\r"]
[20.651112, "o", "WaIHo\r"]
[20.768237, "o", "WaIHp\r"]
[20.882439, "o", "WaIHq\r"]
[20.995755, "o", "WaIHr\r"]
[21.110113, "o", "WaIHs\r"]
[21.233616, "o", "WaIHt\r"]
[21.351273, "o", "WaIHu\r"]
[21.463907, "o", "WaIHv\r"]
[21.573633, "o", "WaIHw\r"]
[21.685818, "o", "WaIHx\r"]
[21.795411, "o", "WaIHy\r"]
[21.90721, "o", "WaIHz\r"]
[22.024275, "o", "WaIHA\r"]
[22.14367, "o", "WaIHB\r"]
[22.378325, "o", "WaIHC\r"]
[22.537297, "o", "WaIHD\r"]
[22.645722, "o", "WaIHE\r"]
[22.76345, "o", "WaIHEa\r"]
[22.873234, "o", "WaIHEaa\r"]
[22.987793, "o", "WaIHEab\r"]
[23.102334, "o", "WaIHEac\r"]
[23.219663, "o", "WaIHEaca\r"]
[23.330463, "o", "WaIHEacb\r"]
[23.441842, "o", "WaIHEacc\r"]
[23.550191, "o", "WaIHEacd\r"]
[23.657784, "o", "WaIHEace\r"]
[23.772498, "o", "WaIHEacf\r"]
[23.88683, "o", "WaIHEacg\r"]
[24.003419, "o", "WaIHEach\r"]
[24.113853, "o", "WaIHEaci\r"]
[24.232215, "o", "WaIHEacj\r"]
[24.341747, "o", "WaIHEacja\r"]
[24.452998, "o", "WaIHEacjb\r"]
[24.572351, "o", "WaIHEacjc\r"]
[24.68316, "o", "WaIHEacjd\r"]
[24.797228, "o", "WaIHEacje\r"]
[24.952973, "o", "WaIHEacjf\r"]
[25.06879, "o", "WaIHEacjg\r"]
[25.184469, "o", "WaIHEacjh\r"]
[25.294503, "o", "WaIHEacji\r"]
[25.422565, "o", "WaIHEacjj\r"]
[25.548843, "o", "WaIHEacjk\r"]
[25.666239, "o", "WaIHEacjl\r"]
[25.779721, "o", "WaIHEacjm\r"]
[25.888261, "o", "WaIHEacjn\r"]
[26.003478, "o", "WaIHEacjo\r"]
[26.113533, "o", "WaIHEacjp\r"]
[26.237644, "o", "WaIHEacjq\r"]
[26.350451, "o", "WaIHEacjr\r"]
[26.463968, "o", "WaIHEacjs\r"]
[26.586051, "o", "WaIHEacjt\r"]
[26.701697, "o", "WaIHEacju\r"]
[26.814059, "o", "WaIHEacjv\r"]
[26.953743, "o", "WaIHEacjw\r"]
[27.166073, "o", "WaIHEacjx\r"]
[27.347881, "o", "WaIHEacjy\r"]
[27.463762, "o", "WaIHEacjz\r"]
[27.572303, "o", "WaIHEacjA\r"]
[27.684411, "o", "WaIHEacjB\r"]
[27.800222, "o", "WaIHEacjC\r"]
[27.915078, "o", "WaIHEacjD\r"]
[28.025781, "o", "WaIHEacjE\r"]
[28.140165, "o", "WaIHEacjF\r"]
[28.25461, "o", "WaIHEacjG\r"]
[28.381881, "o", "WaIHEacjH\r"]
[28.491354, "o", "WaIHEacjI\r"]
[28.605086, "o", "WaIHEacjJ\r"]
[28.741836, "o", "WaIHEacjK\r"]
[28.854173, "o", "WaIHEacjL\r"]
[28.971534, "o", "WaIHEacjM\r"]
[29.083463, "o", "WaIHEacjN\r"]
[29.193629, "o", "WaIHEacjO\r"]
[29.307248, "o", "WaIHEacjP\r"]
[29.421989, "o", "WaIHEacjQ\r"]
[29.54055, "o", "WaIHEacjR\r"]
[29.656517, "o", "WaIHEacjS\r"]
[29.770432, "o", "WaIHEacjT\r"]
[29.881032, "o", "WaIHEacjU\r"]
[30.003108, "o", "WaIHEacjV\r"]
[30.117913, "o", "WaIHEacjW\r"]
[30.22768, "o", "WaIHEacjX\r"]
[30.341493, "o", "WaIHEacjY\r"]
[30.453951, "o", "WaIHEacjZ\r"]
[30.567853, "o", "WaIHEacj0\r"]
[30.679953, "o", "WaIHEacj1\r"]
[30.792469, "o", "WaIHEacj2\r"]
[30.90356, "o", "WaIHEacj3\r"]
[31.021875, "o", "WaIHEacj4\r"]
[31.133948, "o", "WaIHEacj5\r"]
[31.248273, "o", "WaIHEacj6\r"]
[31.358908, "o", "WaIHEacj6a\r"]
[31.473854, "o", "WaIHEacj6b\r"]
[31.591511, "o", "WaIHEacj6c\r"]
[31.710087, "o", "WaIHEacj6d\r"]
[31.825008, "o", "WaIHEacj6e\r"]
[31.943366, "o", "WaIHEacj6f\r"]
[32.056021, "o", "WaIHEacj6g\r"]
[32.170055, "o", "WaIHEacj6h\r"]
[32.281069, "o", "WaIHEacj6i\r"]
[32.402932, "o", "WaIHEacj6j\r"]
[32.530905, "o", "WaIHEacj6k\r"]
[32.651462, "o", "WaIHEacj6l\r"]
[32.775425, "o", "WaIHEacj6m\r"]
[32.887614, "o", "WaIHEacj6n\r"]
[32.998358, "o", "WaIHEacj6o\r"]
[33.109569, "o", "WaIHEacj6p\r"]
[33.227988, "o", "WaIHEacj6q\r"]
[33.34824, "o", "WaIHEacj6r\r"]
[33.459948, "o", "WaIHEacj6s\r"]
[33.570255, "o", "WaIHEacj6t\r"]
[33.687988, "o", "WaIHEacj6u\r"]
[33.797454, "o", "WaIHEacj6v\r"]
[33.912343, "o", "WaIHEacj6w\r"]
[34.028418, "o", "WaIHEacj6x\r"]
[34.13878, "o", "WaIHEacj6y\r"]
[34.254306, "o", "WaIHEacj6z\r"]
[34.370447, "o", "WaIHEacj6A\r"]
[34.492104, "o", "WaIHEacj6B\r"]
[34.810294, "o", "WaIHEacj6C\r"]
[34.957762, "o", "WaIHEacj6D\r"]
[35.071313, "o", "WaIHEacj6E\r"]
[35.186914, "o", "WaIHEacj6F\r"]
[35.304344, "o", "WaIHEacj6G\r"]
[35.421811, "o", "WaIHEacj6H\r"]
[35.532483, "o", "WaIHEacj6I\r"]
[35.644497, "o", "WaIHEacj6J\r"]
[35.756068, "o", "WaIHEacj6K\r"]
[35.866504, "o", "WaIHEacj6L\r"]
[35.978699, "o", "WaIHEacj6M\r"]
[36.096092, "o", "WaIHEacj6N\r"]
[36.218461, "o", "WaIHEacj6O\r"]
[36.328097, "o", "WaIHEacj6P\r"]
[36.448385, "o", "WaIHEacj6Q\r"]
[36.560191, "o", "WaIHEacj6R\r"]
[36.677712, "o", "WaIHEacj6S\r"]
[36.787274, "o", "WaIHEacj6T\r"]
[36.897824, "o", "WaIHEacj6U\r"]
[37.038433, "o", "WaIHEacj6V\r"]
[37.173196, "o", "WaIHEacj6W\r"]
[37.301266, "o", "WaIHEacj6X\r"]
[37.45678, "o", "WaIHEacj6Y\r"]
[37.572406, "o", "WaIHEacj6Z\r"]
[37.683439, "o", "WaIHEacj60\r"]
[37.803159, "o", "WaIHEacj61\r"]
[37.920511, "o", "WaIHEacj62\r"]
[38.036463, "o", "WaIHEacj63\r"]
[38.148, "o", "WaIHEacj63a\r"]
[38.264178, "o", "WaIHEacj63b\r"]
[38.375362, "o", "WaIHEacj63c\r"]
[38.486433, "o", "WaIHEacj63d\r"]
[38.597142, "o", "WaIHEacj63e\r"]
[38.709784, "o", "WaIHEacj63f\r"]
[38.819288, "o", "WaIHEacj63g\r"]
[38.93244, "o", "WaIHEacj63h\r"]
[39.042712, "o", "WaIHEacj63i\r"]
[39.151456, "o", "WaIHEacj63j\r"]
[39.271731, "o", "WaIHEacj63k\r"]
[39.387647, "o", "WaIHEacj63l\r"]
[39.496118, "o", "WaIHEacj63m\r"]
[39.607635, "o", "WaIHEacj63n\r"]
[39.724979, "o", "WaIHEacj63o\r"]
[39.843119, "o", "WaIHEacj63p\r"]
[39.972997, "o", "WaIHEacj63q\r"]
[40.089333, "o", "WaIHEacj63r\r"]
[40.202443, "o", "WaIHEacj63s\r"]
[40.320717, "o", "WaIHEacj63t\r"]
[40.433443, "o", "WaIHEacj63u\r"]
[40.542592, "o", "WaIHEacj63v\r"]
[40.655137, "o", "WaIHEacj63w\r"]
[40.773572, "o", "WaIHEacj63wa\r"]
[40.88428, "o", "WaIHEacj63wb\r"]
[40.996629, "o", "WaIHEacj63wc\r"]
[41.110608, "o", "WaIHEacj63wd\r"]
[41.235698, "o", "WaIHEacj63we\r"]
[41.349467, "o", "WaIHEacj63wf\r"]
[41.475502, "o", "WaIHEacj63wg\r"]
[41.59004, "o", "WaIHEacj63wh\r"]
[41.699915, "o", "WaIHEacj63wi\r"]
[41.811698, "o", "WaIHEacj63wj\r"]
[41.930269, "o", "WaIHEacj63wk\r"]
[42.045749, "o", "WaIHEacj63wl\r"]
[42.155548, "o", "WaIHEacj63wm\r"]
[42.269847, "o", "WaIHEacj63wn\r"]
[42.386681, "o", "WaIHEacj63wna\r"]
[42.507885, "o", "WaIHEacj63wnb\r"]
[42.624924, "o", "WaIHEacj63wnc\r"]
[42.736377, "o", "WaIHEacj63wnd\r"]
[42.851744, "o", "WaIHEacj63wne\r"]
[42.969319, "o", "WaIHEacj63wnf\r"]
[43.081559, "o", "WaIHEacj63wng\r"]
[43.193262, "o", "WaIHEacj63wnh\r"]
[43.311164, "o", "WaIHEacj63wni\r"]
[43.42131, "o", "WaIHEacj63wnj\r"]
[43.535737, "o", "WaIHEacj63wnk\r"]
[43.645705, "o", "WaIHEacj63wnl\r"]
[43.758604, "o", "WaIHEacj63wnm\r"]
[43.876268, "o", "WaIHEacj63wnn\r"]
[43.991397, "o", "WaIHEacj63wno\r"]
[44.10587, "o", "WaIHEacj63wnp\r"]
[44.215786, "o", "WaIHEacj63wnq\r"]
[44.333521, "o", "WaIHEacj63wnr\r"]
[44.443835, "o", "WaIHEacj63wns\r"]
[44.560183, "o", "WaIHEacj63wnt\r"]
[44.669598, "o", "WaIHEacj63wnu\r"]
[44.784266, "o", "WaIHEacj63wnv\r"]
[44.898697, "o", "WaIHEacj63wnw\r"]
[45.020109, "o", "WaIHEacj63wnx\r"]
[45.135525, "o", "WaIHEacj63wny\r"]
[45.252722, "o", "WaIHEacj63wnz\r"]
[45.362593, "o", "WaIHEacj63wnA\r"]
[45.473815, "o", "WaIHEacj63wnB\r"]
[45.586762, "o", "WaIHEacj63wnC\r"]
[45.698345, "o", "WaIHEacj63wnD\r"]
[45.809989, "o", "WaIHEacj63wnE\r"]
[45.926097, "o", "WaIHEacj63wnF\r"]
[46.040982, "o", "WaIHEacj63wnG\r"]
[46.150723, "o", "WaIHEacj63wnH\r"]
[46.263205, "o", "WaIHEacj63wnI\r"]
[46.381673, "o", "WaIHEacj63wnJ\r"]
[46.492733, "o", "WaIHEacj63wnK\r"]
[46.609045, "o", "WaIHEacj63wnL\r"]
[46.721509, "o", "WaIHEacj63wnM\r"]
[46.84581, "o", "WaIHEacj63wnN\r"]
[46.969457, "o", "WaIHEacj63wnNa\r"]
[47.086251, "o", "WaIHEacj63wnNb\r"]
[47.234667, "o", "WaIHEacj63wnNc\r"]
[47.343714, "o", "WaIHEacj63wnNd\r"]
[47.477565, "o", "WaIHEacj63wnNe\r"]
[47.591056, "o", "WaIHEacj63wnNf\r"]
[47.700631, "o", "WaIHEacj63wnNg\r"]
[47.821683, "o", "WaIHEacj63wnNh\r"]
[47.941086, "o", "WaIHEacj63wnNi\r"]
[48.050053, "o", "WaIHEacj63wnNj\r"]
[48.160265, "o", "WaIHEacj63wnNk\r"]
[48.270009, "o", "WaIHEacj63wnNl\r"]
[48.385084, "o", "WaIHEacj63wnNm\r"]
[48.497475, "o", "WaIHEacj63wnNn\r"]
[48.606292, "o", "WaIHEacj63wnNo\r"]
[48.719915, "o", "WaIHEacj63wnNp\r"]
[48.83601, "o", "WaIHEacj63wnNq\r"]
[48.944638, "o", "WaIHEacj63wnNr\r"]
[49.289808, "o", "WaIHEacj63wnNs\r"]
[49.410105, "o", "WaIHEacj63wnNt\r"]
[49.529098, "o", "WaIHEacj63wnNu\r"]
[49.640752, "o", "WaIHEacj63wnNv\r"]
[49.751883, "o", "WaIHEacj63wnNw\r"]
[49.866043, "o", "WaIHEacj63wnNx\r"]
[49.989099, "o", "WaIHEacj63wnNy\r"]
[50.102163, "o", "WaIHEacj63wnNz\r"]
[50.212255, "o", "WaIHEacj63wnNA\r"]
[50.334127, "o", "WaIHEacj63wnNB\r"]
[50.445693, "o", "WaIHEacj63wnNC\r"]
[50.557559, "o", "WaIHEacj63wnND\r"]
[50.669518, "o", "WaIHEacj63wnNE\r"]
[50.788773, "o", "WaIHEacj63wnNF\r"]
[50.896984, "o", "WaIHEacj63wnNG\r"]
[51.012098, "o", "WaIHEacj63wnNH\r"]
[51.127403, "o", "WaIHEacj63wnNI\r"]
[51.251866, "o", "WaIHEacj63wnNIa\r"]
[51.365522, "o", "WaIHEacj63wnNIb\r"]
[51.476561, "o", "WaIHEacj63wnNIc\r"]
[51.585074, "o", "WaIHEacj63wnNId\r"]
[51.694091, "o", "WaIHEacj63wnNIe\r"]
[51.808927, "o", "WaIHEacj63wnNIf\r"]
[51.920787, "o", "WaIHEacj63wnNIg\r"]
[52.038195, "o", "WaIHEacj63wnNIh\r"]
[52.147816, "o", "WaIHEacj63wnNIi\r"]
[52.261194, "o", "WaIHEacj63wnNIj\r"]
[52.37437, "o", "WaIHEacj63wnNIk\r"]
[52.495069, "o", "WaIHEacj63wnNIl\r"]
[52.605323, "o", "WaIHEacj63wnNIm\r"]
[52.717433, "o", "WaIHEacj63wnNIn\r"]
[52.841762, "o", "WaIHEacj63wnNIo\r"]
[52.959326, "o", "WaIHEacj63wnNIp\r"]
[53.069026, "o", "WaIHEacj63wnNIq\r"]
[53.178351, "o", "WaIHEacj63wnNIr\r"]
[53.288772, "o", "WaIHEacj63wnNIs\r"]
[53.401056, "o", "WaIHEacj63wnNIt\r"]
[53.516315, "o", "WaIHEacj63wnNIu\r"]
[53.624855, "o", "WaIHEacj63wnNIv\r"]
[53.750987, "o", "WaIHEacj63wnNIw\r"]
[53.865552, "o", "WaIHEacj63wnNIx\r"]
[53.981671, "o", "WaIHEacj63wnNIy\r"]
[54.131099, "o", "WaIHEacj63wnNIz\r"]
[54.476314, "o", "WaIHEacj63wnNIA\r"]
[54.596725, "o", "WaIHEacj63wnNIB\r"]
[54.720566, "o", "WaIHEacj63wnNIBa\r"]
[54.833975, "o", "WaIHEacj63wnNIBb\r"]
[54.971882, "o", "WaIHEacj63wnNIBc\r"]
[55.087161, "o", "WaIHEacj63wnNIBd\r"]
[55.197732, "o", "WaIHEacj63wnNIBe\r"]
[55.317473, "o", "WaIHEacj63wnNIBf\r"]
[55.434793, "o", "WaIHEacj63wnNIBg\r"]
[55.551906, "o", "WaIHEacj63wnNIBh\r"]
[55.666182, "o", "WaIHEacj63wnNIBi\r"]
[55.775779, "o", "WaIHEacj63wnNIBj\r"]
[55.890774, "o", "WaIHEacj63wnNIBk\r"]
[56.015161, "o", "WaIHEacj63wnNIBl\r"]
[56.132111, "o", "WaIHEacj63wnNIBm\r"]
[56.254352, "o", "WaIHEacj63wnNIBn\r"]
[56.372153, "o", "WaIHEacj63wnNIBo\r"]
[56.48939, "o", "WaIHEacj63wnNIBp\r"]
[56.61258, "o", "WaIHEacj63wnNIBq\r"]
[56.741611, "o", "WaIHEacj63wnNIBr\r"]
[56.868879, "o", "WaIHEacj63wnNIBs\r"]
[57.041126, "o", "WaIHEacj63wnNIBt\r"]
[57.289581, "o", "WaIHEacj63wnNIBu\r"]
[57.409608, "o", "WaIHEacj63wnNIBv\r"]
[57.525075, "o", "WaIHEacj63wnNIBw\r"]
[57.645948, "o", "WaIHEacj63wnNIBx\r"]
[57.757035, "o", "WaIHEacj63wnNIBy\r"]
[57.875423, "o", "WaIHEacj63wnNIBz\r"]
[57.982994, "o", "WaIHEacj63wnNIBA\r"]
[58.095028, "o", "WaIHEacj63wnNIBB\r"]
[58.206851, "o", "WaIHEacj63wnNIBC\r"]
[58.318361, "o", "WaIHEacj63wnNIBD\r"]
[58.433073, "o", "WaIHEacj63wnNIBE\r"]
[58.544716, "o", "WaIHEacj63wnNIBF\r"]
[58.654899, "o", "WaIHEacj63wnNIBG\r"]
[58.770277, "o", "WaIHEacj63wnNIBH\r"]
[58.879415, "o", "WaIHEacj63wnNIBI\r"]
[58.987208, "o", "WaIHEacj63wnNIBJ\r"]
[59.100069, "o", "WaIHEacj63wnNIBK\r"]
[59.209735, "o", "WaIHEacj63wnNIBL\r"]
[59.322781, "o", "WaIHEacj63wnNIBM\r"]
[59.442869, "o", "WaIHEacj63wnNIBN\r"]
[59.559842, "o", "WaIHEacj63wnNIBO\r"]
[59.670825, "o", "WaIHEacj63wnNIBP\r"]
[59.779211, "o", "WaIHEacj63wnNIBQ\r"]
[59.885564, "o", "WaIHEacj63wnNIBR\r"]
[60.005301, "o", "WaIHEacj63wnNIBRa\r"]
[60.116804, "o", "WaIHEacj63wnNIBRb\r"]
[60.225765, "o", "WaIHEacj63wnNIBRc\r"]
[60.339643, "o", "WaIHEacj63wnNIBRd\r"]
[60.450219, "o", "WaIHEacj63wnNIBRe\r"]
[60.561673, "o", "WaIHEacj63wnNIBRf\r"]
[60.669311, "o", "WaIHEacj63wnNIBRg\r"]
[60.778254, "o", "WaIHEacj63wnNIBRh\r"]
[60.888809, "o", "WaIHEacj63wnNIBRi\r"]
[61.000878, "o", "WaIHEacj63wnNIBRj\r"]
[61.116168, "o", "WaIHEacj63wnNIBRk\r"]
[61.227752, "o", "WaIHEacj63wnNIBRl\r"]
[61.337761, "o", "WaIHEacj63wnNIBRm\r"]
[61.4525, "o", "WaIHEacj63wnNIBRn\r"]
[61.59238, "o", "WaIHEacj63wnNIBRo\r"]
[61.716852, "o", "WaIHEacj63wnNIBRp\r"]
[61.866359, "o", "WaIHEacj63wnNIBRq\r"]
[61.976806, "o", "WaIHEacj63wnNIBRr\r"]
[62.103341, "o", "WaIHEacj63wnNIBRs\r"]
[62.218833, "o", "WaIHEacj63wnNIBRt\r"]
[62.329327, "o", "WaIHEacj63wnNIBRu\r"]
[62.464303, "o", "WaIHEacj63wnNIBRv\r"]
[62.574842, "o", "WaIHEacj63wnNIBRw\r"]
[62.686281, "o", "WaIHEacj63wnNIBRx\r"]
[62.798118, "o", "WaIHEacj63wnNIBRy\r"]
[62.927862, "o", "WaIHEacj63wnNIBRz\r"]
[63.039208, "o", "WaIHEacj63wnNIBRA\r"]
[63.151363, "o", "WaIHEacj63wnNIBRB\r"]
[63.261454, "o", "WaIHEacj63wnNIBRC\r"]
[63.37898, "o", "WaIHEacj63wnNIBRD\r"]
[63.49421, "o", "WaIHEacj63wnNIBRE\r"]
[63.607479, "o", "WaIHEacj63wnNIBRF\r"]
[63.718539, "o", "WaIHEacj63wnNIBRG\r"]
[63.827821, "o", "WaIHEacj63wnNIBRH\r"]
[63.936119, "o", "WaIHEacj63wnNIBRI\r"]
[64.050596, "o", "WaIHEacj63wnNIBRJ\r"]
[64.165722, "o", "WaIHEacj63wnNIBRK\r"]
[64.275408, "o", "WaIHEacj63wnNIBRL\r"]
[64.386753, "o", "WaIHEacj63wnNIBRM\r"]
[64.497669, "o", "WaIHEacj63wnNIBRN\r"]
[64.607455, "o", "WaIHEacj63wnNIBRO\r"]
[64.71694, "o", "WaIHEacj63wnNIBROa\r"]
[64.829588, "o", "WaIHEacj63wnNIBROb\r"]
[64.966146, "o", "WaIHEacj63wnNIBROc\r"]
[65.075489, "o", "WaIHEacj63wnNIBROd\r"]
[65.188179, "o", "WaIHEacj63wnNIBROe\r"]
[65.298402, "o", "WaIHEacj63wnNIBROf\r"]
[65.408638, "o", "WaIHEacj63wnNIBROg\r"]
[65.544757, "o", "WaIHEacj63wnNIBROh\r"]
[65.655769, "o", "WaIHEacj63wnNIBROi\r"]
[65.766283, "o", "WaIHEacj63wnNIBROj\r"]
[65.878849, "o", "WaIHEacj63wnNIBROk\r"]
[65.995838, "o", "WaIHEacj63wnNIBROl\r"]
[66.110533, "o", "WaIHEacj63wnNIBROm\r"]
[66.221983, "o", "WaIHEacj63wnNIBROn\r"]
[66.33236, "o", "WaIHEacj63wnNIBROo\r"]
[66.443697, "o", "WaIHEacj63wnNIBROp\r"]
[66.553271, "o", "WaIHEacj63wnNIBROq\r"]
[66.664175, "o", "WaIHEacj63wnNIBROr\r"]
[66.787943, "o", "WaIHEacj63wnNIBROs\r"]
[66.912664, "o", "WaIHEacj63wnNIBROt\r"]
[67.166358, "o", "WaIHEacj63wnNIBROu\r"]
[67.281474, "o", "WaIHEacj63wnNIBROv\r"]
[67.397849, "o", "WaIHEacj63wnNIBROw\r"]
[67.517646, "o", "WaIHEacj63wnNIBROx\r"]
[67.635451, "o", "WaIHEacj63wnNIBROy\r"]
[67.749642, "o", "WaIHEacj63wnNIBROz\r"]
[67.857648, "o", "WaIHEacj63wnNIBROA\r"]
[67.967387, "o", "WaIHEacj63wnNIBROB\r"]
[68.076215, "o", "WaIHEacj63wnNIBROC\r"]
[68.192787, "o", "WaIHEacj63wnNIBROD\r"]
[68.299538, "o", "WaIHEacj63wnNIBROE\r"]
[68.413102, "o", "WaIHEacj63wnNIBROF\r"]
[68.533398, "o", "WaIHEacj63wnNIBROG\r"]
[68.645167, "o", "WaIHEacj63wnNIBROH\r"]
[68.761681, "o", "WaIHEacj63wnNIBROHa\r"]
[68.877331, "o", "WaIHEacj63wnNIBROHb\r"]
[68.987002, "o", "WaIHEacj63wnNIBROHc\r"]
[69.099403, "o", "WaIHEacj63wnNIBROHd\r"]
[69.214955, "o", "WaIHEacj63wnNIBROHe\r"]
[69.324451, "o", "WaIHEacj63wnNIBROHea\r"]
[69.434715, "o", "WaIHEacj63wnNIBROHeb\r"]
[69.547049, "o", "WaIHEacj63wnNIBROHec\r"]
[69.659927, "o", "WaIHEacj63wnNIBROHed\r"]
[69.769096, "o", "WaIHEacj63wnNIBROHee\r"]
[69.887856, "o", "WaIHEacj63wnNIBROHef\r"]
[70.007512, "o", "WaIHEacj63wnNIBROHeg\r"]
[70.119766, "o", "WaIHEacj63wnNIBROHeh\r"]
[70.231493, "o", "WaIHEacj63wnNIBROHei\r"]
[70.346591, "o", "WaIHEacj63wnNIBROHej\r"]
[70.458384, "o", "WaIHEacj63wnNIBROHek\r"]
[70.568463, "o", "WaIHEacj63wnNIBROHel\r"]
[70.678098, "o", "WaIHEacj63wnNIBROHem\r"]
[70.791002, "o", "WaIHEacj63wnNIBROHen\r"]
[70.907752, "o", "WaIHEacj63wnNIBROHeo\r"]
[71.029526, "o", "WaIHEacj63wnNIBROHep\r"]
[71.170778, "o", "WaIHEacj63wnNIBROHeq\r"]
[71.281009, "o", "WaIHEacj63wnNIBROHeqa\r"]
[71.471996, "o", "WaIHEacj63wnNIBROHeqb\r"]
[71.583845, "o", "WaIHEacj63wnNIBROHeqc\r"]
[71.697102, "o", "WaIHEacj63wnNIBROHeqd\r"]
[71.806595, "o", "WaIHEacj63wnNIBROHeqe\r"]
[71.919147, "o", "WaIHEacj63wnNIBROHeqf\r"]
[72.029215, "o", "WaIHEacj63wnNIBROHeqg\r"]
[72.14082, "o", "WaIHEacj63wnNIBROHeqh\r"]
[72.255111, "o", "WaIHEacj63wnNIBROHeqi\r"]
[72.363975, "o", "WaIHEacj63wnNIBROHeqia\r"]
[72.484869, "o", "WaIHEacj63wnNIBROHeqib\r"]
[72.602468, "o", "WaIHEacj63wnNIBROHeqic\r"]
[72.712748, "o", "WaIHEacj63wnNIBROHeqid\r"]
[72.835887, "o", "WaIHEacj63wnNIBROHeqie\r"]
[72.946331, "o", "WaIHEacj63wnNIBROHeqif\r"]
[73.061057, "o", "WaIHEacj63wnNIBROHeqig\r"]
[73.175652, "o", "WaIHEacj63wnNIBROHeqih\r"]
[73.286176, "o", "WaIHEacj63wnNIBROHeqii\r"]
[73.40231, "o", "WaIHEacj63wnNIBROHeqij\r"]
[73.516568, "o", "WaIHEacj63wnNIBROHeqik\r"]
[73.626788, "o", "WaIHEacj63wnNIBROHeqil\r"]
[73.737427, "o", "WaIHEacj63wnNIBROHeqim\r"]
[73.847108, "o", "WaIHEacj63wnNIBROHeqin\r"]
[73.957578, "o", "WaIHEacj63wnNIBROHeqio\r"]
[74.063922, "o", "WaIHEacj63wnNIBROHeqip\r"]
[74.174593, "o", "WaIHEacj63wnNIBROHeqiq\r"]
[74.287929, "o", "WaIHEacj63wnNIBROHeqir\r"]
[74.405804, "o", "WaIHEacj63wnNIBROHeqis\r"]
[74.515119, "o", "WaIHEacj63wnNIBROHeqit\r"]
[74.643575, "o", "WaIHEacj63wnNIBROHeqiu\r"]
[74.759404, "o", "WaIHEacj63wnNIBROHeqiv\r"]
[74.871738, "o", "WaIHEacj63wnNIBROHeqiw\r"]
[75.004769, "o", "WaIHEacj63wnNIBROHeqix\r"]
[75.116872, "o", "WaIHEacj63wnNIBROHeqiy\r"]
[75.235311, "o", "WaIHEacj63wnNIBROHeqiz\r"]
[75.359481, "o", "WaIHEacj63wnNIBROHeqiA\r"]
[75.474593, "o", "WaIHEacj63wnNIBROHeqiB\r"]
[75.587189, "o", "WaIHEacj63wnNIBROHeqiC\r"]
[75.694629, "o", "WaIHEacj63wnNIBROHeqiD\r"]
[75.809216, "o", "WaIHEacj63wnNIBROHeqiE\r"]
[75.927478, "o", "WaIHEacj63wnNIBROHeqiF\r"]
[76.03506, "o", "WaIHEacj63wnNIBROHeqiG\r"]
[76.148514, "o", "WaIHEacj63wnNIBROHeqiH\r"]
[76.287922, "o", "WaIHEacj63wnNIBROHeqiI\r"]
[76.394781, "o", "WaIHEacj63wnNIBROHeqiJ\r"]
[76.509342, "o", "WaIHEacj63wnNIBROHeqiK\r"]
[76.621212, "o", "WaIHEacj63wnNIBROHeqiL\r"]
[76.759362, "o", "WaIHEacj63wnNIBROHeqiM\r"]
[76.879878, "o", "WaIHEacj63wnNIBROHeqiN\r"]
[77.023138, "o", "WaIHEacj63wnNIBROHeqiO\r"]
[77.260298, "o", "WaIHEacj63wnNIBROHeqiP\r"]
[77.407325, "o", "WaIHEacj63wnNIBROHeqiQ\r"]
[77.567064, "o", "WaIHEacj63wnNIBROHeqiR\r"]
[77.712041, "o", "WaIHEacj63wnNIBROHeqiS\r"]
[77.894354, "o", "WaIHEacj63wnNIBROHeqiT\r"]
[78.004425, "o", "WaIHEacj63wnNIBROHeqiU\r"]
[78.111865, "o", "WaIHEacj63wnNIBROHeqiV\r"]
[78.217033, "o", "WaIHEacj63wnNIBROHeqiW\r"]
[78.328785, "o", "WaIHEacj63wnNIBROHeqiX\r"]
[78.436027, "o", "WaIHEacj63wnNIBROHeqiY\r"]
[78.545813, "o", "WaIHEacj63wnNIBROHeqiZ\r"]
[78.658592, "o", "WaIHEacj63wnNIBROHeqi0\r"]
[78.795194, "o", "WaIHEacj63wnNIBROHeqi1\r"]
[78.910231, "o", "WaIHEacj63wnNIBROHeqi2\r"]
[79.01901, "o", "WaIHEacj63wnNIBROHeqi3\r"]
[79.124284, "o", "WaIHEacj63wnNIBROHeqi3a\r"]
[79.236629, "o", "WaIHEacj63wnNIBROHeqi3b\r"]
[79.343957, "o", "WaIHEacj63wnNIBROHeqi3c\r"]
[79.469634, "o", "WaIHEacj63wnNIBROHeqi3d\r"]
[79.58128, "o", "WaIHEacj63wnNIBROHeqi3e\r"]
[79.689454, "o", "WaIHEacj63wnNIBROHeqi3f\r"]
[79.797959, "o", "WaIHEacj63wnNIBROHeqi3g\r"]
[79.9053, "o", "WaIHEacj63wnNIBROHeqi3h\r"]
[80.021441, "o", "WaIHEacj63wnNIBROHeqi3i\r"]
[80.129906, "o", "WaIHEacj63wnNIBROHeqi3j\r"]
[80.245136, "o", "WaIHEacj63wnNIBROHeqi3k\r"]
[80.354549, "o", "WaIHEacj63wnNIBROHeqi3l\r"]
[80.464892, "o", "WaIHEacj63wnNIBROHeqi3m\r"]
[80.572775, "o", "WaIHEacj63wnNIBROHeqi3n\r"]
[80.684795, "o", "WaIHEacj63wnNIBROHeqi3o\r"]
[80.796347, "o", "WaIHEacj63wnNIBROHeqi3p\r"]
[80.906119, "o", "WaIHEacj63wnNIBROHeqi3pa\r"]
[81.015162, "o", "WaIHEacj63wnNIBROHeqi3pb\r"]
[81.126729, "o", "WaIHEacj63wnNIBROHeqi3pc\r"]
[81.235186, "o", "WaIHEacj63wnNIBROHeqi3pd\r"]
[81.345873, "o", "WaIHEacj63wnNIBROHeqi3pe\r"]
[81.460209, "o", "WaIHEacj63wnNIBROHeqi3pf\r"]
[81.574424, "o", "WaIHEacj63wnNIBROHeqi3pg\r"]
[81.698308, "o", "WaIHEacj63wnNIBROHeqi3ph\r"]
[81.815257, "o", "WaIHEacj63wnNIBROHeqi3pi\r"]
[81.924806, "o", "WaIHEacj63wnNIBROHeqi3pj\r"]
[82.038298, "o", "WaIHEacj63wnNIBROHeqi3pk\r"]
[82.148059, "o", "WaIHEacj63wnNIBROHeqi3pl\r"]
[82.400866, "o", "WaIHEacj63wnNIBROHeqi3pm\r"]
[82.604465, "o", "WaIHEacj63wnNIBROHeqi3pn\r"]
[82.77887, "o", "WaIHEacj63wnNIBROHeqi3po\r"]
[82.926838, "o", "WaIHEacj63wnNIBROHeqi3pp\r"]
[83.190428, "o", "WaIHEacj63wnNIBROHeqi3pq\r"]
[83.334429, "o", "WaIHEacj63wnNIBROHeqi3pr\r"]
[83.466321, "o", "WaIHEacj63wnNIBROHeqi3ps\r"]
[83.603587, "o", "WaIHEacj63wnNIBROHeqi3pt\r"]
[83.716789, "o", "WaIHEacj63wnNIBROHeqi3pu\r"]
[83.842677, "o", "WaIHEacj63wnNIBROHeqi3pv\r"]
[83.958217, "o", "WaIHEacj63wnNIBROHeqi3pw\r"]
[84.063552, "o", "WaIHEacj63wnNIBROHeqi3px\r"]
[84.170718, "o", "WaIHEacj63wnNIBROHeqi3py\r"]
[84.27705, "o", "WaIHEacj63wnNIBROHeqi3pz\r"]
[84.388126, "o", "WaIHEacj63wnNIBROHeqi3pA\r"]
[84.499336, "o", "WaIHEacj63wnNIBROHeqi3pB\r"]
[84.606151, "o", "WaIHEacj63wnNIBROHeqi3pC\r"]
[84.718215, "o", "WaIHEacj63wnNIBROHeqi3pD\r"]
[84.829607, "o", "WaIHEacj63wnNIBROHeqi3pE\r"]
[84.960707, "o", "WaIHEacj63wnNIBROHeqi3pF\r"]
[85.070123, "o", "WaIHEacj63wnNIBROHeqi3pG\r"]
[85.17823, "o", "WaIHEacj63wnNIBROHeqi3pH\r"]
[85.293522, "o", "WaIHEacj63wnNIBROHeqi3pI\r"]
[85.417048, "o", "WaIHEacj63wnNIBROHeqi3pJ\r"]
[85.529531, "o", "WaIHEacj63wnNIBROHeqi3pK\r"]
[85.64381, "o", "WaIHEacj63wnNIBROHeqi3pL\r"]
[85.759208, "o", "WaIHEacj63wnNIBROHeqi3pM\r"]
[85.873474, "o", "WaIHEacj63wnNIBROHeqi3pN\r"]
[85.984084, "o", "WaIHEacj63wnNIBROHeqi3pO\r"]
[86.098335, "o", "WaIHEacj63wnNIBROHeqi3pP\r"]
[86.250006, "o", "WaIHEacj63wnNIBROHeqi3pQ\r"]
[86.3721, "o", "WaIHEacj63wnNIBROHeqi3pR\r"]
[86.52324, "o", "WaIHEacj63wnNIBROHeqi3pS\r"]
[86.704508, "o", "WaIHEacj63wnNIBROHeqi3pT\r"]
[86.814217, "o", "WaIHEacj63wnNIBROHeqi3pU\r"]
[86.938933, "o", "WaIHEacj63wnNIBROHeqi3pV\r"]
[87.127656, "o", "WaIHEacj63wnNIBROHeqi3pW\r"]
[87.249451, "o", "WaIHEacj63wnNIBROHeqi3pX\r"]
[87.368663, "o", "WaIHEacj63wnNIBROHeqi3pY\r"]
[87.497511, "o", "WaIHEacj63wnNIBROHeqi3pZ\r"]
[87.616168, "o", "WaIHEacj63wnNIBROHeqi3p0\r"]
[87.728707, "o", "WaIHEacj63wnNIBROHeqi3p1\r"]
[87.842837, "o", "WaIHEacj63wnNIBROHeqi3p2\r"]
[87.957047, "o", "WaIHEacj63wnNIBROHeqi3p3\r"]
[88.070037, "o", "WaIHEacj63wnNIBROHeqi3p4\r"]
[88.202037, "o", "WaIHEacj63wnNIBROHeqi3p5\r"]
[88.347508, "o", "WaIHEacj63wnNIBROHeqi3p6\r"]
[88.469328, "o", "WaIHEacj63wnNIBROHeqi3p7\r"]
[88.580032, "o", "WaIHEacj63wnNIBROHeqi3p8\r"]
[88.687974, "o", "WaIHEacj63wnNIBROHeqi3p9\r"]
[88.80586, "o", "WaIHEacj63wnNIBROHeqi3p9a\r"]
[88.917666, "o", "WaIHEacj63wnNIBROHeqi3p9b\r"]
[89.028919, "o", "WaIHEacj63wnNIBROHeqi3p9c\r"]
[89.142387, "o", "WaIHEacj63wnNIBROHeqi3p9d\r"]
[89.25246, "o", "WaIHEacj63wnNIBROHeqi3p9e\r"]
[89.361839, "o", "WaIHEacj63wnNIBROHeqi3p9f\r"]
[89.476245, "o", "WaIHEacj63wnNIBROHeqi3p9g\r"]
[89.595032, "o", "WaIHEacj63wnNIBROHeqi3p9h\r"]
[89.709214, "o", "WaIHEacj63wnNIBROHeqi3p9i\r"]
[89.829913, "o", "WaIHEacj63wnNIBROHeqi3p9j\r"]
[89.953806, "o", "WaIHEacj63wnNIBROHeqi3p9k\r"]
[90.097799, "o", "WaIHEacj63wnNIBROHeqi3p9l\r"]
[90.20857, "o", "WaIHEacj63wnNIBROHeqi3p9m\r"]
[90.318157, "o", "WaIHEacj63wnNIBROHeqi3p9n\r"]
[90.429952, "o", "WaIHEacj63wnNIBROHeqi3p9o\r"]
[90.546059, "o", "WaIHEacj63wnNIBROHeqi3p9p\r"]
[90.656114, "o", "WaIHEacj63wnNIBROHeqi3p9q\r"]
[90.767636, "o", "WaIHEacj63wnNIBROHeqi3p9r\r"]
[90.881998, "o", "WaIHEacj63wnNIBROHeqi3p9s\r"]
[90.994918, "o", "WaIHEacj63wnNIBROHeqi3p9t\r"]
[91.108953, "o", "WaIHEacj63wnNIBROHeqi3p9ta\r"]
[91.231586, "o", "WaIHEacj63wnNIBROHeqi3p9tb\r"]
[91.342023, "o", "WaIHEacj63wnNIBROHeqi3p9tc\r"]
[91.460042, "o", "WaIHEacj63wnNIBROHeqi3p9td\r"]
[91.570418, "o", "WaIHEacj63wnNIBROHeqi3p9te\r"]
[91.681983, "o", "WaIHEacj63wnNIBROHeqi3p9tf\r"]
[91.790781, "o", "WaIHEacj63wnNIBROHeqi3p9tg\r"]
[91.902463, "o", "WaIHEacj63wnNIBROHeqi3p9th\r"]
[92.024506, "o", "WaIHEacj63wnNIBROHeqi3p9ti\r"]
[92.135972, "o", "WaIHEacj63wnNIBROHeqi3p9tj\r"]
[92.254485, "o", "WaIHEacj63wnNIBROHeqi3p9tk\r"]
[92.37181, "o", "WaIHEacj63wnNIBROHeqi3p9tl\r"]
[92.515269, "o", "WaIHEacj63wnNIBROHeqi3p9tm\r"]
[92.642655, "o", "WaIHEacj63wnNIBROHeqi3p9tn\r"]
[92.759878, "o", "WaIHEacj63wnNIBROHeqi3p9to\r"]
[92.874407, "o", "WaIHEacj63wnNIBROHeqi3p9tp\r"]
[92.984763, "o", "WaIHEacj63wnNIBROHeqi3p9tq\r"]
[93.104709, "o", "WaIHEacj63wnNIBROHeqi3p9tr\r"]
[93.271709, "o", "WaIHEacj63wnNIBROHeqi3p9ts\r"]
[93.439198, "o", "WaIHEacj63wnNIBROHeqi3p9tt\r"]
[93.554788, "o", "WaIHEacj63wnNIBROHeqi3p9tu\r"]
[93.668859, "o", "WaIHEacj63wnNIBROHeqi3p9tv\r"]
[93.783041, "o", "WaIHEacj63wnNIBROHeqi3p9tw\r"]
[93.898665, "o", "WaIHEacj63wnNIBROHeqi3p9tx\r"]
[94.008727, "o", "WaIHEacj63wnNIBROHeqi3p9ty\r"]
[94.123223, "o", "WaIHEacj63wnNIBROHeqi3p9tz\r"]
[94.234441, "o", "WaIHEacj63wnNIBROHeqi3p9tA\r"]
[94.34994, "o", "WaIHEacj63wnNIBROHeqi3p9tB\r"]
[94.46206, "o", "WaIHEacj63wnNIBROHeqi3p9tC\r"]
[94.577177, "o", "WaIHEacj63wnNIBROHeqi3p9tD\r"]
[94.686097, "o", "WaIHEacj63wnNIBROHeqi3p9tE\r"]
[94.805711, "o", "WaIHEacj63wnNIBROHeqi3p9tF\r"]
[94.922315, "o", "WaIHEacj63wnNIBROHeqi3p9tG\r"]
[95.040296, "o", "WaIHEacj63wnNIBROHeqi3p9tH\r"]
[95.150587, "o", "WaIHEacj63wnNIBROHeqi3p9tI\r"]
[95.26193, "o", "WaIHEacj63wnNIBROHeqi3p9tJ\r"]
[95.373, "o", "WaIHEacj63wnNIBROHeqi3p9tK\r"]
[95.489345, "o", "WaIHEacj63wnNIBROHeqi3p9tL\r"]
[95.60612, "o", "WaIHEacj63wnNIBROHeqi3p9tM\r"]
[95.717256, "o", "WaIHEacj63wnNIBROHeqi3p9tN\r"]
[95.838385, "o", "WaIHEacj63wnNIBROHeqi3p9tO\r"]
[95.949347, "o", "WaIHEacj63wnNIBROHeqi3p9tP\r"]
[96.059814, "o", "WaIHEacj63wnNIBROHeqi3p9tQ\r"]
[96.171687, "o", "WaIHEacj63wnNIBROHeqi3p9tR\r"]
[96.280627, "o", "WaIHEacj63wnNIBROHeqi3p9tS\r"]
[96.400084, "o", "WaIHEacj63wnNIBROHeqi3p9tT\r"]
[96.538573, "o", "WaIHEacj63wnNIBROHeqi3p9tU\r"]
[96.658706, "o", "WaIHEacj63wnNIBROHeqi3p9tV\r"]
[96.809565, "o", "WaIHEacj63wnNIBROHeqi3p9tW\r"]
[96.92244, "o", "WaIHEacj63wnNIBROHeqi3p9tX\r"]
[97.174186, "o", "WaIHEacj63wnNIBROHeqi3p9tY\r"]
[97.308367, "o", "WaIHEacj63wnNIBROHeqi3p9tZ\r"]
[97.422232, "o", "WaIHEacj63wnNIBROHeqi3p9t0\r"]
[97.536238, "o", "WaIHEacj63wnNIBROHeqi3p9t0a\r"]
[97.651367, "o", "WaIHEacj63wnNIBROHeqi3p9t0b\r"]
[97.761385, "o", "WaIHEacj63wnNIBROHeqi3p9t0c\r"]
[97.871952, "o", "WaIHEacj63wnNIBROHeqi3p9t0d\r"]
[97.982241, "o", "WaIHEacj63wnNIBROHeqi3p9t0e\r"]
[98.095963, "o", "WaIHEacj63wnNIBROHeqi3p9t0f\r"]
[98.240594, "o", "WaIHEacj63wnNIBROHeqi3p9t0g\r"]
[98.434711, "o", "WaIHEacj63wnNIBROHeqi3p9t0h\r"]
[98.589058, "o", "WaIHEacj63wnNIBROHeqi3p9t0i\r"]
[98.723554, "o", "WaIHEacj63wnNIBROHeqi3p9t0j\r"]
[98.879272, "o", "WaIHEacj63wnNIBROHeqi3p9t0k\r"]
[99.056785, "o", "WaIHEacj63wnNIBROHeqi3p9t0l\r"]
[99.212232, "o", "WaIHEacj63wnNIBROHeqi3p9t0m\r"]
[99.326977, "o", "WaIHEacj63wnNIBROHeqi3p9t0ma\r"]
[99.435341, "o", "WaIHEacj63wnNIBROHeqi3p9t0mb\r"]
[99.546671, "o", "WaIHEacj63wnNIBROHeqi3p9t0mc\r"]
[99.659544, "o", "WaIHEacj63wnNIBROHeqi3p9t0md\r"]
[99.770395, "o", "WaIHEacj63wnNIBROHeqi3p9t0me\r"]
[99.889733, "o", "WaIHEacj63wnNIBROHeqi3p9t0mf\r"]
[100.020111, "o", "WaIHEacj63wnNIBROHeqi3p9t0mg\r"]
[100.166435, "o", "WaIHEacj63wnNIBROHeqi3p9t0mh\r"]
[100.333609, "o", "WaIHEacj63wnNIBROHeqi3p9t0mi\r"]
[100.449191, "o", "WaIHEacj63wnNIBROHeqi3p9t0mj\r"]
[100.55967, "o", "WaIHEacj63wnNIBROHeqi3p9t0mk\r"]
[100.669729, "o", "WaIHEacj63wnNIBROHeqi3p9t0ml\r"]
[100.781091, "o", "WaIHEacj63wnNIBROHeqi3p9t0mm\r"]
[100.902855, "o", "WaIHEacj63wnNIBROHeqi3p9t0mn\r"]
[101.020696, "o", "WaIHEacj63wnNIBROHeqi3p9t0mo\r"]
[101.131869, "o", "WaIHEacj63wnNIBROHeqi3p9t0mp\r"]
[101.251713, "o", "WaIHEacj63wnNIBROHeqi3p9t0mq\r"]
[101.369188, "o", "WaIHEacj63wnNIBROHeqi3p9t0mr\r"]
[101.47791, "o", "WaIHEacj63wnNIBROHeqi3p9t0ms\r"]
[101.5864, "o", "WaIHEacj63wnNIBROHeqi3p9t0mt\r"]
[101.71143, "o", "WaIHEacj63wnNIBROHeqi3p9t0mu\r"]
[101.827447, "o", "WaIHEacj63wnNIBROHeqi3p9t0mv\r"]
[101.942925, "o", "WaIHEacj63wnNIBROHeqi3p9t0mw\r"]
[102.068938, "o", "WaIHEacj63wnNIBROHeqi3p9t0mx\r"]
[102.191378, "o", "WaIHEacj63wnNIBROHeqi3p9t0my\r"]
[102.301813, "o", "WaIHEacj63wnNIBROHeqi3p9t0mz\r"]
[102.410637, "o", "WaIHEacj63wnNIBROHeqi3p9t0mA\r"]
[102.54169, "o", "WaIHEacj63wnNIBROHeqi3p9t0mB\r"]
[102.656134, "o", "WaIHEacj63wnNIBROHeqi3p9t0mC\r"]
[102.770313, "o", "WaIHEacj63wnNIBROHeqi3p9t0mD\r"]
[102.885243, "o", "WaIHEacj63wnNIBROHeqi3p9t0mE\r"]
[102.999158, "o", "WaIHEacj63wnNIBROHeqi3p9t0mF\r"]
[103.112292, "o", "WaIHEacj63wnNIBROHeqi3p9t0mG\r"]
[103.225335, "o", "WaIHEacj63wnNIBROHeqi3p9t0mH\r"]
[103.339264, "o", "WaIHEacj63wnNIBROHeqi3p9t0mI\r"]
[103.448769, "o", "WaIHEacj63wnNIBROHeqi3p9t0mJ\r"]
[103.656135, "o", "WaIHEacj63wnNIBROHeqi3p9t0mK\r"]
[103.771612, "o", "WaIHEacj63wnNIBROHeqi3p9t0mL\r"]
[103.885581, "o", "WaIHEacj63wnNIBROHeqi3p9t0mM\r"]
[104.005395, "o", "WaIHEacj63wnNIBROHeqi3p9t0mN\r"]
[104.124079, "o", "WaIHEacj63wnNIBROHeqi3p9t0mO\r"]
[104.239434, "o", "WaIHEacj63wnNIBROHeqi3p9t0mP\r"]
[104.352601, "o", "WaIHEacj63wnNIBROHeqi3p9t0mQ\r"]
[104.466115, "o", "WaIHEacj63wnNIBROHeqi3p9t0mR\r"]
[104.576828, "o", "WaIHEacj63wnNIBROHeqi3p9t0mS\r"]
[104.691093, "o", "WaIHEacj63wnNIBROHeqi3p9t0mT\r"]
[104.804355, "o", "WaIHEacj63wnNIBROHeqi3p9t0mU\r"]
[104.909589, "o", "WaIHEacj63wnNIBROHeqi3p9t0mV\r"]
[105.028598, "o", "WaIHEacj63wnNIBROHeqi3p9t0mW\r"]
[105.169417, "o", "WaIHEacj63wnNIBROHeqi3p9t0mX\r"]
[105.284342, "o", "WaIHEacj63wnNIBROHeqi3p9t0mY\r"]
[105.398273, "o", "WaIHEacj63wnNIBROHeqi3p9t0mZ\r"]
[105.511249, "o", "WaIHEacj63wnNIBROHeqi3p9t0m0\r"]
[105.629402, "o", "WaIHEacj63wnNIBROHeqi3p9t0m1\r"]
[105.750983, "o", "WaIHEacj63wnNIBROHeqi3p9t0m2\r"]
[105.865764, "o", "WaIHEacj63wnNIBROHeqi3p9t0m3\r"]
[105.995437, "o", "WaIHEacj63wnNIBROHeqi3p9t0m4\r"]
[106.109996, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5\r"]
[106.238878, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5a\r"]
[106.354383, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5b\r"]
[106.465166, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5c\r"]
[106.574389, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5d\r"]
[106.694287, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5e\r"]
[106.81056, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5f\r"]
[106.968627, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5g\r"]
[107.163355, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5h\r"]
[107.280714, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5i\r"]
[107.401439, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5j\r"]
[107.540477, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5k\r"]
[107.653687, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5l\r"]
[107.79548, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5m\r"]
[107.912701, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5n\r"]
[108.025991, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5na\r"]
[108.134131, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nb\r"]
[108.24212, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nc\r"]
[108.3581, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nd\r"]
[108.472376, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5ne\r"]
[108.598352, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nf\r"]
[108.708879, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5ng\r"]
[108.822847, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nh\r"]
[108.9362, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nha\r"]
[109.056791, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhb\r"]
[109.168738, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhc\r"]
[109.280796, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhd\r"]
[109.39064, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhe\r"]
[109.505713, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhf\r"]
[109.618462, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhg\r"]
[109.757837, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhh\r"]
[109.917552, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhi\r"]
[110.080528, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhj\r"]
[110.288417, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhk\r"]
[110.403705, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhl\r"]
[110.518902, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhm\r"]
[110.647548, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhma\r"]
[110.769018, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmb\r"]
[110.923544, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmc\r"]
[111.066284, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmd\r"]
[111.186248, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhme\r"]
[111.305981, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmf\r"]
[111.417305, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmg\r"]
[111.531663, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh\r"]
[111.645435, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmha\r"]
[111.757333, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhb\r"]
[111.871789, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhc\r"]
[111.985815, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhd\r"]
[112.096496, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhe\r"]
[112.420086, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhf\r"]
[112.562942, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhg\r"]
[112.670804, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhh\r"]
[112.782681, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhi\r"]
[112.901662, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhj\r"]
[113.013113, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhk\r"]
[113.129113, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhl\r"]
[113.24117, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhm\r"]
[113.351367, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhn\r"]
[113.4702, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmho\r"]
[113.58122, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhp\r"]
[113.694052, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhq\r"]
[113.806747, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhr\r"]
[113.920761, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhs\r"]
[114.036549, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmht\r"]
[114.175399, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhu\r"]
[114.287062, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhv\r"]
[114.404998, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhw\r"]
[114.53895, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhx\r"]
[114.667972, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhy\r"]
[114.809763, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhz\r"]
[114.92051, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhA\r"]
[115.036659, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhB\r"]
[115.145543, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhC\r"]
[115.255593, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhD\r"]
[115.406741, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhE\r"]
[115.521245, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhF\r"]
[115.638502, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhG\r"]
[115.7614, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhH\r"]
[115.877822, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhI\r"]
[115.990451, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhJ\r"]
[116.106667, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhK\r"]
[116.236325, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhL\r"]
[116.351852, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhM\r"]
[116.467964, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhN\r"]
[116.58084, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhO\r"]
[116.690103, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhP\r"]
[116.820359, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhQ\r"]
[116.968091, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhR\r"]
[117.11214, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhS\r"]
[117.276912, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhT\r"]
[117.392146, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhU\r"]
[117.571671, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhV\r"]
[117.681953, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhW\r"]
[117.791551, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhX\r"]
[117.903702, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhY\r"]
[118.01898, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmhZ\r"]
[118.147232, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh0\r"]
[118.257858, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh1\r"]
[118.371968, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh2\r"]
[118.491103, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh3\r"]
[118.621615, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh4\r"]
[118.732378, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh5\r"]
[118.862697, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh6\r"]
[118.984901, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh7\r"]
[119.100212, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh8\r"]
[119.217738, "o", "WaIHEacj63wnNIBROHeqi3p9t0m5nhmh9\rWaIHEacj63wnNIBROHeqi3p9t0m5nhmh \r\n"]
[119.223245, "o", "pappy\u0001\u001b[33m\u0002> \u0001\u001b[0m\u0002"]
[121.816272, "o", "\u001b[0m"]
[121.858093, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"]
[121.889572, "o", "\u001b[?1004h"]
[122.082478, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[44m \u001b[30m๏‘ญ ๎‚ฑ Projects ๎‚ฑ natas \u001b[49m\u001b[37m\u001b[00m\u001b[34m๎‚ฐ\u001b[49m\u001b[37m\u001b[00m\u001b[49m\u001b[37m\u001b[00mโฃ\u001b[K\u001b[111C\u001b[49m\u001b[37m\u001b[00m\u001b[49m\u001b[37m\u001b[00m\u001b[111D"]
[122.082873, "o", "\u001b[5 q"]
[122.083358, "o", "\u001b[5 q"]
[122.084297, "o", "\u001b[?1h\u001b="]
[122.085432, "o", "\u001b[?2004h"]
[122.343785, "o", "\u001b[?2004l\r\r\n"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

@ -0,0 +1,97 @@
{"version": 2, "width": 122, "height": 59, "timestamp": 1591023257, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}}
[0.010627, "o", "\u001b[5 q"]
[0.01119, "o", "\u001b]4;0;rgb:1d/20/21\u001b\\\u001b]4;1;rgb:fb/49/34\u001b\\\u001b]4;2;rgb:b8/bb/26\u001b\\\u001b]4;3;rgb:fa/bd/2f\u001b\\\u001b]4;4;rgb:83/a5/98\u001b\\\u001b]4;5;rgb:d3/86/9b\u001b\\\u001b]4;6;rgb:8e/c0/7c\u001b\\\u001b]4;7;rgb:d5/c4/a1\u001b\\\u001b]4;8;rgb:66/5c/54\u001b\\\u001b]4;9;rgb:fb/49/34\u001b\\\u001b]4;10;rgb:b8/bb/26\u001b\\\u001b]4;11;rgb:fa/bd/2f\u001b\\\u001b]4;12;rgb:83/a5/98\u001b\\\u001b]4;13;rgb:d3/86/9b\u001b\\\u001b]4;14;rgb:8e/c0/7c\u001b\\\u001b]4;15;rgb:fb/f1/c7\u001b\\\u001b]4;16;rgb:fe/80/19\u001b\\\u001b]4;17;rgb:d6/5d/0e\u001b\\\u001b]4;18;rgb:3c/38/36\u001b\\\u001b]4;19;rgb:50/49/45\u001b\\\u001b]4;20;rgb:bd/ae/93\u001b\\\u001b]4;21;rgb:eb/db/b2\u001b\\\u001b]10;rgb:d5/c4/a1\u001b\\\u001b]11;rgb:1d/20/21\u001b\\\u001b]12;7\u001b\\"]
[0.088068, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"]
[0.111666, "o", "\u001b[?1004h"]
[0.222681, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[44m \u001b[30m๏‘ญ \u001b[49m\u001b[37m\u001b[00m\u001b[34m๎‚ฐ\u001b[49m\u001b[37m\u001b[00m\u001b[49m\u001b[37m\u001b[00mโฃ\u001b[K\u001b[116C\u001b[49m\u001b[37m\u001b[00m\u001b[49m\u001b[37m\u001b[00m\u001b[116D"]
[0.222999, "o", "\u001b[5 q"]
[0.223593, "o", "\u001b[5 q"]
[0.224508, "o", "\u001b[?1h\u001b="]
[0.225888, "o", "\u001b[?2004h"]
[0.653773, "o", "\u001b[1m\u001b[31mn\u001b[0m\u001b[39m\u001b[90mc -lvnp 4444\u001b[39m\u001b[12D"]
[0.715379, "o", "\b\u001b[0m\u001b[32mn\u001b[32mc\u001b[39m"]
[1.183971, "o", "\u001b[39m \u001b[39m-\u001b[39ml\u001b[39mv\u001b[39mn\u001b[39mp\u001b[39m \u001b[39m4\u001b[39m4\u001b[39m4\u001b[39m4"]
[1.446216, "o", "\u001b[?1l\u001b>"]
[1.449347, "o", "\u001b[?2004l"]
[1.458011, "o", "\r\r\n"]
[1.459486, "o", "\u001b[5 q"]
[1.465154, "o", "\u001b[?1004l"]
[1.468709, "o", "Listening on 0.0.0.0 4444\r\n"]
[4.077191, "o", "Connection received on 127.0.0.1 51870\r\n"]
[4.082998, "o", "sh-5.0$ "]
[5.685101, "o", "p"]
[5.91109, "o", "y"]
[6.124298, "o", "t"]
[6.188237, "o", "h"]
[6.335567, "o", "o"]
[6.396019, "o", "n"]
[6.590799, "o", " "]
[6.759803, "o", "-"]
[6.852531, "o", "c"]
[6.930206, "o", " "]
[7.866017, "o", "'"]
[8.109001, "o", "i"]
[8.253435, "o", "m"]
[8.381997, "o", "p"]
[8.515866, "o", "o"]
[8.637957, "o", "r"]
[8.663153, "o", "t"]
[9.413798, "o", " "]
[9.514598, "o", "p"]
[9.739548, "o", "t"]
[9.850342, "o", "y"]
[10.387176, "o", ";"]
[10.535847, "o", " "]
[10.658542, "o", "p"]
[10.891197, "o", "t"]
[11.006384, "o", "y"]
[11.357107, "o", "."]
[11.671752, "o", "s"]
[11.875899, "o", "p"]
[12.077258, "o", "a"]
[12.297662, "o", "w"]
[12.411224, "o", "n"]
[13.250654, "o", "("]
[13.460459, "o", "\""]
[14.358715, "o", "/"]
[14.599401, "o", "b"]
[14.655787, "o", "i"]
[14.727939, "o", "n"]
[14.942566, "o", "/"]
[15.157211, "o", "b"]
[15.347137, "o", "a"]
[15.559204, "o", "s"]
[15.597834, "o", "h"]
[16.70838, "o", "\""]
[16.780863, "o", ")"]
[18.121027, "o", "'"]
[18.81927, "o", "\r\n"]
[18.820547, "o", "python -c 'import pty; pty.spawn(\"/bin/bash\")'\r\n"]
[18.863345, "o", "bash: /home/jonathan/.dotfiles/shells/aliases: No such file or directory\r\r\nbash: /home/jonathan/.dotfiles/shells/functions: No such file or directory\r\r\n"]
[18.880476, "o", "\u001b[H\u001b[2J\u001b[3J"]
[18.981871, "o", "\u001b]0;jonathan@jonathanhodgson-laptop:/\u0007"]
[18.982154, "o", "\u001b]0;jonathan@jonathanhodgson-laptop: /\u0007\u001b[48;5;240m\u001b[38;5;250m\u001b[48;5;240m jonathan \u001b[48;5;237m\u001b[38;5;240m๎‚ฐ\u001b[38;5;250m\u001b[48;5;237m / \u001b[48;5;124m\u001b[38;5;237m๎‚ฐ\u001b[38;5;254m\u001b[48;5;124m ๎‚ข \u001b[48;5;236m\u001b[38;5;124m๎‚ฐ\u001b[38;5;15m\u001b[48;5;236m $ \u001b[0m\u001b[38;5;236m๎‚ฐ\u001b[0m "]
[25.099666, "o", "^Z"]
[25.100201, "o", "\r\nzsh: suspended nc -lvnp 4444\r\n\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"]
[25.184509, "o", "\u001b[?1004h"]
[25.382763, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[44m \u001b[30m๏‘ญ \u001b[49m\u001b[37m\u001b[00m\u001b[34m๎‚ฐ\u001b[49m\u001b[37m\u001b[00m\u001b[49m\u001b[37m\u001b[00mโฃ\u001b[K\u001b[110C\u001b[49m\u001b[37m\u001b[00m \u001b[31m-\u001b[00m\u001b[01;31m148\u001b[00m\u001b[31m-\u001b[00m\u001b[49m\u001b[37m\u001b[00m\u001b[116D"]
[25.383048, "o", "\u001b[5 q"]
[25.383524, "o", "\u001b[5 q"]
[25.384242, "o", "\u001b[?1h\u001b="]
[25.385297, "o", "\u001b[?2004h"]
[25.921348, "o", "[1] continued nc -lvnp 4444\n"]
[27.435219, "o", "stty rows 59 cols 122\r\n\r export TERM=\"xterm-256color\"\r\n\r"]
[28.19776, "o", "\u001b[A\r\n"]
[28.304585, "o", "\u001b]0;jonathan@jonathanhodgson-laptop:/\u0007"]
[28.396087, "o", "\u001b]0;jonathan@jonathanhodgson-laptop:/\u0007"]
[28.478125, "o", "\u001b]0;jonathan@jonathanhodgson-laptop:/\u0007\u001b]0;jonathan@jonathanhodgson-laptop: /\u0007\u001b[48;5;240m\u001b[38;5;250m\u001b[48;5;240m jonathan \u001b[48;5;237m\u001b[38;5;240m๎‚ฐ\u001b[38;5;250m\u001b[48;5;237m / \u001b[48;5;124m\u001b[38;5;237m๎‚ฐ\u001b[38;5;254m\u001b[48;5;124m ๎‚ข \u001b[48;5;236m\u001b[38;5;124m๎‚ฐ\u001b[38;5;15m\u001b[48;5;236m $ \u001b[0m\u001b[38;5;236m๎‚ฐ\u001b[0m "]
[29.070472, "o", "l"]
[29.132573, "o", "s"]
[29.29781, "o", "\r\n"]
[29.302113, "o", "bin boot dev\tetc home lib\tlib64 lost+found media mnt opt proc root\trun sbin srv\tsys tmp usr var\r\n"]
[29.426522, "o", "\u001b]0;jonathan@jonathanhodgson-laptop:/\u0007"]
[29.42666, "o", "\u001b]0;jonathan@jonathanhodgson-laptop: /\u0007\u001b[48;5;240m\u001b[38;5;250m\u001b[48;5;240m jonathan \u001b[48;5;237m\u001b[38;5;240m๎‚ฐ\u001b[38;5;250m\u001b[48;5;237m / \u001b[48;5;124m\u001b[38;5;237m๎‚ฐ\u001b[38;5;254m\u001b[48;5;124m ๎‚ข \u001b[48;5;236m\u001b[38;5;124m๎‚ฐ\u001b[38;5;15m\u001b[48;5;236m $ \u001b[0m\u001b[38;5;236m๎‚ฐ\u001b[0m "]
[31.708368, "o", "exit\r\n"]
[31.725334, "o", "sh-5.0$ "]
[31.945243, "o", "exit\n"]
[32.551323, "o", "\u001b[?2004l\r\n"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

@ -12,7 +12,7 @@ blog(){
find content/ -type f -name '*.md' $newer | while read file; do
newFileName=$(getBlogSlug "$file")
mkdir -p "public_html/${newFileName%/*}"
pandoc --template=templates/blog.html -f markdown -t html5 "$file" > "public_html/$newFileName"
pandoc --template=templates/blog.html -f markdown -t html5 -M comments "$file" > "public_html/$newFileName"
done
touch tmp/lastBlogUpdate
}

@ -4,6 +4,7 @@ tags:
- Pentesting
- FZF
- Linux
- ZSH
description: Hashcat is an amazing tool for cracking hashes but the syntax leaves a bit to be desired. This article explains one way to improve the experience of selecting modes by overriding ZSH's built in tab-completion using FZF.
date: 2020-02-24
---

@ -3,6 +3,7 @@ title: The switch to ZSH
tags:
- Pentesting
- Linux
- ZSH
description: ZSH is great shell but in this blog I explain some of the annoyances I've had with it, as well as some of the benefits.
date: 2020-02-29
---
@ -62,3 +63,5 @@ If you try this in ZSH, it won't work. Why? Because ZSH's implementation resets
```zsh
stty raw -echo; fg <enter><enter>
```
[Read more about upgrading shells](/blog/upgrading-reverse-shells.html)

@ -5,11 +5,15 @@ tags:
- Vim
- Mutt
- FZF
description: Like many organisations, the company I work at uses an Exchange server for email and calendar. My preferred email client is NeoMutt. I use Davmail to make these two work together.
description: Many companies use an Exchange server for email and calendar. My preferred email client is NeoMutt. You can use Davmail to make these two work together.
date: 2020-03-10
---
[Mutt](http://www.mutt.org/) is an extremely powerful, vim like email client. Unfortunately, like many, the company I work for uses Exchange for email and calenders. As a Linux user, I can't (and don't want) to install outlook and I don't want to have to open a web browser, every time I want to check an email. My mission was to find a way to manage my work emails using Mutt.
**Update:** Although everything in this post is (to the best of my knowledge)
correct, a more comprehensive setup guide for mutt and exchange can be found
here: <https://jonathanh.co.uk/blog/mutt-setup.html>.
[Mutt](http://www.mutt.org/) is an extremely powerful, vim like email client. If your company uses Exchange for email and calenders, you may have a hard time making them work together. As a Linux user, I can't (and don't want) to install outlook and I don't want to have to open a web browser, every time I want to check an email. My mission was to find a way to manage my work emails using Mutt.
For the purpose of this blog, I assume that you cannot connect to the Exchange server directly with IMAP or SMTP. If you are unsure, check at `yourdomain.com/owa/#path=/options/popandimap`. If you can use IMAP natively, use it.

@ -61,9 +61,9 @@ This results in
Using your shell as a programming language could easily make a blog post by itself. When that is paired with the fact that you can write these as scripts in separate files (shell scripts) and call them on demand as needed makes this the single largest productivity boost for me. A lot of common tasks can be automated with shell scripts. Here are a few of my favourite:
* [Organise photos into portrait or landscape folders](https://git.jonathanh.co.uk/Jab2870/dotfiles/blob/master/bin/.bin/images/lanPortImages)
* [Add up the length of all audio tracks in a folder](https://git.jonathanh.co.uk/Jab2870/dotfiles/blob/master/bin/.bin/albumDuration)
* [Encode text in multiple different ways at once](https://git.jonathanh.co.uk/Jab2870/dotfiles/blob/master/bin/.bin/encode)
* [Organise photos into portrait or landscape folders](https://git.jonathanh.co.uk/jab2870/Dotfiles/src/branch/master/bin/.bin/images/lanPortImages)
* [Add up the length of all audio tracks in a folder](https://git.jonathanh.co.uk/jab2870/Dotfiles/src/branch/master/bin/.bin/albumDuration)
* [Encode text in multiple different ways at once](https://git.jonathanh.co.uk/jab2870/Dotfiles/src/branch/master/bin/.bin/encode)
## Vim

@ -12,7 +12,7 @@ We spend a lot of time these days in a browser. Given that , I thought it might
Since using Qutebrowser, I have loved having the ability to browse the web from my keyboard. There are times that I use the mouse, but they are rare now. Until recently, I was using [a fork of Vim Vixen](https://git.jonathanh.co.uk/jab2870/Vim-Vixen). This fork didn't do much more than change the colour scheme and I added the ability to set a proxy server using it. However, I have recently been experimenting with [Tridactyl](https://github.com/tridactyl/tridactyl). I plan to write a blog post about it in the near future but if you are looking for a browser plugin to give you Vim-like navigation, both Vim-Vixen and Tridactyl are excellent choices.
I think it is fair to say that Tridactyl does more, that isn't always a benefit though. A tool with fewer features is far more likely to contain serious bugs. However, for me, the ability to easily call external scripts was enough to make the switch.
I think it is fair to say that Tridactyl does more, that isn't always a benefit though. A tool with fewer features is far less likely to contain serious bugs. However, for me, the ability to easily call external scripts was enough to make the switch.
## Custom Stylesheets

@ -11,7 +11,7 @@ My email system is based around my email client of choice, [Mutt](http://www.mut
In this blog post I will document how Mutt and the many surrounding cogs interlock, to get my emails the way I like them. My goals for setting up my email were as follows:
* **Exchange** - Like many companies, my work emails are handled by MS Exchange. Obviously, it is important that I can read my work email.
* **Exchange** - Many companies use Exchange. This post will cater for that situation
* **Offline** - It is fairly common for me to work in remote locations, often resulting in the need to check my emails before I am connected to the internet.
* **Powerful filtering** - I get a lot of emails and keeping them organised can be a lot of work. The more this can be automated, the better.
* **Terminal based** - I spend a lot of time in the terminal. If email can be done in the terminal, I would like to.
@ -506,7 +506,7 @@ After setting the environment variable, you can just run `notmuch setup` and it
After running the setup command, you can simply run `notmuch new` in order to index your emails. Depending on the size of your mailbox, this could take a while.
Once it is done, you can test it out on the command line. The search options here are even more powerful, for a full list type `neomutt help search-terms`. As an example though, the following will show me all messages that contain the word exam in the body that have been sent / received in the past 2 weeks.
Once it is done, you can test it out on the command line. The search options here are even more powerful, for a full list type `notmuch help search-terms`. As an example though, the following will show me all messages that contain the word exam in the body that have been sent / received in the past 2 weeks.
```bash
notmuch search 'body:exam date:-2weeks..now'

@ -0,0 +1,149 @@
---
title: Current Word Completion
date: 2020-05-26
description: ZSH's tab completion is excellent, although limited to completing based on your command. With this, I can also make completions based on my current word.
tags:
- ZSH
- FZF
---
Tab completion is one of the main reasons I decided to make the switch to ZSH. Being able to see descriptions and cycle between options makes finding options a breeze:
![ZSH Tab Completion](/assets/switch-to-zsh/zsh-tab-complete.gif)
However, there are times that I would prefer to have completion options based on the current word I have typed, regardless of the command I am running. I suppose this is more like an extension of ZSH's global aliases, but with the ability to choose from multiple options. An example of this is for word lists. There are a lot of commands I use that require word lists and it is a pain to write out the full path before I am able to tab-complete. My solution is what I have been calling Current Word Completion. My current iteration of it relies on [FZF](https://github.com/junegunn/fzf) for the completions, although in the long term, I would like to make it work with ZSH's built in completion system. Here is a demonstration using `wl` for wordlists and `myip` for my local machines ip addresses.
![Current Word Completion](/assets/word-complete/currentWordComplete.gif)
You can see that it doesn't stop ZSH's normal completion from working and it can work multiple times on any command.
As with tab-completion, I have it bound to my tab key.
If all you want to do is implement it yourself, you can find the source code [here](https://git.jonathanh.co.uk/jab2870/Dotfiles/src/branch/master/shells/zsh/includes/currentwordcompletion.zsh). Simply source the file in your `.zshrc` and you should be good to go. You can add new options to the `word_replace` function.
If you are interested in how it works, keep reading.
## Overriding tab key
The tab key is interpreted by the terminal as ctrl+i for [legacy reasons](https://bestasciitable.com/). That is why I am binding to `^I`.
The code below will check what ctrl+i is currently bound to and store it. This means we can override the tab key in such a way that if we are not on a word that should be expanded, we can fall back to whatever tab used to do.
We then bind ctrl+i to a new function that will spawn a notification and then run whatever ctrl+i used to be bound to.
```zsh
currentwordcomplete(){
notify-send "Yay, it works"
zle ${currentword_default_completion:-expand-or-complete}
}
# Record what ctrl+i is currently set to
# That way we can call it if currentword_default_completion doesn't result in anything
[ -z "$currentword_default_completion" ] && {
binding=$(bindkey '^I')
[[ $binding =~ 'undefined-key' ]] || currentword_default_completion=$binding[(s: :w)2]
unset binding
}
zle -N currentwordcomplete
bindkey '^I' currentwordcomplete
```
You can check this works by sourcing the file and pushing tab. You should get a notification and then normal tab completion should work.
## Splitting up the current line
The `LBUFFER` variable in a ZSH widget contains a string equal to everything before your cursor in the buffer. We can use expansion built into ZSH to turn that into an array of words.
```zsh
tokens=(${(z)LBUFFER})
```
The `z` flag here will expand the string using shell parsing to split the string into arguments. This takes into account quotes and escaped spaces. Full details can be found in [the documentation](http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion-Flags).
This means that we have an array of words. The word we are currently on will be the last:
```zsh
lastWord="${tokens[-1]}"
```
I also get the first argument which is normally going to be the command currently being run. Although I don't use this at the moment, I thought it might be useful to be able to exclude certain commands from completion.
```zsh
cmd="${tokens[1]}"
```
## Word Replace
I have a function called `word_replace` that takes the word that should be replaced and the command, and prints what it should be replaced with. It also returns 0 on success (there was a replacement found).
```zsh
word_replace(){
local ret=1
local word="$1"
local cmd="$2"
case "$word" in
wl) wordlistSelect; return 0 ;;
myip) ip route | grep -oE '(dev|src) [^ ]+' | sed 'N;s/\n/,/;s/src //;s/dev //' | awk -F',' '{print $2 " " $1}' | sort -u | fzf -1 --no-preview | cut -d' ' -f1; return 0 ;;
esac
return "$ret"
}
```
In this case, it is a simple switch statement. An interesting side note is the use of `-1` in the FZF command for `myip`. This will prevent FZF from running if there is only 1 option fed to it. So, if I am only connected on one interface, it will simply fill my ip address rather than prompting me to choose one.
Obviously, the logic used here could be as simple or complex as you wish.
## Getting the completion
Inside the `currentwordcomplete` function, I get the output of the `word_replace` function which is passed the current word. If that doesn't result in a completion, I will run the `word_replace` function again, using only the part of the word that comes after an `=` sign (if there is one).
In either case, a variable called swap will contain what the current word should be replaced with.
There will also be a variable called `ret` that will be equal to 0 if the replacement should be made.
```zsh
currentwordcomplete(){
...
# Check we haven't pushed space
if [ "${LBUFFER[-1]}" != " " ]; then
swap="$(word_replace "$lastWord" "$cmd")"
ret="$?"
# This part checks if the part after an = is completable
if [ "$ret" -ne "0" ]; then
local afterEqual="${lastWord##*=}"
local beforeEqual="${lastWord%=*}"
# If they are different, there is an equals in the word
if [ "$afterEqual" != "$lastWord" ]; then
swap="${beforeEqual}=$(word_replace "$afterEqual" "$cmd")"
ret="$?"
fi
fi
fi
...
}
```
## Making the change
Finally, I check if the completion should be made. If it shouldn't, I call whatever function the tab key used to be bound to. If it should, I change the last item of the tokens array that we created earlier. I then set the LBUFFER variable to the changed string.
```zsh
if [ "$ret" -eq "0" ]; then
if [ -n "$swap" ]; then
tokens[-1]="$swap"
LBUFFER="${tokens[@]}"
fi
zle reset-prompt
return 0
else
zle ${currentword_default_completion:-expand-or-complete}
return
fi
```
## Conclusion
This is a relatively un-intrusive addition to ZSH that I use most days. I don't use a huge number of these but the two I mentioned here, word lists and my ip, I use a lot.
You can find the [full source here](https://git.jonathanh.co.uk/jab2870/Dotfiles/src/branch/master/shells/zsh/includes/currentwordcompletion.zsh). If you are interested in my full [ZSH config is here](https://git.jonathanh.co.uk/jab2870/Dotfiles/src/branch/master/shells/zsh/).

@ -0,0 +1,230 @@
---
title: Upgrading reverse shells
date: 2020-06-01
description: Once you've got a reverse shell, there are a number of things you can do to make it nicer to work with. I go through those and at the end, automate the annoying bit with zsh.
tags:
- ZSH
- Pentesting
- Linux