diff --git a/2020/06/input.txt b/2020/06/input.txt
new file mode 100644
index 0000000..feed4f7
--- /dev/null
+++ b/2020/06/input.txt
@@ -0,0 +1,2084 @@
+donpevkjhymzl
+ezyopckdlnvmj
+
+tqwfdoxvim
+imzpqwruhynlca
+wkemdqfvigo
+
+kztsuvpgoheyfdrqbnxmlw
+onzbdgsrqxhetkvypfulwm
+eomvusqtbnwghfzdyxplkr
+lthqvfxbnrpdoekugmzyws
+
+tlsgumiveq
+suevmtgrix
+
+jpcvhae
+kfwg
+
+scbmvulizfajxwdkohynr
+nrwjblvodackhmteufixz
+crjnozhvmxuilfdgwbak
+cjxfvaklnrmzhodubiw
+
+wepjrhznqbsdcg
+bgkxwdzjpcnh
+bzhngpwdjc
+
+zcwd
+bcsdwi
+dzwc
+cndjtw
+widc
+
+fxcdeujrgyimhtnbl
+rgxubfaswmyetdzcpj
+
+qcyvwlznk
+pixvryeqmabkg
+oyhwkvslqtu
+syfvqkj
+
+oxaqtvbck
+xdaocgmjbhr
+
+itmqhlrpfkjex
+glipefrhqdjt
+lfxujtahqrkiep
+
+r
+r
+r
+r
+r
+
+zrevcbqlfd
+fevqbcrz
+bznrqefvc
+venbfqczr
+ezcfrqvb
+
+jckiqemdhafpblg
+hmgkceqdfablipj
+apfhidgbqjmeklc
+jbgafikphedlqcmu
+jgipbhyrqkcadmtloef
+
+oc
+cwl
+c
+pqcum
+
+dyqefuvk
+jwpeyutcvrqfknd
+ueqfvkdy
+mqkedfuvy
+
+wjmflnycpikaudbh
+badpwluhyckmfijn
+laicfpmukdjwbyhn
+wbunyimlakfhjcdp
+pkdayicwhjulfnbm
+
+lyvucwjsqpobtxfz
+juplywzofxqtbc
+bjcpotyxfwzquil
+gqcpxouftzylwjbk
+
+o
+o
+om
+o
+
+cv
+cv
+dkv
+nlqvar
+
+uympvfa
+fpvmauy
+upfmyal
+mrfxyaup
+fpauym
+
+yefrc
+eycrf
+jcery
+
+mikwhc
+kwhicm
+wckmih
+cimhkpw
+cwkhim
+
+jr
+nj
+
+qdn
+dpobj
+bdhkcirag
+lxfszwtvyeum
+
+evztimrx
+wvtesixcjz
+xezvnti
+itexvzrp
+
+cdmytuohafwrn
+onqrdzbtajhwcy
+agvoswrcytkhn
+ionpyahrctwl
+
+nfizudpgjas
+zcsfpgiujdan
+zuasjgfnipd
+pdszgjniauf
+
+tmznlxi
+znilmx
+nzmlix
+
+praqydusmlntzoejbgkficvwh
+paxnwvbzejqlgryuhscotfikdm
+ydvetlcfiqpnbmorhswazujgk
+tczvygrfuqibdelpwkamjhnos
+
+wtkx
+txkw
+tkxw
+wxkt
+kwxt
+
+xozfqwskiyjdlmerbtgvpu
+ztviaxedfwjloryqmupb
+zuwqtfbdoirejmxvply
+prldimefuqtyvobwjxz
+
+lnbchfiueqgkvdypxjsrt
+gjfsnriecpdhuxqyktblv
+evrqsyfgdpnujtcbxilhk
+icgrdksboavhfluqyjtxpnme
+
+fvsdtxqopuyizback
+xdptiuasqfzkvhcybe
+bktzicvfxwuyhspoad
+dybuvfizapxcslrkgt
+
+sip
+y
+y
+v
+o
+
+binuks
+iksubn
+unbisk
+
+ec
+ce
+ce
+ce
+
+mszqjkigr
+zqjsimgr
+jgszimrq
+
+brgqwumhfsjoan
+tqjoruxwhm
+
+bexsrhfowdm
+qmrwjfbedxy
+
+bmjzeradwpcvq
+lzbmqdjw
+ukfbhtjdqsyomzi
+zplwmjqbd
+
+suacmtzvfwgkberyj
+yawctsbmvrzujkeg
+
+wkvdqfrj
+rjstv
+irjv
+
+gjrzwdlaxhnybk
+fwcelavjtkq
+sjkwyudaiogpl
+
+cepjqyrxgbtozmvsnwfaldi
+ewblsmizdaoxvpqfgjncyr
+dmqjczpuflxkvogiwybaesrn
+izcvlbrxopjgmfydeawnsq
+
+krbsuf
+ybfusk
+ksrubfh
+kbuwsf
+
+cflimnt
+fimtcny
+
+gr
+gr
+gr
+rg
+
+boksruxtpwhaylfvezinmgq
+pghkurfnlsazwxtqemvy
+ahwztefxyujgrmknvslqp
+lvtrehgwmyszpfkxauqn
+uvwytrhqmfaklgxsnpezj
+
+ojwxbtai
+ebjplmknha
+gzjab
+yrdbja
+aqgbjv
+
+xqbadntilesgj
+qafljdgeistxnk
+vdhjisgpnlecatx
+
+bctjy
+jzcbtly
+yjctb
+
+hu
+x
+
+hbxnqzvimyjpr
+xjvqmhryzib
+
+xgt
+qxgt
+lxgt
+xgt
+
+bcrfvtxq
+bwodrhgfnj
+rfbelmx
+xfrpub
+
+z
+z
+z
+z
+z
+
+wkqnhmyvpgcafs
+anuqkgcmpsh
+
+gakdvbjity
+uxqszephnmt
+
+gsmqkvlw
+ygljknwqs
+vnwlksgq
+kflgqodsw
+
+esixowgfrdkchbvluyjzmt
+zwlbyjexfgrkivthduscom
+bejtzkgouvrhwdciylfmsx
+vgiwfukltmcxzhdjyrseob
+bvuzhwkjfelxmgiosrdyct
+
+jxcwht
+jtwo
+jtw
+
+alugckni
+
+rdfbt
+ertfmjb
+urfakt
+tfrdv
+rjftg
+
+zgvcnoyk
+jrbydop
+
+yjhzdwgrubc
+thdijqcoegmzybwxsfn
+
+sc
+cs
+sc
+sc
+
+ixgqhbsoyzektrjvlu
+eizybgxusrhqkoljtv
+bgsjuteyoivhkzxlrq
+
+eimgdwa
+ubqsylj
+pojylrx
+
+hlekwmnst
+khnpvb
+lhkgbxo
+khoj
+uqkfihrz
+
+tvahpybefouj
+htfjeyaov
+ovjehatfy
+
+qcwplbzsxej
+evtnljchmoqu
+zlecjqdx
+
+kgswxnvjym
+xkbjymvgwnrd
+njkompgxyvw
+vhzwnfkjxgmiy
+gkvmrtqjnxyuoaw
+
+hif
+pcx
+eiad
+
+vnsk
+nkvs
+
+ekvmjptnlg
+vgqthpnmzeyu
+tvgmnspexj
+mvektcnpsdlg
+gpirbeamcntkvo
+
+xzhbpqwomfny
+dzneqbmtkarsocugpwy
+
+e
+e
+
+cgdbaqiwxkhoune
+ljzpfsmtvr
+
+bemtdp
+mcbpwetzxksrn
+bmpte
+
+zxegywkmlanphqt
+yrqbijeg
+ocgyqferd
+
+thlbysev
+tlhsbyve
+ysteovhlb
+blevshyt
+vehyktdlbs
+
+jvzqgfrmnsyedwkt
+wylnmqpsdjferzvg
+rmdwjgyfzsqevn
+izvrjqmdwnfxegyks
+
+jrexchzindpmboa
+pconhxiezjmdbra
+rocpziedxjanmbh
+pjzxdrmoienhcab
+ioexrmhdbzjcpan
+
+ubljqsrwgpifknhd
+iadsruznklqwpj
+
+zelwsurf
+sewlzu
+wluzes
+
+pkhfwsqdj
+sjfzpdiqkohubt
+
+fovri
+oibrvf
+rzvoyhf
+bmtrfov
+vfopr
+
+fjrisuvcobytqdzklhap
+qnhimfbzxoawcrdky
+
+zekrvspofhlx
+mhkfeol
+lkoehmf
+olhkfe
+hyofeiklm
+
+c
+ban
+cih
+
+zexlfrhwpbqjd
+aqzwrjhexpbcl
+exsjqpwhbizr
+
+mluc
+a
+
+bwrmls
+xtnfjyqc
+aegov
+
+jbaygdz
+zefikdjxb
+
+xsqwujrdcbaghpe
+bujaxwhprcsedgq
+ubgdahwxrqjsecp
+qgapujrxedcwshb
+
+guyhqjtcipsoevnrzbf
+hzoinufbgryesvtjpqc
+cohugrenvjtibzsfpqy
+ietnfojgvczshbqurpy
+zrnoeugthfyqsplcvibj
+
+jov
+ojv
+voj
+voj
+jov
+
+qxpyrsgkwz
+rskzywpgqx
+zpgwykrsxq
+ghsywzpxkqr
+grzxpwsqky
+
+u
+u
+
+jynpslzeuqt
+ragksuyzv
+eojku
+dxmhui
+
+zlnbdqyxpuwjhierm
+gsqxnzlwrhbympuedji
+ycmqodpxirekfhnubwj
+givpsxwyburhmjdqetn
+xendipyuhmjqblwr
+
+xqncdiyzkwfuejv
+ziquhfdxcnvjkyw
+uznkxchjfyviwdq
+cnkydfiwzvxjuq
+ywkjfudicnxhzqv
+
+wfuesonbqzkxt
+opuqtskbfdzjwn
+
+mzanofu
+zdxnufaoh
+owzfuamn
+
+egtdsnihaxql
+altgoisbe
+avztsiejlpfu
+
+a
+a
+a
+v
+
+ygvdhfqw
+gwyfvq
+qfygvw
+
+gojmeplisnrc
+etudhorwnsmc
+rmosnxepkc
+mnxcobsrgke
+oncrsmez
+
+c
+c
+c
+c
+c
+
+cjurmasxnkglvzqwi
+aiwmsgrvuckzjtbqdnx
+uizfxqvsnkegacjrmw
+
+nyurgszpwcb
+qtkzbywsregumfcoh
+
+t
+xne
+g
+
+svdh
+wercbzj
+mqu
+dlh
+
+qmvhgiyzxj
+nhveqgzyf
+tygvhqzf
+
+hlryuivgbxjnmew
+qpjnvukoigzmxerby
+
+plguriyjtvnqfxaozdbscwe
+gercvwnlqbiadpouzsftmjy
+
+vhcrk
+lw
+ny
+
+vwhjsgcu
+jvcswhgu
+
+zsaxovhnumj
+smyhanuvjxzog
+wusmzvhxanjo
+
+xonrstqdzjym
+ojdsrflmethvgzyuq
+myodgskltzrqj
+mdyujcpsfqzotr
+qyomsjdtrazibw
+
+zfgoqjkmiyawlexph
+gjhpfeizyolwmqaxk
+upifygltsaewxmqokrhzj
+xmjwzhakyiqepgolf
+
+ithjs
+jskti
+sikjoznph
+kroifsazxj
+uliecdbvyjs
+
+k
+k
+k
+l
+k
+
+trlpyzghaxdbjscqvkf
+tsxpayjicvzbrgld
+lazjdgtscnbpvx
+
+qkncgfsoba
+sganfqjockb
+qkafbcnsog
+afngkqbsco
+
+bstnrzhxydgfplqcuv
+rfvhpqynugltxzdbcs
+
+ejh
+ygqsah
+inudlvmtcpozb
+kexfa
+
+bukyz
+bynur
+choulyw
+ufy
+kyqpu
+
+nirqajlwbsu
+brtfkzwycqn
+rnbspwlxqiom
+
+jkeyhbdagorvni
+byhdjovrkaegni
+
+vxeh
+evkgx
+lxvngk
+pyajdzirvx
+
+iyjltnzes
+pisomvjnfly
+liyjsnz
+
+xymbztecg
+tgwceozyxb
+xeygtwabcz
+
+ndsgmpyht
+cpghtdsmny
+htdgmspny
+tmpdhysng
+
+juvrlpx
+vrxlpc
+isnalvpkxr
+lvpgxmarf
+
+cshqipz
+uzhsqcpt
+
+giersvh
+hsirdegv
+isuvhegr
+iesvhrg
+
+zfyedlcuibhwsxrtagjqk
+ceuadzmtrilfbyjqwgsx
+jicptudzlwrayfgqxbse
+nsreiaqwbgfoltdzcyvxju
+rzebuolydjvxsgtafiwkcq
+
+p
+sigez
+y
+y
+
+izlqxjauwfecbk
+aiefxbl
+bialfex
+
+pvwbtn
+mbvpwt
+pwb
+weblp
+
+sldajoqrgikuxpehyzwb
+ixtelkyzsawgjhord
+osldejgizwrvyhkax
+
+zouvafmwjprbsed
+iepkswvumtabogdf
+
+bprahdke
+ctedr
+berodl
+qndmeyurxgjzfwi
+
+ihpoydxbjck
+itbhovcwdpkxjy
+qpixnkcobyjhd
+cbjopkhydix
+xkoidcfbyjhp
+
+zbsxrimcl
+yxsrcbl
+xsclmbr
+uxhbrlsce
+
+igytblcpu
+gzabl
+dnbmgl
+sbmghxl
+
+moxrsndj
+jsxnd
+ksdjnx
+ndjxs
+xdjns
+
+izslgdythjorpw
+jilzspofrhydtwg
+
+ehbw
+qdaw
+
+qbvyjplgfomatzhc
+cyflomhbatqvpzjni
+bvuhxdotlfyajcqzpm
+
+zcb
+bzc
+jcbz
+czbx
+czb
+
+clrwvjduntqkgbzyxs
+diakrlvxzytungjqswec
+ugvxjkmcrsqlnwdzyt
+xwvrycqhsgnztdklju
+
+fiqko
+oqfik
+qofki
+
+woyalnhrciezxkvutjg
+lkogcnzietyjrvawxuh
+
+pgwzuhdmx
+pmuhwdzx
+pdzwmhxu
+
+ojyqvtzhl
+tkjxlys
+
+ltgwyonxpudb
+moydwlpzugbn
+dpnowymlgxu
+wuoygpjnldhi
+yanpwsugflo
+
+nibmfhqscljzrtgyadue
+dnsufmahjglyrqticbez
+rslbjgdfuaqmyhtczien
+
+dize
+dem
+
+pqdwgrcf
+cwdgfpr
+wrxpdlcfgu
+
+kecojbdrlsivzahtfyuxp
+yahlvfgdetoqjuiz
+fzjivhaeylmtndowu
+
+mqidyrcjlofwbasvzhu
+qubfsroahdjipzvmcwyl
+nvjplhuafzqwbmsdyrcio
+jdmobxerwqslfzygavikuh
+
+r
+rt
+renqh
+rz
+lr
+
+wzegudnxlfmrvsj
+othqwix
+xbwahyotkcp
+
+azgvil
+uzl
+p
+kswcrxndhbjmty
+qfpie
+
+opmwj
+po
+nadxzfo
+
+ermgqa
+aqmygr
+
+nvlhbi
+kxbncilm
+ilkpnb
+zwednuoqtislb
+nyjrbilf
+
+exnctrkgqzhs
+ih
+hw
+vfuh
+
+lbpyefqwacjgidx
+cejfqpbygdlxawi
+qcdlewjpxiaybgf
+jcqdxilyapbwfge
+xpcidqyfalgjweb
+
+mlitd
+mn
+ryphqgb
+tcik
+uitkdc
+
+qerh
+hyeqr
+eqrh
+
+m
+m
+m
+
+kqbut
+b
+b
+yhlbmszi
+
+ign
+ign
+gni
+gni
+ign
+
+duwl
+dzuwi
+olwud
+
+de
+ed
+de
+de
+
+nkfuvrq
+itdmjozkxgcpa
+
+xbghdct
+dcxgthb
+gxdthcb
+
+qbmerpojvlagihdxcw
+alewovtqmixkcrjpdghb
+joplxmaqvcrigbdewh
+iulwvqpbjdeomcrxagh
+
+qmwonecigvyrzxa
+xcqovgezwmhn
+
+rzkdhoqajeus
+dakhezqusjro
+dzjqoausehr
+hsuorqizeydbtjva
+ujqrheozsad
+
+yexorb
+eoyrx
+reyozx
+rxyeo
+
+btxmgi
+obaheumrtnx
+bcxhumrt
+bvkfwmxtqyls
+xudptmizb
+
+cue
+ue
+eu
+
+aj
+ja
+ja
+ja
+alj
+
+sq
+hqs
+
+sxladpvgftwz
+nyuqbcajomrhis
+
+heoyntkc
+xnygtkohe
+nhltkeyo
+
+tmsgiqvfluh
+dlwqtbfacozgmi
+
+j
+m
+nj
+
+hfrbmwjc
+cbjwmhx
+
+ketvc
+cektv
+vktec
+
+yenoaclvitgfupmhrz
+ctnopmlgiyjqkersxhuf
+
+k
+k
+
+qswzr
+jhgzcoayqn
+viqf
+lmetqdubk
+
+kcqfhwru
+zjqvdhm
+
+yasdizqwhrvxo
+roswcnaxiqvhgbz
+isvhrxoqmapwkz
+yxachvrzisqobw
+relszwiahvxqo
+
+d
+d
+d
+j
+d
+
+epdrbcsvx
+xpcdvbres
+bxdpevrcs
+
+nx
+ybnx
+nx
+kxfn
+nx
+
+khq
+qtjhu
+nxohafelcq
+pjhqu
+
+xhfwlatiepzmcjsnrbkdo
+zpnxfjomsecithrdalkb
+arxlodtjcmqeisbzhfvnk
+rdakehsfxnjilzcbompt
+
+d
+d
+d
+zylwd
+
+dw
+wd
+wd
+wd
+
+lifx
+lzien
+
+xmlfdkqn
+zstlvkehudbonmipqwxa
+dmnrxlqkj
+xdmqkygncl
+
+fxpsjhumkirzvlnwobeayt
+xfvjcaihbropmdstgwenukl
+
+wjcfk
+nfjc
+fcj
+fjc
+fcjn
+
+lyr
+ylr
+ylr
+
+eytqsihkocxbrgvzdmw
+dzfrsktxvcwqomiegbh
+kcgswrtimvjoeqbduxhz
+
+zuvlq
+uzlqv
+vzuql
+quzvl
+lfquvzh
+
+jbhr
+jfbrxh
+brhj
+jeharvbq
+zjbhnr
+
+hrx
+rihx
+hxr
+hxr
+
+puljdkigxwsmntb
+lpiwntubmkqgsj
+blwsukigthjmpn
+frmkltgbyeusjnwpi
+lpqnkgsjmbtuiw
+
+ujtrelawhfiqsozbgxpk
+woibperhglkjtqfxvsau
+
+wkthv
+olvqacdyxgpmh
+khvsnw
+hevwkb
+hrvfej
+
+ui
+iu
+fiu
+iu
+
+vcapxqg
+qkjpwuganhb
+pegqaxf
+
+qbelwaf
+qfjcgewn
+mqwfxe
+wqycfeu
+qohfeiwprdt
+
+wo
+rocaw
+wo
+
+hqeyfglrw
+behfylwq
+yhelzwsfqb
+
+sduomekpxfrliwavytjhzq
+svpdefjmaircyxuqohlwztk
+kvtrhupelqmxjsowdizafy
+uxyvefotzjwidhsprkmalq
+
+fprevkusajgncldhzimbwqot
+qwnvsizdjetcmryhoalugkfb
+fmwsktgqhrlnijzbaoceuvd
+nbarqeultwsjmhivfdkcozg
+
+jqu
+ujnq
+
+endwgsmzfcaqr
+qsmwfrgzacned
+
+vwme
+wjamveb
+weum
+twmezrg
+bawjem
+
+kdhzcpgqiomfwyjlsatnu
+gktdaqlozhjcmupyvnwsfi
+ohncldbjausiptkxwyq
+
+geukr
+kfgn
+
+q
+q
+q
+q
+h
+
+hrb
+rbh
+rkhb
+rhb
+
+ldpencbzmxshwia
+elurvxpznahigdkocmwb
+
+vxeptowscmuhig
+owxegucpmlsty
+ygqeuotpsmxcw
+
+iowfcmk
+gokwlrzmnep
+xowmk
+woknuvym
+
+zmhc
+zhmc
+cmzh
+
+jxp
+xj
+xjy
+jx
+jx
+
+bwhiryzfeutoxl
+msnpivuqwkbajcd
+
+mzfcrdpxusvtohgnqjlbae
+xfrynequbdjtvamlowgpczs
+
+dn
+d
+
+rchyd
+dryh
+hrydp
+rdyh
+
+nejf
+fijnrm
+nhlfekiz
+whnfe
+qotxnbspgyvduafc
+
+ielxrbunfsh
+kqewhomcgptyadv
+
+qktlubevfoiynsadzhxwpmj
+ejwhsuogyqxzrkipbmcdf
+
+f
+f
+f
+f
+
+ydhrpqvelcit
+lhrdkatesyivqp
+fepwvtdqrljznuybih
+ohemxydrqtpivl
+pvgiyltqehxdrs
+
+mpwesbxkogizjcfrlq
+fjgwbymkzselxprqoi
+
+kbdyqaufern
+myzgiwcp
+
+ixjotau
+cfljotixua
+
+pulwjsrahkezq
+jlcrvdpiuazfsn
+zbycmjglspauxdr
+glcaposfzjuidvr
+
+tdfqh
+gcz
+fnpmc
+vak
+orbu
+
+dbgzyspejv
+xigeymrdk
+mwexdgy
+yeadugmth
+cdgkewyfq
+
+aduflnjh
+jdfhnaul
+
+iwpk
+qufnbav
+
+r
+wd
+r
+r
+
+nq
+rq
+yzq
+nzq
+eqpfb
+
+cqnv
+cnq
+oncv
+cnwz
+
+a
+b
+a
+a
+
+ibc
+zca
+ca
+lc
+
+jhzuqnitk
+tikqjzubr
+onzkiuqjt
+qujthznmoik
+
+mlbdxcuzjeoipqytaskvwrgfnh
+zghibtpoqrjyancuskdxmlwfev
+
+kuolxsifydbmep
+mlpoiydexfbsuk
+fbmkyxduepsilo
+dozbuyktrmxiwlnpscafe
+dikmsobhepxuylf
+
+jkebfzawcyxsqniurldpmoh
+rqjwymcuaniofldsbek
+ubkijedynomascflqwr
+uatfielnyoscdkjqmwbr
+wigmqrkdysloejcbufna
+
+bdeaowzflgtuycp
+ueghpydwtlxjcavf
+
+pkye
+ke
+ket
+ek
+ek
+
+lhntvadrkufwescgb
+qdrbnzwfieltuoxagvpkch
+ngvkjdwamlhuyfrtbce
+sfgarwlhbnedtcuykv
+
+y
+a
+
+vosbcqyuwhk
+skycvquolwhb
+csuhwvoqbky
+kcobuywvshq
+uyqbwvcshko
+
+lsen
+nzrlv
+luhjinxq
+ntml
+
+bxtjw
+ibtjswpqflvx
+xodtjwrb
+xrwjtyb
+wxjbtr
+
+vc
+vc
+vcen
+bctvl
+
+vt
+tv
+tv
+tv
+tv
+
+akx
+ank
+ka
+kax
+
+fi
+i
+dilzc
+i
+
+e
+a
+e
+c
+c
+
+wgishljxzeufqbdamry
+bmgrxydsahiqjfluwze
+
+jzhwgbeotdmup
+uskhbvypwl
+wcpkhfub
+
+mgoflsua
+gmluaofs
+oasgflum
+
+myswzflpqvuatxknbdegj
+uqbgdevtljwfszkyarpxmn
+
+ctwlfnisxezhdpu
+tlczdnwshmip
+ctwpnslzihd
+nglihtpdsmzcw
+cdlhwpiznst
+
+kyblsmitxjq
+kxlmbsijar
+jcxlsbfvmkzio
+vbrzijolaxwkms
+
+k
+k
+k
+k
+uk
+
+thnxru
+qxyrtuhn
+tnhusrx
+
+eomv
+cgvxfmyseqbi
+verm
+vanem
+
+dhbuplfwreozxygvic
+gexucnfplhyriwozbkvd
+wuyoezvchfigxbdlrp
+fpyrciwvdzugxloehb
+
+tzjvre
+rvzjet
+vztejr
+evjrtz
+evzjrt
+
+zkwqa
+gnxlruozpfe
+qmtzchky
+vybzw
+
+ivanhem
+mnahevi
+mihnqeva
+anihemv
+
+elw
+bewl
+lew
+
+mcrfzgkphioj
+rlpigtmhckzo
+azpirgsckuofhm
+mhedpqxbozignk
+jkhyopizgmav
+
+cewmxkn
+cxmenwk
+ewxcnmk
+knmxecw
+kmexwcn
+
+furandwxcpebkih
+bockvuwxhaiperfn
+abfkupcnhzerixywm
+kbeanuxihdcpwrf
+
+kydunijzc
+unywcfkizjpd
+yjnzmkldeuhic
+
+jbpky
+pbky
+kyb
+djbkyg
+blyfku
+
+uaksgtnm
+maxngukvst
+seftjuknihaogm
+tnwukgampsd
+mygksatnu
+
+frykaibhmqocwupnles
+wcamqulkhsbeiorpynf
+rycpimbhakleuqfnosw
+oeynsahumfblqcrikpw
+scabehnompiquklwfyr
+
+nxi
+ni
+in
+in
+
+zrqglywd
+tqyehuroi
+
+snzbcvtkryhxuwfiojqmade
+qduzryecmobsntxhakviwfj
+keftvjiozrxambcqhsdnuyw
+
+elidfk
+zkdli
+ilkd
+
+losmpg
+pgmrasco
+jhsbpofieg
+ongcmps
+
+kiglzftorbv
+yitmpjkqzha
+mhiqkztejuncx
+
+mpskhgatqrxcywlebduf
+pexqbwaycfsldgrhtk
+balxfgvyecwtshrpkdq
+kewstgclydqhprxfjaib
+
+ey
+yq
+qy
+y
+
+i
+k
+
+isu
+insu
+
+ncpakrm
+rnekmacs
+
+xs
+xs
+xs
+sx
+xs
+
+y
+y
+y
+y
+
+sxcjonw
+xsenoj
+oipvxnsfgqkjl
+zxbshnojwu
+bjoszxn
+
+zvathnqlcgxiboweus
+wtuvanxlezihgcdso
+
+xk
+kx
+kwx
+xk
+
+etrbigydaohsumc
+pwmalnfvzjy
+
+yhj
+exhkjz
+njho
+jhno
+
+syltikaxprongdmbv
+tnmjzkqprsadyogvxbi
+ahdvmgnskuixcywrbpto
+
+rxinz
+xk
+
+svd
+sdv
+divs
+vds
+
+lm
+adlyu
+ql
+ctkxhrnlb
+vlujw
+
+irhxaewlgqjf
+jgiwhraltqkxe
+hjgwaulrtixeq
+geixhaljqwrd
+mznqvjgsxelcroywapbih
+
+bgtp
+tblzq
+fbtz
+ltxb
+
+hxolrdgytjwbazcmv
+hrwxioacgyqtlzmbjp
+bzwrumgstxhyacolj
+jcyhrabglvzoxtmw
+zlrmgxohetwakcybj
+
+rns
+tib
+
+vbyqlneakcsz
+rgmpdvwik
+
+wobkderiq
+yzhewd
+fieqgw
+smcpejwxlvut
+
+afmznvekygspctobl
+wpxrlbhdtqijyvou
+
+dlh
+lhfd
+hdl
+hdl
+
+enbzhorlvais
+lieszanh
+
+sgvfkilbqa
+aurnvsb
+abnmshv
+
+s
+b
+k
+h
+
+cw
+webfiyz
+
+mjdla
+anzmd
+dqjmla
+adgpoum
+
+tne
+ne
+
+ncdlqwmk
+ikcndqw
+
+p
+egzj
+piy
+
+jodrtu
+ohasru
+
+kpufqxezgbdlj
+kxglfedpzbqu
+qbdlxepzkugf
+kujqzpfglbex
+hlkcuoepqbtgzxfr
+
+tphmylucsnbevjrxdw
+njdfmpvrxcb
+rcnfmjdxpvb
+bvmkrdxcgjnp
+fjxvinpcdrmb
+
+bvhdipkwsagrzqxoeultynfc
+klefxwratbyvpiqhgudonscz
+tbzwfraikuqhenxgsmoldypvc
+
+lgubtdvcpnaeskrjwhfm
+btzrnviochdeuwmlksfp
+
+g
+g
+
+rgeanvoku
+keuvzrogyan
+onvegaukr
+kfnogecvqrau
+
+isnmdpj
+skjxbgm
+sbjguma
+cmosbqj
+
+ctafijyo
+egbvdhpwksmu
+xntqyr
+
+eowfzg
+zfgeow
+
+aoib
+oaib
+ouabi
+aiob
+aboi
+
+wyjviubfg
+htdkazcpoml
+
+dxtyqhrabwfcokjezil
+wtjbehzkilgcvarxqyfuod
+ftbpoadqejywichnzxrlk
+
+dprqcval
+rdvlpqa
+phfuqrnjvd
+
+iblxrpvzfqoujstwdnkhmce
+mnstfolircdbxhwuzkvqejp
+nkvrswjbtipfueodcmhxzql
+kuhtsdviowqxncjpzmblfre
+
+icsf
+sbcif
+icslf
+sfchym
+scgfli
+
+chtybjgeowzmfqpnx
+gfnbwlptcyxm
+tyxapvnbimgfwuc
+tnfmwpcgsdrxby
+
+yxjhnaqbtvlpd
+prlgthi
+pemszgthl
+pktrlhu
+
+itplafwyzndrqcbgs
+dnrbyaztwpifcqlgs
+qrnbwcxifdspagltzy
+swkziqbplcjngrautfdho
+
+aige
+txbvjl
+tcbdj
+
+mgyujcwaktszefqoirdhvxnb
+zytsgavicowhmufxnkdrjbeq
+hvlegnkiuqdmpxbcafrowzjyts
+
+atsmqfczgdloujnbkh
+clgmhtabjzknqudofs
+kcqtjbusohznlgfmad
+qtjbhdnoacfmksgvuzl
+
+bejmhwlnv
+jvhbmlwen
+wmhlnejvb
+mbenjwlhv
+wbvnljhme
+
+ojrf
+ojrf
+rfoj
+jfor
+jfor
+
+mjgndvtfecposairblxhkz
+vknpmfzbglhreoasjcitxd
+bswvxjgfmerudnczytlaoihpk
+xrifvklnjztgcaobhsempd
+
+ymcthsuirlpzxbf
+uyjxcfzirqm
+nyumiwfgcexzr
+rftouxzsvmalciy
+
+midctzbgpsjqwer
+iwtdebmsrqgz
+nimbszqregdtw
+
+lizoduphs
+sruhdilopz
+
+zsapyuc
+kmqdneholgxvwb
+tjricusf
+
+h
+lh
+lmn
+jo
+y
+
+tvqsz
+sqdvpxecmby
+znwqsujgv
+nvgoqsf
+vqst
+
+scwm
+wmc
+
+uogmpy
+zygpxu
+
+y
+cy
+yc
+yw
+y
+
+bmilekvzfouqjdc
+zvfaodqhmcjklb
+
+meh
+ehm
+hlem
+emfynhp
+mekh
+
+nelmicxufzj
+czjflxmwi
+itfxzcpdlmjo
+
+rfnxwmva
+ouiarcb
+jryekl
+
+gtjdialpk
+lyjmonspwf
+pvdljz
+lpjr
+ukjexlbpq
+
+r
+r
+r
+
+hbz
+xg
+
+lsprfiznqxwoejkbmgyd
+dmeqgizopjfrkxnwybls
+
+ngprdljf
+ljzrngf
+fgrznjlu
+yfgsjrln
+glrjfnciu
+
+wfv
+wvf
+vwfb
+
+yqbpmancd
+dfjrv
+sdiolrvhwf
+
+xvnbgkal
+uxvfglisnak
+kyclemvqjngotpxa
+vgasnlkx
+
+jkfoeuypq
+hejyfok
+zvilgoyjfmkw
+fxkojy
+ofkejy
+
+xvoskgnrfi
+nokrwivgs
+sinrkvzgo
+svnrikgoe
+ovgsnirek
+
+niy
+nqiye
+iywn
+xyni
+
+qauhvi
+vaihqu
+
+akpwgyulbfe
+fauyvtzlkwngosb
+cmghwyklrfbua
+wpxcabemgfkqluhy
+
+yqvlidbmhkpgtuszf
+vjzyupbhlitq
+yvulwitqbzh
+izblthxqvcyu
+aqfezybvkunihtl
+
+slmvntra
+vrslatm
+rauqsmtv
+
+mvb
+m
+
+tlzinqbsjgrw
+bqsntjdr
+qpcsbjntr
+
+rodmgwef
+wzekof
+fzowe
+ofwe
+fokhwe
+
+zpsimtknaldgfebq
+bpadkftzilsegnxqm
+
+mupfnj
+hsnu
+unh
+syiuhcn
+
+entlxzavdbpfsowuq
+qfzntxowlbvdpasue
+wznhspobtqleauxvd
+pzwnsxluqbecdvato
+
+bhowvre
+sjztdmr
+oevalywrx
+
+vzdokpinc
+dynavsgjo
+nvsbgod
+
+xjecrkvq
+cejqkfrvx
+vekmcjirxqgd
+vckelqrxtj
+
+abf
+fuba
+afb
+baf
+
+trcmhwa
+mrwycftdha
+bmhitcogjqeak
+
+zlrufcghipwjxmkaqno
+gprkuxlfhcqjawnm
+anfygcklxwurpmqhj
+
+szxdjetgavuy
+xjtiyegua
+yucexjtag
+
+zudgemcxtp
+woac
+yiwco
+ayckq
+sjcqobk
+
+hr
+lpvn
+pel
+gykbqia
+f
+
+rzpmnhoeudlcawbiyfvxg
+xeycvthsrfmwbpnaluzio
+
+soyvdbuzf
+uzdoysmf
+gzsuyfdot
+
+w
+uw
+w
+w
+
+mixeawbdrpozjqlvkhyf
+arxnwybjzlhqdoeikgm
+otdibuckxjyezwhlaqrm
+kyzdirhxwaljoqbme
+hdrmleqjybizwsokxa
+
+og
+glob
+gvon
+og
+
+vqef
+qve
+qelshv
+veq
+qev
+
+wtcfmjopqisz
+tfmqigrjzcbp
+
+poa
+pokcw
+jitdospb
+rospav
+
+csfqhwendrbigt
+qfthwcrbnsedi
+
+kx
+kx
+x
+wcx
+x
+
+umxvbsypightkdeq
+mknbothiadpeqx
+khbieqpdtmx
+ptbkiqwdhxecm
+mkzhexqjatpidbf
+
+inazybxjlp
+ylaqbnjihxpz
+ljybxnzmspiawv
+teyjaxpfkdcblzni
+zinyapbxlj
+
+rdusztincoephyx
+eythcponriszxdu
+cimzenhxusdpyrot
+prhtndyuscxoize
+
+nptqdiemfalyuhbgv
+xiynrzpaubelvftdkmgq
+vahmlunpetgqiyfdb
+luytfvqpbagmenid
+
+fykps
+kpfys
+fkspy
+fksyp
+
+wb
+gthprjo
+
+gyshflcjudtnwiaborvxzqkem
+ejzgxrkavbohntmscwqduyfi
+xnjprtevydzkihfwbmagqcuos
+
+odegpjrticlauqyk
+jloadrvubcqgiype
+orghjiqdfmawylnupe
+
+blepmn
+emnlpb
+
+cflwhius
+srqfuwcl
+cjwspxlfu
+lafrwcsu
+
+euvyacbzm
+tywmxaugpbc
+
+vbafy
+bavyf
+
+tsqrmciwkvz
+iqtkwrzbvms
+
+hbdkfelts
+ktedslbxf
+elkvzfbpwtsod
+blfekqsdt
+
+bmxlhiakopjrvcnwduytef
+jrbaflehdzcivxnkwputmoy
+
+igmdlqvjkt
+sntyfoxaruc
+zhbtpuxew
+
+qhftyzkdpe
+zdfeptqkyh
+qchpdkfytez
+zfpqtydekh
+ekfptzqdyh
+
+mdnhxrtla
+xdcmolrgefjat
+xrdtlmiay
+pmryuxtsdlhza
+maldtxr
+
+gzrycsoeifxqmlv
+vqefmclnxsopikrgyz
+rzqcveygiolxmsf
+ecsvgyqflromizx
+
+dqjormwctbe
+ewmzxivtqk
+vlwetqmg
+tenqwzlxmak
+hqkmfwetg
+
+pamruofskhgx
+nbaicywlvurjqt
+
+cfhprmjydtwib
+eylox
+gqoxyz
+
+mg
+eyj
+
+pqvdhf
+dpqvf
+pvsqdf
+
+ocguwrzdpejvknfitbh
+peodckrzbfqtiuwn
+ezotrbnpwiducfk
+
+ewahyrtcxpu
+foqzcjeyuw
+nuyewlcif
+wcmuiyeb
+vdykwmcieu
+
+mrljx
+rjoibh
+
+eyaxshrvujwkd
+wevusxahdyjkr
+
+szgcmlvbwp
+mlhzbvgtrpcs
+
+pkytqjfruxvmawhsgdnbol
+laosxkvfpmutbjngwqd
+xkabnslgtfvudoeqmwpj
+wopmuvgfxkqjdaltsnb
+uvmspqfdjnkotgxwabl
+
+c
+rc
+ch
+
+wvha
+whv
+whv
+
+lmcpuqaikfzyod
+youipzclkmvftqa
+cilkadqwzpyofmu
+lmuacikyfopqz
+uolwmcyzfpikqa
+
+yncbugjr
+nujgyw
+vjyguon
+
+yzchibmu
+nujzplx
+
+uhlcpnjxy
+hyxlpunc
+plnhcyxu
+xnhkplcyu
+lxychupn
+
+sqhtziykurw
+nscgvfodlmbejax
+
+vodwenxyrmthbfpcgqzuji
+vuopdbwtijqxgnlefczmsyhr
+
+jnlwdvrtbaief
+gwvijtnehc
+
+yndsmw
+pwsyndecm
+mwyrnsfd
+
+hantryqklbd
+lfnrhakbydqt
+lrynhdtqkba
+hkqrtanbldy
+aqdsgblhvyntkr
+
+nacrmgizuqhwlpjx
+fnigmsuzwplajxqch
+gmzjuplhxiqnwac
+ijlznaugxchqmpw
+
+vbuozwdxrnetj
+vuerdznwxobjt
+
+zlyfqigecsjvbx
+kmznlbuoejs
+
+rce
+w
+
+nwjie
+xulkaegsy
+vipehm
+oevcrbf
+jme
+
+lvyzgheudsna
+ehzdyasuln
+helnuyzxdsa
+udbeasnyzhl
+bynahsuldez
+
+qepdrhamt
+ifnd
+nxfdy
+
+gsuap
+pmoausw
+tsanupi
+
+gyhaiveludnjftqbswzrm
+smbvnyijzafetrlhdgwqu
+hyevmqlcisxzbfukgndjtwra
+lmzuqfewdjsvrgtahbiny
diff --git a/2020/06/small.txt b/2020/06/small.txt
new file mode 100644
index 0000000..8fdfebd
--- /dev/null
+++ b/2020/06/small.txt
@@ -0,0 +1,15 @@
+abc
+
+a
+b
+c
+
+ab
+ac
+
+a
+a
+a
+a
+
+b
\ No newline at end of file
diff --git a/2020/README.md b/2020/README.md
index 42ceb05..b57613c 100644
--- a/2020/README.md
+++ b/2020/README.md
@@ -15,7 +15,7 @@ asdf install
 |  S  |  M  |  T  |  W  |  T  |  F  |  S  |
 | :-: | :-: | :-: | :-: | :-: | :-: | :-: |
 |     |     | [1] | [2] | [3] | [4] | [5] |
-|  6  |  7  |  8  |  9  | 10  | 11  | 12  |
+| [6] |  7  |  8  |  9  | 10  | 11  | 12  |
 | 13  | 14  | 15  | 16  | 17  | 18  | 19  |
 | 21  | 22  | 23  | 24  | 25  |     |     |
 
@@ -26,3 +26,4 @@ asdf install
 [3]: ./03
 [4]: ./04
 [5]: ./05
+[6]: ./06