BUU MISC刷题记录

附件上传gitee 流程

创建 git 仓库:

1
2
3
4
5
6
7
8
mkdir misc
cd misc
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/l1yee/misc.git
git push -u origin master

已有仓库?

1
2
3
cd existing_git_repo
git remote add origin https://gitee.com/l1yee/misc.git
git push -u origin master

报错解决:

git 解决push报错:! [rejected] master -> master (fetch first) error: failed to push some refs to

1
2
将线上、线下代码进行合并:
git pull --rebase origin master

[MRCTF2020]寻找xxx

题目给出一段录音,初步判断为一个电话号码,后经过dtmf2num工具,得到一个号码,将其发送给公众号得到一张图片,图片内容里就有flag
img

在这里插入图片描述

根据频谱图来

频谱图如下判断

一个拨号音是由一个高频和一个低频同时发音组成
由频谱可得到一个规律:
同一行的低频是一样的,例如789,同一列的高频是一样的,例如2580

分析12个拨号音的频谱图

在这里插入图片描述

可以看到一个明显的地方:
第9、10、11位音频的高频是一样的,因此他们应该在同一列,而低频依次降低
根据拨号音频谱结合听到的声音,第9、10、11位拨号应该是085或者852

另一个点:
第2、3、9位的音频低频一样(其中,第3位与第9位是同一拨号音),说明它们在同一行,且第3位的高频比第2的高频低
若第3位的拨号是0,那么第2位的拨号应该是 * 号键,这与hint:纯数字相悖
因此,9、10、11位的拨号是852,第3位的拨号是7

同理,根据高频和低频比较,可以得出其他的位的拨号
最终还原出1~12位的拨号依此为 187485618521

利用DTMF识别软件识别

利用DTMF decoder安卓app(https://github.com/pjasiun/dtmf-decoder/tree/master/bin)

对该声音进行识别获得号码187485618521

但这对音频和环境有一定要求,否则识别会不准确

可参:http://www.ericdshen.com/index.php/archives/5/

[INSHack2017]hiding-in-plain-sight

foremost分离

直接打开jpg看到flag

[INSHack2018]42.tar.xz

一堆压缩包

上shell脚本

1
while [ "`find . -type f -name '*.tar.xz' | wc -l`" -gt 0 ]; do find -type f -name "*.tar.xz" -exec tar xf '{}' \; -exec rm -- '{}' \;; done;

就能得到flag

[HDCTF2019]信号分析

用Audacity 打开音频分析

观察它的波形,发现了这么一段很有规律的东西,每个周期的东西都是一样的

在这里插入图片描述

62268739.png

根据提示文章,已知两长为 1,两短为 0,先短后长为 F,无效码为先长后短

题目不包含同步位,引用一下赵师傅的图:

img

flag{FFFFFFFF0001}

[XMAN2018排位赛]AutoKey

打开流量包 发现是个usb流量包

在这里插入图片描述

usb流量,直接用UsbKeyboardDataHacker一把梭 python UsbKeyboardDataHacker.py attachmeng.pcapng

拿到一串字符

在这里插入图片描述

1
<CAP>a<CAP>utokey('****').decipheer('<CAP>mplrvffczeyoujfjkybxgzvdgqaurkxzolkolvtufblrnjesqitwahxnsijxpnmplshcjbtyhzealogviaaissplfhlfswfehjncrwhtinsmambvexo<DEL>pze<DEL>iz')

其中是转换大小写的键,~~就是删除键,按照这样恢复一下,就还原了出题人一开始敲的字符串

1
Auto('****').decipheer('MPLRVFFCZEYOUJFJKYBXGZVDGQAURKXZOLKOLVTUFBLRNJESQITWAHXNSIJXPNMPLSHCJBTYHZEALOGVIAAISSPLFHLFSWFEHJNCRWHTINSMAMBVEXPZIZ')

然后就是用autokey爆破

官方脚本 py文件下载地址 http://www.practicalcryptography.com/cryptanalysis/stochastic-searching/cryptanalysis-autokey-cipher/

配置文件下载地址 http://www.practicalcryptography.com/cryptanalysis/text-characterisation/quadgrams/#a-python-implementation

两个网站,一个网站上最下面可以下载break_autokey.py,然后在另一个网站最下面下载english_quadgrams.txt.zip和english_trigrams.txt.zip和ngram_score.py,把两个zip解压并且txt名字分别改为quadgrams.txt和trigrams.txt,然后两个py文件和两个txt放在一起,如果没有装pycipher的装一下(python2环境) pip install pycipher 然后把autokey的密文放在break_autokey.py里面

在这里插入图片描述

跑一下py(python2的环境) python2 break_autokey.py 然后就观察,可以看到flag在klen8

在这里插入图片描述

这段

1
HELLOBOYSANDGIRLSYOUARESOSMARTTHATYOUCANFINDTHEFLAGTHATIHIDEINTHEKEYBOARDPACKAGEFLAGISJHAWLZKEWXHNCDHSLWBAQJTUQZDXZQPF

理解一下就知道flag了 flag{JHAWLZKEWXHNCDHSLWBAQJTUQZDXZQPF}

http://cbase.top/index.php/2021/04/19/xman2018%E6%8E%92%E4%BD%8D%E8%B5%9Bmisc-autokey/

[QCTF2018]X-man-Keyword

一张图片,上 Stegsolve ,发现图片开头 lsb 里有些东西。

java -jar Stegsolve.jar

lsb 解密脚本

ZG4ubmV0L3dlaXhpbl80NTc4NTI4OA==,size_16,color_FFFFFF,t_70)
在这里插入图片描述

可以得到:

1
PVSF{vVckHejqBOVX9C1c13GFfkHJrjIQeMwf}

根据题目提示,尝试了一下,发现是 Nihilist 密码

写个脚本解密:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import string

enc='PVSF{vVckHejqBOVX9C1c13GFfkHJrjIQeMwf}'
grid='LOVEKFC'+'ABDGHIJMNPQRSTUWXY'
flag=''

for i in enc:
if i in string.ascii_lowercase:
index=grid.lower().index(i)
flag+=string.ascii_lowercase[index]
continue
if i in string.ascii_uppercase:
index=grid.upper().index(i)
flag+=string.ascii_uppercase[index]
continue
flag+=i
print flag

解读一下 脚本

就是遍历 enc 如果大写就到 第二个if语句 查询它在grid的位置 然后再去正序的 26个大写字母中找到对应的位置

小写字母同此

Flag: QCTF{cCgeLdnrIBCX9G1g13KFfeLNsnMRdOwf}

[DDCTF2018]第四扩展FS

鼠标右键查看属性 发现Pactera 猜测可能是压缩包密码

在这里插入图片描述

猜测有压缩包文件

foremost分离

1
whsa1TuaFe1FhToeDa1}aDTn{hn}CTsu!4Deni!i{DusTD{DF4{a1DTihD1DFwaw!nuweh{nDw}hiuD{{an1D}4CeueTDnh}hi1u4s4uu{CuF}1DC1iD{enC1!esC4u4nCi{hCin4TTwD4DF1aTFTh{ueniohihuDDehDssn1aDFeh1DTiC}hnuweDC!eenoea4T4ueTiuCs{aT411oss11nnnFDCskDu4swu!FuDa4hsCCun}41CsFie1a{k4iaDT{kkwaTkuCkwn}wD!TDuwDnDwCs{iCuFo1{ek{!ohCnTaaDTu!wF11eoDwu{aC{oC1C!khDkDwni1hok!ahusaTTwoowCa}e{i{hn{Tk4iD{ue}uFT}on{TTuswaFTaC4}4whwFsokoDFDoFDFaDahsTsohuCDFFFFen}{CCCD}CeuCTFkeDo1}kFsCoDDwnosC!!!}uCDCn}T!TuFnkCDnhasDnDkD4hsTieDsuusDiFh!aDa}nokFFs1D4DauD{F4u!hiCehas4o1Do1sCD1DekTnoTwhD4sDwCseFFaDhChiCCFThFsCuiCuosk{k4!usF!F{k{nkaueFDoeD!sFsiDsDhDnn{DC1C1sahTh1aa1DTTiDkw{{ia1Dnsi!DuCusCFFo!e4aCawF4hskkT!FihuC}1s!!DaC4o!!nuwn4{u44uTowaDi}DDhua}CDCohuTFiTD{ioi}nDCaaFDnkTTFk4TkTuaD}FTs}{oskn4!k}sDh{D4awhusD4n4aFw}1w1}ThDwDDFCTiF1DCn14{oCkT{h1hh}!uCh{s!DThhnouiohhewaD{}wn{h!{4weFCFFs}}ThCTTkC{wsuDwaoDD}FC!4{!TaeF!4}nDDk{CCC{osFun{FDkns{Tiun{k}euFs1hhDoeC{eh{n1isDCknhn{1w!!CT1DTe1hDn{4}!wno4eDanCnnsuhDFDanwCuDkhuFDDFsFw!uDaenihukTo}F{sCaksa!e14!DoaDDT1TwaDne{T}4e{h{aFnhTkk1!{aDC}4iDTFukaikF{aDsDs!DDsowenkwThkkTDwnnFCa{CT}s{oFwCDD}Da!u!1TD{FConenDsFw4DuD{Dkw{F1sueh4weho!{CDDwTkshu}snFTneesCu!!4i1wTsDnah}!TsuDhD{ae{}hDeaoF{a4hhen1{Dk4k{iwFw4Deen!FThnhahhwwwuDD1ownw!hw1nCsuw{{!DnFTCT1DTwFnu{!Csa1enT{TCDTD1ni1sTTTkCswC41DsaF}ChsCaDk1i{4www{uC{Dk}wuuiwknC!oDTkCwTwwFsso{F}aDni1snFu}eoDiD!eiiFC}wDwsD!uei!owkweuFn4e4kn!C1DDDT1DDnFFuCh1iF{wDa4a{u{{wuuC4DDnDeusu{hahneauuFD{DDsC1}nFhuni!D!T1wDsw1ouh{T{DD{u}s!wD4kkThe}a1D4Do{uCswDsCnik1hasw4ea!ih!CnuC{aannahs4DTsD141F{}iu!nD4{4D!s!T{C{oweF{aCow!wwDkenDTaFiThFD4us!FCCiF!{an1{}uke{DiDwwashushTuDuhD!CD{DThCu4aiDChDe{DDi1C{shwDaT4CiDeF4aiDuDTD}e1D4DDkDFkTT}T!hD4F}DTnFT{ke11}nCFDCkaaD{FkDF}{u{aaseoTiChDDe4C1uuDsDCk{!TouDe!oC1{w}aCDwDineDaDwCsk}wwF4a1n1{Fh{F{nioFe1nnChDa4hTaeTkFCkeD4uhCeDF1TDokwCDw4!{4CeaC4ki}wFuDeCC{{{iwuFhFDn{onuTsa1DD!Ce1DDTeoeeTDDFD!nekFswko{Te1e14TDCe1DuDaF1!hnssksoahhihFakkCa}nFDnTD4T4hCnsshosCCa{uueDD}i!D4F{F}noDDah!!{F4ui{Fw4eCsC{Cnu!wkCw1kTi!{DFCaDh}TD4{}T{u1oCC{ksFFnC4kCuksC1eDaFkDn4FaDh}w11ehF4un1TDwTF!uDk{DTDuDsnaueD{oFFn1FDCF}DainiCDsDDFueFDTFeh}s{nFk!oDDsseikT!{woC{Twh}n{uhTkaDTahoD{D!D!CC}1FDDo1iukCDFFauFhosiDhuFnoD!euFkoFToDh{kknC1awCe}sDDseDaTuoD}14T1unDaF{nTkeThh114CnTw4Fun1F!DF1a{4FDsu4{!ki{onTaaussunnCwi!{Cui{n}1DouhFaF{TDTa!TueTFahD!DTeD1h4s1nneiDsT!1DD44eDu1ouiD1hss}kTD!eChouDhhieT{{kCeDCoeuua1T4T!s}sT{kisi!CC}iCDaDCnsDh1aCshDDh{!DanCDekseD4TTeioFCwiw1eD1TnhDsC14aw}u4soi1nksi!{h}wCw4!Cie{ienhCnihDu!TDD!C}aDoTiDnaDD4wwF}hkDnC}keaeFwis!nCiaD4{4waC4DCDn1Dehks{akFFuoFT{Ce1aiFswTiaTC{oDFF{hwuaDFDeD}TTneoD}D{{Duwosh}4w!ahau}Fakai}}FT1wnD11i!1hh{4{TC!CFT4wahaF}hDCh1iniCiaD{TD4eo11uDiTi!D{Fnn4oD1FwesTk{Dw4husFCu{14eaoCDnD}Cwu!n{e{nuDD4wahnCCwFChu{CDa}hs1Dw4DTCun}TaDus4n4aFi!i{oFewaDD1Tu4D}uuDeiuhnF4DF!CniDh!DnhDTFD}uhei1si{ahCFhoDo{4oDueai!hn!4saD}4whwFD1!iT4DTwCwa4hiTDkn}aD4!{!DuDahswDCnC!1uDD!a1khsDuCaD4CweCi}u{uDo!DwohhDDn{{nnTDkDhDDo4nanFTuwFuTChu!s1FheDsCDhkwhFsFh1ukhTD}sCTTwTk!nheuiauD4DowuekFFh}TDi!aF4TnkD{uwhsD!h1hTTkuneea1Fs1e{uDCuh}uDwnCosDn4DDD!{Fnh4hassFak4h{TD!FTeDuFCTaaDs4Fon}DaoFa1eTh1esu}1FChwe4a1}}CDF}}FhDuwFF{uC!wh1us1DCCFwsTk4oFhFnF!D{{in1ss{kiwD4uwh}}4nDw4aDD!niaenoFDD}!nF1ioiFhua{}{Ds{DTDCakD}isCa{wwokn!FseeThe!iiC{DaD{DCD4wTD{n{o{1e}i!FwFTawwa{uC41{kTDTwnsDCh1kFuD!}DhuCuhihssanT!hFoDDDisDD}!!euneeF{1n!ieDCThi!TnwhD{iF1wwasCDDeuDnD4nh{Fn!o{DDownFininTwTDaT4iDF{D{wFTe}{{Chowu1Fs1sDsTshasCuCkCuk}!Fhwen{Duhuisw1nkskhe}{s1}usehTkDTFFuDCsCF}eoswhDF1eD!ihTww{eiuD4DTDhaa1DC}}C4F!F!uw4}aaDeoDun4DFnuuisnCaDTsTna4{aDCs{T{4ekDCTosnoDDi!DnDkTh4FnTu{4uiwD4nT!Du4hn{ouiae}DC4wso!FoasF4{TeaCa{TDFwauTCTDn}1shnDhk{sns1Daa14onDsTie1ueh!noaTnDFnoCn14CCDnTDDC!4ss4eh{kFDnhuehwniwu}hDCCaiu{F{DDh}41TTDCkD1DasDeunehTTho!DowiDTowuFDuso{{kossDiDkoCsiDiC{DsTsFk{euauuT}wu}TasuhDFT1TkahCCTksCheC}uDnuaD{aCC{eDDDoDDsD4su}CD1sasswFe{hs}4hu{TeaneDC!iThTTssDF}C41an!TnheoCTuaosihnnD44{Cek}uD!FD1DuoCeoCFnDhDDw!{ekss1!aniCDko4DFnnTCnsCFFDDCwou4{DsTeuF}4Di{eu4D}n{F4owwiaosDDCakChC{DaunuDui11eDu}TDDTChFDonD1ksDTT4}4nk1Tk1FksuDT!eF4un4oDwa4}{1F{ueD4}oTsDk{i{CFha!in4n4uDF!sFwDDuD4knFiuDksoCanDDC1wFCniTnaa1e!D1{DFDhC{{DuoowDnhnD1kwunuTkuDo1DDDDoT1}n}sFCaiCuCFan{144hek{}kksu!1}ikT!{CDsio1DakCenDese{n!keka}{eThwDsnkD{Dkaa1{CCwhDkaosTk!ehh!CkhD4hTFoThsCueCC4hTssokDeTFD{wDCh!CisiTwFTChsTDDF{CC4sasD1nCuuun4D{{FhaFDa!TThTawnshDaDwDD!4iF1D{oo!C{hsnDs1swFh{eenTTiF1skuCFnhFeehh!DkFkDehCiFa{sTwuDnnn{FTuiFu{a1ua!aaF!wnuCC{1iDwDwDFF{1nswwuk!i4DDCanDTak}CskoDF}asDDs!FFkau}DkuTTTnoiauo1Fhs4FaDDwne1neuwsoeoeouiuwe{Douhi{D!o1ieDiDnhooFoDDkFhiuCeCninwaCwDuuTwTa1FDCsDk{n4FD1{Cei{uiT{nhuwn1ah!FD!kDahCsFDsFCiTwasC!}4!DF4nTsw44ueau4kDhCCwiDhk4k}DwaFCeFTe{ek!!eeDD{TDsaa4{D}akDu}FF{nT1eaouCuwDFahFaChD4o{Dusk{weTn1ss1DkD{CCDe{kis1CiFTao{DCFDkw{e{CsDDT1F!CFDiu!{4!1TF{kChawiwF}{Fw{nahwe1DCTe1CiTCaoeeD1iCDDniCiDFhToDDnuDwkoD!Too{}T}in}k{uihiDDhsCDFDDD4uCFiCe4!i{CCeos{oD4uikDuh!FTnTTs1hh4uDanh41anuinhDh411iwuCDTDuTh}hkCsssC4wiFe}{nD1CeehnD4{C{{DkC!n{swTs!h41ua4oD}}D{!!uk4!CDoFeua11hF{To!o{!{nsDnnuChD{DDsiDkeD}aaDDDFDaa1eTFaFDu!ui4DkTT4oFFuDsF1CDs1aFesaiaDhieFoTuoDhskwC{DF1k1e11DFF{euehuC{Ckkko1{a}F!isuuCuFCeue1F{FDaskD1CoDTouC4sDFsoDsuF!wnn4aaFDTDC4ekkF{iCenD{u{uDeknTTD}oD114hDDe4hFDDhiCnFDDCs{44eusD}e!aeD}s4kFaFo{TskD{iC11iDT1w}eesTkDFw4kseC}F{1nF1h4Fnku4nniehu4CCsTww!}isnFC1a{k4{s{1iD!TD{CDCahTeDTC1ua!TwhFw{hCFDDaD4Tk4DCaeniiT!FDak1oD1}kuDskwnuiFCD{oDunhDDDe4DnaTDhussa1}DkDwouTwhTuDDoDowDCCCDukskhoewwaweh{hnFkn4kwDTiD1DohFeDhhehowC{e44}T1a4DaCD}wihCDFewuaTD!wks1!wDnhCew}uDC{FThDCasDoh1u{{w{1}Chnh{FsnDw{oDeDFwa}DioC}wTku!wh4uasCCDDDhhus}TTFwu!u1u!sDDFT1kDCks{ThDuDDFoTTouwoeswoa{aw1en}{nToDhC{4unDkanhTuaDhsDaiD1wFDuo{k1eahDsoweoohau1aFk{TDes{4sFDnTuwniTF11naoFT{Ta4T{w1F41eniThDk{huekoe1DoTFwon{!D{nuFuD1{DTeCT4DTF}iDun{Dik}CTiC}sueDDuDueih{hesnknTCnFnn{DesF!}aDunkiCkC1{}!Tii{nhs!uCwknDnT}hCiF}T{}uDnk!DTaFswe!FwDeD}iusFDao!hDC41{hDoTehk1ueF1Cih1!sDDu4DkTCDCoTaDk1FDDsF{CTD{oo}DD}kFa1!{!Tu!CDw{sTenDuwwFnouTCiaTnFa!nTDDDCwusDwFkeuiDiwh!nw4DoF1uuiF14hCD{Cai1TuhaaDiiwFhD!uD}shCT}aDFeDTno{F4i}C1Cn{oioFTDDaDoDi!ChC1uaiakFDhh{{oiaT4shuFsuk4D}ewhiD4!kn{DFa{kDoe{e}TT}{nF4Di}hnwCTC}ea}Cuhu}ohCuCe!un1hneaFsi1skCouhDCnhkoCiCon}eFT{ThT}sFnDaDFwkwCCFn{ew{Th1iuhk!uDFwTDwDDkiDToswFehaanCiCi}FDoC!D!1TDo1Tah!noD4sok{CoDD{souD14FDwwDo}Tokwe1eDDhiCsh1T1nai{CDh{knDDaaDu{DaFCo4{auh{FDo1oFDiDTeD1{}TTDs{koiDhiFF}1waikDTsuF}4i!1TTsouFn{C}DTkw!CDowhCoenswnCiFahwwuh4}nwsas{uiFeCeC4DhweuDDkChuknFFoFako!ou}TkoDnu!uC1DiuwChh{!uuC1haCeC{CDCksu!CFwn4nTTwTohDF4FaoFsnF4D}1F}huo!4snaCToT!ih4DThTs}iwuDwDwFDhDD1DCo4s4akok1n{iasC1aoui4ow{eoCTnD1w1i!hhDei{DC}ouD}hw4hD!1uC{oDkwoas4wCTau!uhaCDs4DD}ek1{4a!TwD}D4Tea{noTw{enDeFCswwkwTCw}}eDDe{wawnCs1i4kiwDCDuCT!}CeunC1DCCkDF{oeCi{{nknF}FCii{DnDDwkai}4wu{hsDa{i{!Dnan1kneCFDCa!suDCDwCikDDsnkaaDCs1D{swas{DC}{14wDuuswCFui{FoiiTiD1C{FsCsT{1!uku}DuwinohkhF{{1we{4FCsFnThsDF!aTDwi{DCkDa4nuh!DCwwhuhCa1u4DweFFTh}DhD{hnoouuD{{wi1aCkn444D{seewTaiDuThTsTo{u1hih1{nTD!F{ssh1siD!hn{}wukDD!Fo{a{FeDFFwa}CshDaua!eCD{}iaTDshns4T{1ahaikeDhTDiwh!Ds{iaDkhDa}ei1{TeC{FDFDuDCDo}}h{FahF}nCea{hkkC{wa1Fuwkoe{4D{esFDeinD4eD1Duha1{{1{DoT4k}wu41Dsw!ni{aDneCnnT4weDkikFTFsTenhT{}!1wTu4o1}C4Ck!CCDDaFsDFD{oT4aaThDkhkFFhw1!k!1wDDoi1}nTne}kkuwCn{{DFe{wsunkhak}DsTeo1uT1ekkaiCw{kT!nuCsoF!as4DDCFwTFwkea{n{CDsTDehenFewDiun1C!usknkF{eTsa{w4D4{{DCai{oeuw4{DiT!uneDnC4DDs!DwnoFFFiwChCwTuTkw4F}iT{Cs}}Fwi4}iD1oaTnhwFewDaD1TeknaDDui4kD}wekFCwhi4TTs1Dk!1T}ahD1oa{kaauwwsDas}hDkk}h1oiFTTnwk{eDT{weDC!isea}T}DDaTD!oDewoTTDC!!sFhn}DTeaC1owuD!nDuiwThkuii}waDs}e!F}}FwFnFeneCuowiF{s4{hae}}4hFu4{huTsnnkik}!o{!eD{nTainiDss1Canhse4nCssTTao1C1ChDh{Teuhanu!{Cen1F{ChDsDDhDTniu!i!o1owhDD1iTCTDD{hCCsse{{s1naienCeDFDhDD{}F!Ca{!s1swDiDDhh}oownCnDeso!T1F4iCh1iCFsTDDTwk4ohieaC4TiCD}{sawaDu}4nCFsi!DF{D!awhnw}s1{ak1n4enwDsD{DCFee4i1Du}{Cn}DoDDawno4ossDCDCneThFFDDh{iwnDk4FC}nFnDTDDDFs1ThDuDo!DF!DDswao!kuh{eDn1iTsFhs4TDDFTe!CDCw4TaDnn44F1ohuuT{TFTawDChD{DhsDwu!a}DFhuTwkin}ewiuTTkCCFnhDTsDDkwk{1n{ok1e4n{{4eDowihu1CCuTue1o!DeT}4k{Te4F4u4ak}TkT1oDk1Tn}u}}i!Tkh1CDD1D4kTDuCT4ueDioswo{oeoC}1CCkDeTiwak!}aDnDaTCn{e1{wnhaweDFFs}inise1{DnDw1nkuoaFD1wF4uDCw1{!DD!eaiisaT{{!FahaCTenia1ewhC1nD1}4wT{T4ToCknuuwsTuT{DDC{aDw11TDuTTa!FnT{wDuCDDD{}CaCia{nsukkhDs1Tn4!ihoDCnh!{oD!ekD!DouCD1DhawDie!{ok{u1h1i{nh{hiuDoD{hse}eioD4CiDekF{DDheo{ukoChC4saDs}CDDnDaFF{1DDTT4{!FiFCwDwihhFieC!FDFnsTaF4DuFhkD!w4Cw4u!FD1w1DCuDeikhC4nawoa{ne{}D{aFnC!CTThhnFDusDhww4F4!Dhsean1nahenhDoTF{DFaFiaDnuua1DDD14F1es{wkDhTFwk}FTC!aDsuaenTu{wDesas{eDeuih4{eko1DC1nDkwkDFDo!FFkCheh!sDD{s4hFThFoe44oCD{s!nCikDks4Fw!}Cs{DD1F{Dn1nssDweFCCn{ea{T!s4{w1F{4{DDnCTuDs{4nT{oT1DwuDueeun}uDaD{s1nTDiDnDT{eDehFeT4iD1uTssT}iu1!nwwDDahw!sih{hDo1!TTDokDnwn4CoTDDe!wCiDh}oT!{TuCCwFkow4n}!Dk{awwDsC1o!Dui{o4o{e4aT{DFwkshuhsah{eCD1e4hwDDnhDwCwCToFDDTu{4FCuT}Fs{aFT{!DnFh{hkkDDshD4eFD4e1wwCFDkTDFosawo4!1DDeih4wo1a{4T}!DChaFaeDoDCF{w}k{}DksDnTneD1o{ukiF{FnosD!Dka{eaFFnnFn!DoanTDikh!nha}FekhDFDhoe4Fu{FoeiCCuuaso}D1DDowwha}sT1FuCsaCD!D!4CCCsa14sh{keCDwkD4an{DDT4}TT{DwTFCDoehahsCFkCsw1w4{eChh1eCDha1D1wDiDaknninuDiw44FT1s4owsesFhsDin!uD!aD{DwC1T{TkwDC{FnDkuw14DwFaswwFDDhDDDTCaT{!TFeiuFDs!{1u{C1FTus4!uT4C}TkaDekCC!!DhnDi{TwneFhwiChCDeaousCF}uCnnhD!oaiDCeensiFeD4e1waC!iDknosT{F{h{eewiCFDCiih}hsioe!ahio}aFosehuaanD{h4nwF{suwDhuF1Fhhs}oCDe!nDD{on{kTD1ThTDuTaiTokCDDkFDahn4FDCna{DD!F1D}14hhnw1we!eeeFuDuDk!D!e{{{Fa1Fehi!D}D4{{T4CDDiD4DDh1!uD{1FiFTT{a{oun1wh4}CD}{iDC{nhT4DaiD{Dhes}TDCkiaeD!iTDDCC}FC4FFueCu1aDwF{4aTTh!aDCDeFTTshweCDhs}Twuk{Ca{hDiFTFa{Ckw1oi!Chw}o!Dwsouk1!kikiDuwih4whDDaFsDCDDwan1uDauwoDkDDuDokFkF1Dn1hwFDa{n{o{hnwD1aukiFsk1D4FDDCnDDCeDukDkeDa}s}u!D4w1uTCwDT1DFeahwiCeks!FiF1DD4{wkF{nohnTTku}uDk{4DC4CCoDFawT!DeD4wue!C!uaaiheTTkun!nue}FkTknenFhDas{haeDseeTn{unTDhCnuDiTD{FeDCaes!{i4ThCnwFuaF{!oe{h!{{oDae!hoeaD}D!TTCeDui}TnwD{saCFskoDTFkiunaD!kCi!Fhi!sC1CoCiuDoT{4DsDnoFDaD1D{wC{hC}DnhDshuTei4kTo}iDn{wDn1FaCF11DCihikk1ouDkFFn!i{euna1oFTTDiw!o{ass1TDohuoDTTDDDDksDD}14CwCF{aDn{oFiFFsnuwh}s}TkeCsw}s!aCowTsDhu1wD{DFoh11ukuD{CwCs!ushenn1{DDokaD1FDChuCwCoukDDsFDCwuFTwFCnuk!C{auDanui{enkDu{1C41D4wnhCCkos}sw4F1kFkFC1i4}k}}ikh1!{no1s1es1nDaauDDsDD}DenDhnkDhFkukuC!sFk1sD!wwsu!Ciio{!1}kFDs4CTDsD{DDhDoa1h!DC}{i!DDw{DFDe!{DD1e}1CDh{aT!C!TTCn{Fh1sD{F!Cwou4aseCwwC}Tss4F4TDuCeuwF}1eaCD{DDhT!oiuDDDnFsno!}k!D!wwDDFTC!s4hkss4T1wwCCDhDsCDTuDC1FhsoFDCFCCsDasw}nwDDuoioi4aCnDDDDCiDkhTCFh!Fi4TwohDD!DDo1CssawhihnhD1h!}w1euD}}nCDh1ewkiT1CTwF}i4awDDhCkn{okDsuCh4DkDn1}i!an11n{FeD}1ohkwniw4!CiD{DahhF1sn!4uC{}!oD1hhwo4D1i4FhDDCDCasiDCk{1FuF{eCe!C}T{Tnen{wikiD{eFkonFehCskkT}aDDDhTDsh1Dwu!T44enhThnh11oDsiuTChiD1kDkoh{{h!kT}wTD1!w!eiuFDn!awausehhDhu1FCC1eii{DoDDwe4nCeTs1DaDw4snCwhwTo}CCDFe}CDunwhFwhh4iCTFDCTwahaeDFwiD{DuDDkaok}D}TD{DTkFTC1CwTCTeTk}w{}FDCiDhTDwhonDDiCiDTwawweDDsFF1o4DTueTFiDnD{oDeiD4io!eeiFw{ei{hwTuuThDDhok1{DiiDC41usD1DsFe{shh1houTT4eaw4ssnaoa}FF{eksCk!ewnTuCnC!TniiwDCn!4C{{}eFnDDCuFnwTeTeuDneuha!Dun41Fs{TaTa}}aDeasnhuuh41ienu!nDoCa}1CiehDDiCneohwkiDna{De{{auDh1sDCDDwahwhawaTDia41skDhuDF!T!Tn!kkT}hue}Dh}inDsDsekoo{{}k{e!huaTu{{iD4e!eoiwuDDeT11un{1}kDuF1nFni!oFkTooC}wC{TouD1wkk4{eewC{DCFu4Ds!DFeue}T{DwThiD{DFinaiCe1DnDs1shT{{CwhD{CFDh}{n}iFswuwwCi1su{TD4wnCuC1CsFDFDesFni1!DDwoDTwwFau4euwasDns1ieo4!wnnwTiC{T{kooC4awFui{DonakouDDws{{uTFhCkDDs1DDF1uiskkT{CDDDiaak1!DDwTi{hDhweeFu1Ci{nTC!}D4nhDD4aDDhThn!!{FDasTCoCC{}Dseks1s}s4Te{Duu{aDTn}nnuhhkFFDewCTaakussCDo{TinTn4nsDDoT{4D{DknouCDa{}eF{1ikeunFe4{wsDTa!Ch1aDnDe!D}4oiDawuCn}FensCCFTi{swDsukThsaanCCwus{nF{e1ioTuho1niT{h1ak{sCuia!4D41iiaDTwTDws}F}FDCooFeonTCD!TnoD!aCD!oh1DhDTC1n!auDhhFuoFnFDh{FsiTknDkkaTDiTDFuauF{4n{wDTTa{TT{C!ThuCCuhCieiDuoFiihCksDF4DiFukkCnh1eFC{FFka{D4e4e1{sownei!sniCT4Dhso!hTiaekTkDihF!D4FTwew4TD1Coh{DnhkuDDFCaCoDeo}i1nnwoDToD{{4{iFTwFeskau4}TDuoaw{uuikTi}C4{Cwesi}C{wun1oeFwsFDkhiDCa{nhwFiuD{41i!TTDaCDsFD{!F4!41TDChC!i{i!!TnnkwahCe{CFaeC4ieCaeFThaDn4F1uTDiDDDDu!!T{TCFDuD!{aDC{FessDCw{{noow!uDnkkei!41kTF!!FnFwioC1iTD!4DDohTTe!h!TD4kCu44kDkwuFoeFD}F4oCshs{FwFaeh{k1nDwion1no}!1}CDik{{as{TDukwsDC4eCD1{sF}CCaDae{sask}!aCFFD}T4eTonFeF{oCFu{TuDTaFweaDw1os}FsiaT{Fawh4TCokhio1uaaoDu1Dh{i!!o4s44nC!4inhhh1w{TesT1!FaaaiDDnD}nsFi!1Cw1{{CTFukwFn!oThehau1es{}hoF}wCaDauDa!{uuTaiDFD4}FoTD}asokDiwCh{hw1DT}F4u4DkCi{iiFo}knwD1F!}C{FuTFswkiCiDh1}uaDhnh4TuFTF}44kTDnnuDDD}eD1kDhohwiT14ksCTe1w!F}{ns4uCn{DC}a4hD{4Ds}1h{!awTDk!Duwe!hTakhTe4DTw}Cn1{ok}awDahh{ni{iash!}TkDTaDkFnouiw1u!Dk{neTnhTTsohw}DCuDasknC{4waDs4uTakC4DswwDnTieuT{oCDao4e4wF!sDCwho}hnFDC!a{Tsunh{C4kssD{wiohDDu4F}DTnCDoieeoCD{osnC11u!aDw{C4nweu}Fsh}i{ihD}}eTeT}4Cou4i}!okDoT4{k1n}nu}wD}wwDiuCCwoes{D{k1TekoCn{}wFkTFCswsTsoa{F4CaknwDe4aa1nCaknTFDFDFDwh!D111DuTkhTDeahDDwkFahDuDnh!4D4CsnuDikDFF1kDk{eaC{!{1Dow{wCDawFenFw4hewFkhhnuDDosiua{FTuaiuw{e1{1a{1uwD{{}FkF11DisCDe}CuhaC{CaCwuDw}hisDFChDToh1i1hD1nTT!CFnT1uaa{wk}n1CDDo4DC4us{w1Caih{a!Fae4TaTDDDTsa1!CeshwoinDu}!CThsDaiiu1DnT}wCD!44wCaaCCC4auaTDieFnDssihe4FkiTDFuCDD41Fska{4DhunsChe1uDFa114D}D4DhaaDoFneCn}{oDTC{}Fui}eosTek!}}iC1ew4C1{a4eDCaDik!ihkniwu4sDkw4his1uFoDTi!DwF1h}ohnCwnuFDsTuusakkw}{ukDDaneh}!uDwDC4{sFkT{e4Dak}n1DaCFuoDe1TwD!n4ou{TsFoih{nD{TCDkDCCCFiCksswoaT{unChi1D!whihah{Dk{!F{eTeDuewDssi4oC!F11TwwDCw!u1DDDTsn!CT{nT}DaaoDiD!CkT}TkuuauCDDFw{D1a4DeFn{nCF1ioDaFkDTC1{DCT}CT}1saiFuT1us4wnCTD1C{sw}wD!!ho}oeD4ouFw4Cuesawkna{4oksDeDDDhkCi1auC}D}}kFT!onw}n}u{hDCaCeD4TDiiFe4wFD1hT}kk{o{Dsk}1ei4ehk{CDwDowCT!T!D}a{{ionhsinTTawhnDFF{CDsa4{Dsa{ha{4wuDC}esoiDhD1seaeCwCe1Tss11{oweFhwDnD!}ai1TaTwFwwk1!u4ku!F{Dw4uh{1D4eCakTTTC4eunnkCFCTDeF{}TeuhD1sTF4kFkhhoewnwshuFDskn1}DiDTTh}{DDkTwswFFwC{w!D1haDauhDn1DsiCh{FiDkDiaDTnDnkeCoiihnFCuTaDkuaFF1DhT!FohDToCDnTeFnk}eFi!CCCeD}soTFihTe{FD!uDeTFuw}h}CD!hswhD}1C{4shnFDsCDCa{{awTCChnh!skTuswCDuD1ihha{Ds1{TCwow{aDD!CDD}hnCFaDu}i4}sn4h}DDCCDnDoDCoDneDCCTeTe4uko}TF1w{u}}n1FuoiC}i{TuokasFDs{FnDkekT{FD4{FFFCinDFCeen1heCaw{FDsD4!k{u{iaua4}hCF{1}{CDu}}h{CwCah44T1nkkiFhisFunTTFs!DCDeFFFu1!DhunoT{4F4uk4e1iDaaTDDn}DonC}sDauuD1wsi{DCDwDwnFFnDDTuTTwasaaookDhe{sknaDiT}uuiDFw4}wso}Do1hDe{{e1hCwT4DTCeek1ChsT1ooDkD4CFaF4a1!Dn4hkTuDCD4DaT{iDaw!eaFC4{}e{!enns!o1DuahC!sCkuiunkDDhaCasaDk4Co{en{DTFeCsDTwaFCnoDua4sDFCDDFCheFCnhe!heF{nDFhTiw!}wuDuCD}TnT}wuFCFFoDw1!Du!eT!D1DTso!isaTheoTaoknwwDwsF{hDwuFTTsoho{}D4DD!F1Fe1u{DDDDThuDuCo}h}inTDahCDDwieD1C!iauDDoahe!oun}ai1DwFausa1TnswaDsD}Du!Ce1FowuT{uD!C}uawDFFFeDFDCunCen1DuF!C{i!CueaoDDheiu!DCu{aeFoDDnTTCTu}DhuhD4awnowohwDaDi4DenDuwFCnni{T{CTi1CTu{D!D{4neo{CTiwa}DT!kDisC{aDs4hoCewsDhFaoDniu{1DuiTu{uC}FFoo!C!Fee{oa1F4wCTh1ToCT!uh{4us{DhhTDw{D1a}!!Dw1hFCDuDTDhkTTh4{DC}DanDDhsDaiTT!Dwwhi{hahTwe{uFT14sTD}sTaCaaDa}n!eTDsah!n{C}T4Fuin14F{CDCs1wDaDDki44ouseDu4hk1oDT1Fus{4eDwu!To1DniensoksuDw11uu!e1aeTekukD1hhaDDCaDue}aka1DunwCh1a}a{oeFso1iu{F1k4T11D1}sh{hT!Fo!oTDoek4h!e!eioshh}4T{ueTCiThT4Daaawonsskk1e{Tuhe{}!4TeiDDTaCTFh1CehhnnwiD{{CD}DanwDFw!wDDho}TD4kh!uukDsnn1{hwD{!CauF44oD!Tii4hiT4{uninnDskwosh{1iDC{w!1TTu{{{u{wisD{u{ahCCn{D!uDDFDa{u{F1h!TTieu{nwaFhn4DDFhFs{1D1oThwsehaCTsaDh1aTwiCCDF1Do{{uDkhsu1D{DkusCki4F1euT1T1kn1aaiDDTDhDhTeo!}DhD4uiwnDhoDs4eT4oTwoiDuwueaiF!wDDDTunDDuiaD1enFeDDCuoDFiD!oDT!s1TCFF}1kwhewk4k4kT!uek!eukDDsFuDCFTwD!u4h{Dauiko{1iuTFeo1huTaauDDaksaTTwF4FueiC{eCaawwaDowawi{uFsiuFkD{kue}TkwhTTnDnTDDT}sDeCTnDiwkTs4e1T!{s4Te4kTDDThDnehu{s1hieCwh11D1!o{TnT{aFDDDiu{oiFFCDo{uihu1hDesFawDwkDk{DeswDC!iwT{wswnwD{DhFDT1FDuiCn!Cans4oD}i!FTnnDC4hDwenheaueissD}F!FhTwFeCiFDC{nhni}14Dk1Ds1ih{en{euDueF1DCiDuunTD!4DDk}w!FDo}iTaFnn!siDDiFDF4D{h{DF1C!n{FuFhk}iDT4e!wFe!kDwnDwD111D}ThDDhuoa{Dseuse4kF}ek44DDhuwsC}niDaCC{{hDksDnCFnhFh{DDsaeCuo{w}DDs!aThDse1uiDnTeDwihoDCse{wwiC}wD1Cunhi}D{FwFD}T{DwuwuT1Cn}euCF1auk}}{CThDkTeTCwnnD}ewh14sFTF}!iCT}uaD1Tww!awFoeTD4woiuDhe}TDFhDiehoF{uCahk{kkhwDsDDiiDi}{k}ekTwh}1{iuaehFCh{hD1uswCku4Fiw!Dnikoe4DTDn41DkTkFTnui4h!!o}!TaTF{k1!Dhhh4oe!!CTwiooDiauDDo{k{FiCi{!1k1Doakwnukwu{F}nsisTDCCDFe4soTFkkD{hDhFe{DCkTkChkToaChh!T1uTi1uwwiFoDnoFFh{uF{unThhsFnowTTe1naTe}F{}1DFCoiTe{{CDkuDankD1o1}uwe!awDsFCii1CDuuuha!kuh}FCDC1!CC{no{}1DCuaCsaDh}haaDeCD!Tn{sDas4T{TCs4uuu{TuC{hnaenk1hCC!hkoCn1{D}eDhwweusu}CeiiTDToDo1FoeDFuDhaneC}D4Cseh1s}nDh!}4sh{hsT1}4aa4kuCk4DF!oaD{!o{oahi!uC1TTnueo{Thu{DDD1okh{DaesCiwwhDukTnesu{TuhaTTeFFTCiDsDCDFiTnwn}kTDiowkaTCCCDwk1C!aohahkF{oDTFTFFuonD!ah4u4hTF{eukaioThosD{DFuwhkkeDD4Doo{hDu}{u4Ch4h{D!shTFu!FC{hTCn4koDoea1oDuuF1!DnhhwuTwsa}{DFh{TFoknswk1Dhse{k}suuaaCD1iCDni!hDCkDDFCC4Cki4{waFFsFFwChwkTu{CDCoF1eCT!{4Fne}wDFT{Cnoinh}eTF}n{a{oDD!CFsFhDoCsa!DCs!uosso1D1{aFT4i1F1we!}}ToF{1Ds!41TsFsD!ooCDDCCwDaoun4CDuCDouw}1F4Fu{uu4ahwaFe4}hueDDT!}DwFFDDD4Tk{Feu11h{aeiwhkDo1iuhhDiD4wDsiwTD41Dekhk{TF{hCCT1iFsine1nT1nDnsTnuDeanDTnuDuCnCCDukuoeC1}TDFkassDiCh{sF}CnuFh{eT}{whDCnF!hT}D}hDD11CDTeei!CuuuknDCC!wFkToDwiThsTnuiooDD{aD!wu4hFDnh}kTne4DoDnai{hCo4unF!DCFCDChCsDDCCknTwehhhDhnu!DDnCTaiTsFa{TChka{{hu{1DoDnuDwhiie!ihTeisiewko}T}FD1uauTFkTFnC1hFi1DkwDeCw{{aTnD{s4{nDDoDDn!1hskuuFaC{1D}wseDaTukhiTCDskTu!s!weh}eTD{CC44CCDTC!isThD4wiC1CuaFwn!eDTheDDiCoDC1FwTCDowiF4DuC}wu1!oD{4hwC{4iuCiwD!nkaFDThChw}Ti}DiFh{}{es}!wD1swae{Do4aiTDaiD!a4o1u}DhFkF!1TkkkuuooCkuinFFhuiuhwT!DFawTDwChanTCeaeD{h{D}sDDC!DhFsnDCeTCsuTDouDCa1}iuTFCTuC4kFDuuFkaDCDeo}CnuaiuDDDTuDFoDTTD4Fean4{hDihFeaTDsC{hCChe44h!DiC}{khn1hswiTu4D1uDCwFwFh41DT!}DiT1ii1eDChiwC4Di4CC1wuihDDo}1iuCw!h4DeFoFD!D4Ts{D1D4hosTDwaDDFesw{i}ku4FiiDDaTCFawD}sok}k1{CeaTuosunhnnFDT{1eeasDnDT{nFkhFhF!auC4D{Dn}uDFFsswDTk{{F{4TDhha!44C4T4{aCwDwFwF!{FhsskuDD1os4wnC!khniTh}D!D!i4ew}aaCshT11iaTis4uDehi41Twhio1w}wTTaC{CCDFkFaDaieT4sa1Dia{C1TToDs4!snF1nTwhDCoCio4DiTa{uiDTDFwkTuu{saesssF4D4n{T!}C{e}eDwThCwiF1DDT4wne!k}{TDFes{iiuD4wDD!hDaasoCanDuhCkDa}{1Fak!CwDi1T!huDTo!h}D11kDT1hDaiu}D1nn11TTCk}DCDT!FDu}ena!4DwoiDDDooeseCu}kwi{ahhsiFuCwouD}kCCDsDDD{TDTC1na1}uTDCD1DwFDinno4Duue}n{awwsCeDikCF1}k1kh{Di}!}ei{TD44s1uFuFD{anD{DkFsFhnhhuTuD1whFw}uiwCDDoC4w4k!TaTCDno!DuTsoT1}u}1Da1TeTeeD{}CDukDFwTDhsnTuFii}Dkahweai{4a1CwCDu4FsTCuDFsewwFee1FnwCTD4u4CT}}nw{FDuk{}CkaDhouhDii}waFoC4iFCD1aFDhDCTF{kkwe{s1h!nD}}D1DDouDewnD{w!!}}}DoDCia{o{ooDFiaiDC}a1CC1!ui!aesDFieeC{nFFT{i}{{!FkDhihDFsaCak!h}DTaaTeDoou!nk4CTeDa{}DTkhnFanFkTekiCi}nue4hhs}wDo1uoe{Dh{FuFwu!o1hDu{DeoCeD1D4!}sCniFFTshD1}nnuauTssak!u{!aC{uwChD{k1k1DDahsC{!a1nwa{se!Dh!D{e!4sF{aF14FD4aFe!1{aDehFwDw11swuFenD1ueCaDDse1e!sFnThkkoDiwus{a!hCeTonhsn{nChDi}Fnwhann1eDaDaTsTT414sowuwhnsFiFuDas{u!1osF}DDD{nTsD{keuFhFuohok1CTDi{FDC{eFuTFhs41iT}1iDDiuek{iaFDhD!a4aTek}}!}C{iFna{wasDFhewh{uDaCinCieDn{!iCawThFuC4shaFwDhDFD1wCeDueDFsDDwkhwnakeCi4uCae4CewDsk{D4DweF!nFFhk4ihCwCeeaDCnFTwsT1FD}CDi}u1isDh!oukC{en{4sTDT}iC!sF1aT4{a{CTsosDsuisDkD!uT4iFa!{D{wsaF!1DesewwFenaD!1Dwi!CCkosF}eesTDCoaDFuh{FFuCChnhwkn!TC{DTFsan1FDw4hFwDwhaD!DD!ua}Fwnk}!seo4nkeF{1{sDhChC11inuDCF1ewkDDFaFkisDi}!suFkFDniua!oF{{}iF!sDheDDnTn4h{ee}TCCssaoiDwTCaw{DTDei}!a}okDDkkenhknoCsa1ueTuwahhaDikuao!nCsens}soFanne1n{uiuCnwT!}Deohnei!TeDeFnnFDFknw}DT4T}kuhoDeDnwk{{1F4nC1uwFD{e4D1nDe!kuDuCFns4T{awCChsio41T{1o4uuauDaDTokwohDuT44auCenuhTFkw4wo{T1}C4n1CkTeTDDTknTTeaw1CDsTeah!wkw{suaDF{whi!Co!w}iFa1{we{haTiTa1u1DD4hiCaTwn}iCTkwTT{uDFk1hh1h1}{DoTisF1T1CFsh!FneDTa}FwiuTeDni!kD1}hhC!1CDuFe{DuehF1Fhwa!siF}nunCFDF{DeuaaCsTie}1huanDaFCannu{4Fi1DuDCauCsk1TsFTuhneF1ihahDC4uwD{CDFhhCkCCF4!!o1D{s}w{44De}kw4aDiTnaC4hhkswsunFeCDe{D}F{4FDCuhF4!uTkku{!4uDDahDuTe11onnC1uFseChwThkCeoDDwaDkho1{1w}uoF!DCD!DDiheC!{!weCn}euFnuDTsC4FDue!h{noTi4DeCDnCa!1DowknTnDw!D1uuD44CneDFF{hs4h4DCa}kCuhwiDhT{4C!kF{n}DCuhoF!Da}hiDwkh4h{i}CCwhoaF{aoo{D!{wT{TTs{FhDT1hkC4sD1{4oTDFhsauDCe4uCuT!iw}DDuu{{aniu}C1o1e{4huoCokahnkDaTFasksTDuC4uuuiDTiD4D44C4hD1wF}e1!i{1uwwwTh{uoCwD1ehwk!kD4{DTi1enuhkeuFsDCnouC1}w{oTDa!sFDi1TiCFs}awow4F!DeaC4CT1iiweD{DTD{CDT{{saDsiD}uh1uTuwTewa!kiFDninDoawwCT1Cauw1e}FD1i}w{usoiTsneihusnDnDwDnD}FioaeDDT1DhsnhwauCw{nuuFuhDwDh1}hi!{uFa!}4wTDh1u1u44!1e!T}ka}nDFonhuweFD11D{DC{F{!F1knDhw4kDFT}nkTF}ThCDC1oCwwD!nakDFw{awTh1u{TouiTuae}uuhnhwoCDDDikTksTaT}aTook1DDFFF{1h{1Fh{DuDTTFk{DeDTonTCa{iCnwFawi1sDnhaw!nFD{kks4{}{e{eDhD!i{wDDhDiwaeknoDT1eTkDi4k1DnkDuF1!DDFhnFDC!hCeoseeCDF{{aF}!sno!DCDuu}ui1}TDTaTiiDkDTi4aTDDnDhDnDFk4DCTaDTDiCon1Fke{hTnn!kss1D}Fnuk}kDDFe1ssD{nwDwDDkuD4h{whkCw11wwaau{eu14h}eTFsehToToaCsaknuwCwDianhTwTTkwCshaC{hDuFTkTDD{hnuawh!}DFh1kCnDCw{Daou!huTeuDsDnTnksu1{oeFnThiD}h{4wnkD}{4Fe{iTCe{oonCnCaeuDsCa4w!Ta1eCnTCwTD{4CaihuauDDe4CsiwFueD4iFDha!neeunkhTD{ssiChwCuwDT1waDhDkDshenaoiF{suD}sDwCi!{iDCenFo1!eokCi!1Deusne1D41sTnDD{w{1{aoheFwCkk1DDi4}k{aokeawouaew4wCDaeTu}hDan}ue4{au4n4}wwFDDTD{ho}DDauCiCaTws4oDawn}DTo14iDT{Co{aDDTiTs!T}a44CFaC{en4DahweF44ihsTioD{wwu!{whDDC}nhC{euDoDDo{aDoeFihaiDs1}F!4nkDanDk4F!1a{uDeDauikDosDksTuT{D4oaCi}eh{eoDDC1aFDnDDDDasCDiFoFwF4e!Do{TwFDD}4eehahe{nT4{CinCaussDn}DknTDCkF41uu}!nDh4Dh{eFhn}soT}}DDewhishoeh!TDFCDCCTDa{ChuT}aCw411{FwesT1hFea!ehsenkihC}oa11w4hsnenuuCa1}TeDkww1akT11F1nnkkoieh{DhaFeDFeDuDakDD{{suDDC!iDwk{De}oa!D1FoCha1Ca4{C}kT4h{iuweT!w!CTs4i}e{aTDFTkh!!4eDDDs{nhFo}wa1i}TTakFnFh}akaDC4aFD!ahwCD}4hDDFDe!n{w{D!e1FFFn!iD1C}uiD4saDkuis}wkDhDeknDu!w}uisiD{a!uFD}D}FoouDhTnFDDaheF{}{esDeskCeunD4uDw}DnCDiCDoCn4wak1D{hDDCasDoDF4ouFDu{C{C4sw4o!DFknDw1s1D!TaiDhsDhFun}Ds4Dwa{wFFa!Du{iihsDD4ieTToTh!Dsh!T4u4uF}uu4kD!h1FFaaDkou1iT4}hFC{us{DCaCa}u}o{FDaa4Fu}}}T4eDFe{wa!DewT}uakn{TikssTwo1DC4FTku{aak1iiTnnukDnoak{TkDhaFwskiT{}uaiDD41Cw}411FhanTo!nuFFhsTi}nu{Ce!DuFenTwwFi4!1w{FDwsD}Cnk{ee1wFhkos1n{suTeTDk{DFCwTw{i!wisi!s4!Dk44Dha}{TC!nuaDnnanTk{TTs4Coe!eh4{iTeF1huhhD!nDahwwk11hD!}FDDFe1wnihC1}u{an1huT!w4{DFD4{kuT1CkkuT}kn1eT}4swensn{Cnsni1wTuT{!{}CCu}aTC{sDF{isku}Te{ss1{hDiD{Cwk!Tsha1k1hFCiui4DaaeT1FuDDn!{kD1kuaFsDu{w4DCaFhneFwussui4}eaniCwke1DDuCsFnaaa{4D4h}Cie{TTwaCu1!DukT{D{sahhDoneuwahD!eFaCDTDhhD!Tew1Tw{he}TuTaDuuCnFTDaFen1{kC4DiF!DDFhkDnhF!hDnTun1w}oDTCkkue}{iuonnDaws{CheC1TDoT}ikD}}oooh1{Ca!1{4eTkhuC}os{nanFFDTsDCe{niuDFCkDaD444FD}nankiui4CCiFuko!kDshTTDekhT!FDna}aTuw{khD1{Cn4e!4hTi{Dh!ninThoeaasD!1hDDeF1uekTD{wuDhCnC{F!!!DFDTC11souD}hTkCCoFCs44DD!1!k{{Ti}wF4D!D{DCue4aFnD}DDn!wCwTDn{CeTo4eT{1Cs{DouiD{oFDuD41aCouuTi}eTa{aTaDn4konF41suCwD{iDoD4!u}u!DT4uF4nCTDiw4i1haek}DCTo4k1CCak{Deuie1Dh1}w1C{C!uTC!eehT1FFFD4ThhFTaiuunCoDDhe{s!onwi{eeFDuTiaFDo1kDenFhkCa}ssTDDieisFnFaDahT}eDahnna{eFskoekCkn}nhwDe{a!hTsw4141DFsT11TC!uDTT141o!Dk!nhskCu}eaui{k4n1FDukC41CDiCC1!FC!FTn1iFha4DFiC{4ukD{kTkss}aDeiewwTenCD1sThh4eD{4nCDTaeTo{wns{hTCoaihiFDwku{FkC!wF1o4{FC!hT!ee!no!FnDTDD4!i!Th}C{o!unDw1wue!!h1}wkisuehhnD4D}nw4!TF{4iCunuFsDeoawask}n4DsTsha4swuDFDT1DsahnwFDD4nDo{uhwFaaD1asDhD!wuaohhiFDkknFahuuuie{h4eau!nF1CTD{n!wuhkuaa}sFuikkkkD!D{ak41uiaDT!i!eeFCCuCuDD4aFew41hD1}FuaF44s{4hssaksDCD}!D1{nnensenu4aaFs14TeaCoTF{TDDDaeD!{i1Tn!FeenkFDkDeFDie{ahC}uhF}CDia4!Do}FaTs{FDw4a}{oD1hk1naFD{e1DCsDeihTooue!F{4uC1aon4uD}CuoeTDwTCDF!1ik!eDT{{FDTDD4DD14nDFT}eTnoiwFFTu!niwCDhC!kT1hFwDwiFiTFTTDwTCoDFsnDkDDC}D4hieC}nieFCouDhn{wkwDeiw4TDahn4{}hh{Cou}h{1eDsTeCCs{uiuDaaD}!iuanoea}u{o!D4eCDwnnk1}DDCnuFaiwaiDnDi{saC!DCoDh1ku!hiDh{uDFC4{D1{Dwu4}e{!uhuwk1nFF1uwDwuC{Dsnok}FTDuh1khDoa}F!i4a!suu1hFwTk1nDnsD4D41uwu4F{D1uC{FD1{noD}DhahnnFheh{an}sniwnCD4!nhhD1wewuDhww1s4weneikTFnDeFTwuuFie}hC1FDwukDeh{CheD1skDsTDwo4DD1DDasuwTkDnD}DDoDnDuiD{unoe!sh1hTsaahs{4hkC!{Ch4ak1DaDFCn1{FsDoTCiwkFinDoeCTDhsDsww{nehCDCnDsDhauFi{ueaw4{DTn{}sCTTauaeDC{noeDawk}!e{1ae4heks!kDwww}enTii!owDDw1koDk!hD1eaw{ouen}ChaC41wThekh}euskoiTThDDDe{ukh{wwwooFiw4eiFwkDs}DT1h!aDaas4kek4{Dnk{n!ukuDTnasFaD!e4Cua}wuFsh14oie1kkF{1Te1{Dko{FiDF4keu!ni!nuCs{{sDw11u1T1awhwo!uFesCskisa{n!weFDT}{}4in1aeFn1TC4C4huFDesw{T{1a}Tsh{a4FC1h14CFknehiuDwokuhihFsDD{a!14w}ow4ue4D{1TunF44is{Cusun1}4C{u1FDFnowD1DuT{hw{w{u{TDn4!Ck!!F1wh{{eF}DhoD{eokD1i!iasT4uk1D{DkDuDhD4iwFn1nhDnw4Fn!FehD}hs4hikTsD4k}uCTueDCkn{oih4!C{{Tuu4TkDsDD!wanCTTCauisk!!DD{ann1!ssakT1knDToTDwewuheoekF{wes!wkFw{ihFTo!}}1hFia4wo4{Deaoiwwska{TDwshiTuaT!DeFk!no1oTFD{Fnaoa1{auFC}DC{TCwe!eoDDCoF!DaTwCeeu1kCCDCisC!weiDe!1woeiDDnD!DDk!F{n1{CsiTeC{41n{Cheai1saekuh4FFDCnTDTDaoCuanaFCCnkeDhanhF4e4TnT4TuT1o!}DDk}as1nniD4{n4DCFD1uFuuDek{CCwDh1{C{DFinehDhD{iT{nD14hD4sFiTi1oDn!11Doniih}Dnikw1Caw1iuskuDhw4uaF{{FoCohuDF!wa1DDTDhDnsh1oFuTwCwnDhDnDDsCF{unoah{aaCauoD{Csa!Da}o1e}DDhwi{usno{uF!4DFou!C{1iankDDi!DDs}aTD}ownCniTCa4ikDThDD{1Fw{DFeF4CsTDw1n!!CF4eia}u11wao!a4nuueDn!}aDsCaia1n{aao!nhk4unnw4DD}iwi{eDa4C1keh4ehie!woDDTDDDDaFkokT{h{aDoC1{4DkwoD{}1}hu1ih1sDDhnaT}FskTonuT{{!hTs4D}TaTnCThwCTahCnTFakunDouooaku1aDeTeTe4CDToea4wn!4Doah4!Fh1shs1u{TFw!1C!TT!uhThkFnunewnewaFaihhsunFDkoe41DTDiT{uCeies{{kT}ehwwDT1nnsDn11Dh1D{FDihCDo11e!hwkwkk4CD}}4hDFi}DwksF!{ahkuswsnii{ni1uCTTDDsho1uDnTh4TF{wwswFnaD{4DTwaeo{e{uDihTiC{DoDeDnC1i{4Tos14DuoFhFCD{C}u1{uiCD{ihCCs}DwCDDhDeDDhwnwFnDCk11{1kkDhhDFhuw}ss1Chuen{whDDDnh!}DiouTo!T}seu1ana}Fh4DuDu4Di!T}hD{wDC4ioD1Da}{!DDF1kawChaF!1TDsiDFDwo{{kTushDewT1aCie1!aDF}CTsC!1Fi1k!4i}e11{aiwD41n1oF{k!aC{4hC}{kweDFkDwCT{khe{nCwuT}swu{eh1uaCs{i1{!TunCi1D{{uDT!heDhhs!wCk{Fh1D{1oo1aDh!{4FossDuDCC1h!T}!u1kD1oekD1DeTTanuFTDT!DThFDhhwkwnw!nFeCaiFiCeFiDkkieiDe4whFk!nDhashuw44DuCD{aao1n1k4}{DesnCCCD4eu!}1TioaD{CeTD1euoTh{Dhs}1na1s!so4nh41aien}a}1FTCkDs{1TisTuDe}waFDuoTkia{w}1DaD4DaeaaCDuio{a11eshFon11Fo{eaaDneDnFD{4hhD!nnwoa4DTChwiwaekD11sDa{}u{}s{ao}CT}FFDhw14hCahw{hCDeCw!TnkhwFekDuF{s{CoankDDsuwokkuhkC{CiCsCFuoDDC!!1ienwwwa4CDuhhDiDuwDnan1FssD1D{Dwniiih}TuCo}DTh4DsoCs!hw1T4sDkiDTnwFCoDuu1hsossaDFiaDDesuDa4!au!kDneCk{hasneahTo{{Dn4FseDasDDwTihkDDDTo!{T1F}uaDkh{Ds{iC1sT4TnTwuTCD}uTFhaTDo{!1Caw1swni{hDT{1Cao11k4aTaFD4CDTTeFw1}TCCT!inke11CnneDCwCn4TF{D41hhTi!iDDsDo{a}FoT{ConTFwFwaTDC!1o4wThDDaw!F}DwDCue}De}}aTuwD{{uTuunTokChDuFF4uosDa1}T{CiwDw4aha1!akTknFn}ekDwDC!wD!}ToF{4TwDos}{{D}wFhDTshuohFTnhanDnD1wwCFD{D{1nn1Fns}{CFw{swuT}uaFDaDDun}}shD1Ckhaw!uTuaskCuo4CTDwnCw1Co}Twa!u{h1iDe4DD}TD4T{iCFTDawon{iD!sTk{kksD4Twk!hDu4iak1DeTDwhawDT}DFDueFTwana!ehuea}FueeTFaDuhi!CoCFn}!TDhTiei!1nC}Dei1Fun4nDsDo{FD1aaTDwCDFTCT1CD4kh1sD{DDu!T{hFTihD{TCuh{hkn4e{aai}okDnsu{iDsCDn}Ci!i4eiF{}DwaD{C!a4C{skFuDD!eD4!h1inFeFe1Du{nCTT!Ta{1D{TnhwCwkC}{Ch}}euFDi{nseTu}1FFDhFTDDDFeww!4w!a!CsCDDD}4i!T{}uso{wu4DhTn1anCDDe1T}TCF!C11D4Fa4n}!kDDi1hCTTkeuwDFokT{k1iCDDF{DFiTTTD1sThkuuDehDuT}heihCT!wFCi4aTDiinCDh{aekDhCFeDDFTaahCDTooiT!{1D}CDTkhuawoi1e1DD{n1k!}4FuDDno!4FDnC}DC!1{41eDCskDu4oD{w1TwDFeT4}o}DeiD1aeo1DoseFi{DwDn{D1!ahTswkeeDh4DDoDD4{Dui1}nDoohTo}onTCuaDT{khuDD4DFwDT1skTD}n1Ch}nkeDDaaonDiaaF!enoTnhwen1kDC4}Dohann{T{nCn!h{TT}shiCkD{sFDe4aDsFTsaoT{DuuDaiuDoiC!!TTDT{4CnaDwnCwo}oD1CDDDi4a1n}F{!ThFDhk{DoneCuse{}}FCTDiD!DD1oCuCD4DDFsDn!{eT{sDCThhhsDe}ua{T}eT!DC}T4iu4F4has}sCTCo1CDakoewoknks!i1DDDs4{h414T4eeTDTFn}FCFwk!i4okssFD44hno1Dn1D!kawTDDkFDu1n}h4ChheiCDF{DoDTD}ia!auk1k}w1nTDDeD{sFChTa1TD}w1sCnDDDeCuTF1waF4nFeCniwDnDhTksunasw1D1DsDD1n{{41ke{FCw1Fn11F1{!nTookoFaC{Dou1u1Daaeas{a4hD!FD!TnahwuowF1saF{CFkT41DTn4Fe1huu4anF!uwCoe4iD4inF4iuDuDhsaD{Fwis!kFoaaD!C1oDDhCnhDkhF{Dh{F}CoTTwok{aDCC11CDDD1koDDi{inheh{}41D14DTTDuouauDChweCn1o}{TTCsh1}ha1T4{kki!TDei4}wuD1DkDnkTk{D{wiDu!wa4aaewTu!iFn{wk{uoaniC4h{{T{{DnohCaDkDoniwh4uFnDnF!owFiekeha{CekaDkhaiunCChCDohkho4T{euhki!DoiuanhaouD!uwesniuFn{ah!F{T{eD4uDahh}DDDF}TiwC!sCTTi{snD4sDoD!sDne{uuC}FCC}}!DTTDisDFusiuF414wDTTDi1h{s14a1wFnD4aTasu}uF4a{DuhT{!TwkDaTDTwina4hDnFDah{i}T{Cnk{uheC1C!ChksoDCwDDDe}k{ka{k{i{FuDDssFeoaT{{eDDTsa{}DwwnhDokwohawDiD!D4DFa{FFhCFue{saha4a!s4!4Dk{ihe{1eo1DiDD!ko{s{D{D4e!D}DDFhFD1!a{shCCoeDCDwTukwueCFi}oDDDC1uD4ossh4aFsFnu{!uahnTehn}a!eeD1CeD}}Fs4Dws{iTT{!4khikTTDDkiuhekhouuC{Dsnne{DaFChn1sFDiDh{FoFC4FuF{enshFD{{C1aeoinsnhnu4iDDs}s4DDsnTDoaT{DwisaCuss!{kTkh1au4DFakDakh{oDwahoukunnCDieah!e{4!}awinDFk4FaDo1!!1DDnuwwwa!ikCnDsw1eD}{1TiDuoDkDk4FnFwakhD{{1DTke1haTiD}!DDCs}1DF1oCwT{eThCDa1F1u1aiFk!CF}DuDTTTDDahiToaiDkD!eCuwsaw4D1oikaeDD!kDw{!Dnn{}C1nCakhh4ihanhesoFuoDDDTCwosD}To1sDCiDDF!os44ia1ui4wDh1wihFDF4Di1h}11Ts14nCFDTTkoTesua}T1ae1Teaenaeho{FDsF!F{Do}D!TnniCChiFhFsFsTTsTwhF}ueT!1wnDkuiD!sC1CsuDa4TaDus{a}}nk{kw}F}uDeTFCuDs4{{FCaeaunTC}FFDnFFu!DaDCD4kukoC1ChCDawuTuD1ua{C4aiDenka4hakwswDhF{FweDDoF14k{e{sn4DDue{FnaDTsan}nFhusa4Th1wsDD}nn4h1CDFhwD1FDDn}a{iohT1Dia{oDFauTo!DTDCin{D1aDwohCoke!iCF}DhwDC1!DkwTFk{aCuiF!wnwFaFFwC!iiaDuCkDDnFk{Du{ns1Cuno1}aDkuuso!aoF{h{w!T1hFDnokD1Ce{wewiC{o1}D1hneDhwuuDe{a4DT4{DFCDTwTCikoD4n4C1TesT4FsuDuk{4aCaoT1s4Ds{C1C4DTawDDDnninu1io4T4!DekT!eD1wuTn4hiDeD1{FhFw4!snDDFsseuDD{De{un}uFDFiFD!{ehnCDC1ehCDo1D}hTuasCsFnF1CDhT1n4F4}DwnDDenD}ewDw{D11e41DDFhCueDFwniDawwiko{F{sDaCkk4khDnDDshhDh1{k}eoCThhnDakFkTuDDewkaToDnnwFh!CTko{CnsCCuoDha4ieuDh}uesinawsDiD4{ewsk}DTsFahawo{{hwioeCCeuDDCs}kioDwhe}ian{wnn1444wCiD{uos{1hiDe{hs!kie{iD}DkTaConwi41{FkD{Tsu}hikei}uC!w}ih}si{heTeiuDi}TT1uo1es{TC11sennnnuehhDCCTDCF{41sa}DFDwwCakDkkkwiFuhTTa44u!FFhFTisDuaiCiCkFTDeaTF1!oThuu4s!!e4DT{eTDnnTDe}FCD{enC!}aF4kD!hhTkoFoDnuDCu1ie{a41D{F{CF!CinkCaasDuwnk1DD!{suF{wCkDoew4CCDhFwshwhukiaCTwh1iis4{k!FFe{CC{{Too4}TuCwioiaaTh!{DF!FnDDDn{DhaTChDCwTC}oT}Dk1FTuC1nkFu{TwCDkkneDo!wuFC{DTFF}eT{wCTheCuksukiC{eDnCi1DwDT}owCaDTTsoCFahD}ukT!wFu!wDn}o{FD{{w{DCuDuTCwD}iFohhiD{nwneu{wDwDDDaaDDCDuwh{4Daia4{hu}FFsFikeT!4{ooC!iaehFioFDuDhaaaDD4i41CsokaenoC{CCF!k{u4}TDnDTkoCT1s}DFhnTCuehCDFaT}1kFwiehusukw4{u1{hDkh}{CnFhDai4sskuCTiaD{oueohDuaF4h}FCD{heu{aun1CeFDFTT{TD4}e{Du4CFoDa44wDn{4!}nDnsik}aiahkDshFu{DDDTh!senuwD{uTDehCDFDa{{iD4h4D4}{C4CT}4Di{CsnDaau!CDkoT1!Dw4n{so1CTCeuC{CF!CTF!sT1s4aaaauw}oanDFhCnF1iD!Dwh4huDshinsC}asFeio{k!aawFCeDsF}D}eennhDus4FaTDa1as{hhoiCDkDanweu}u{D{!hCDwFeDDhCDTT1TCD!hsDDhFne{sDhCi{nTo1oeFs11aTiTk{neeaTne4D{uo{oFn{FuDCa1iThsnTeTassFFCs441n4o1DaFe!T{Fkw4nD1iuaTshuDFoawwoDDueD4DT}eDuTFawDFinF!T}De!kDauhFDuD4FDaiwn{oD{{sDea!Tnoe}TDa4{uT1DeCDDFkhDw{eeDhoTn1}FTD4no1C!he4nkuuDDCisaakneioD1{ou}eC!Dni{wseCTsC1he4sw{FFwo{nThwCFCD{DhDFuFFD{eDh1!au1iTkw1CCaFDinFnDD}F{ieCuFshFCnCFDi{DC4eiD!aT{FaT}1nDDTkDawiDn4wn{CFaCekDCaDhCn{Ds}4sehia}Dk{!Th{TksoDCkCkTDDaauaik{ueDu!{wFweTwC!eDehhFTewhoF4DnCT}}eDF4hhsC{}{uDikDaD!au444Tu141FD!{1i{u1suewCw1annCD41ouDF1CF14iDDF!D}!1k}hnF4D!!4DDin}1ee{k4aDhkokFDeh4Twnwwk!{hhuCaTwsD}iDwwwiha{DwFuC1DwsuhDuFsehe!uFuDTnT{4hDkeTDFF!CsisCa}hTs1Doi{hnenCnhwaDFDuC!CTwF{sDCwwTDT{u{1iDaDe{a}hDDD1au{{Due!oDD!nFCoe1iDwswaDokk}C}Ch{DCDFuawTeDCe4nki1wCD}ahoooDnT!T4uDuFDh}FkoTn{kCFD!kw4D4!FnThiCoCnnFoDunwowaDk1nTewkuhnwiTseo!DehDFDCT4he{}CkCuh4wC1nCCD}k1DDn}DFDhiwhhwinea!DoswnaD!aDn}{DDDCCwi{4u{4TF}huDo{{kCDkD}{CCDFCDiFsia1seCFDTD{C{eiFask4uCskaTnC4soiDT{uDui}}{1eiFaTo{TnhkeDDD!{ssw1oFoa{4u}kuu!!a!nueesisCnawCDeT{CwwieeD4wnDaT4oD1Twi4DDaihkCan{Dhu{4waoTTku}CDTwawa}oniTh{o{k{DhnDwknh4ehhw44}{D}DwCThC4so}n4wTDhnkhTnC{ikTFDhnDhDFD{!41kk{oiDs}D!TD}e4DChTC}Fw1i!{1{CCi4Dsh1{TuaTFa!e{TFsDTD{DTTuwknekDDs{{Dasuaeh{hFsD1uDiTuD!DD!DueneDwhTek}4{CTDswkno{}}Dh4ueeFDTwwDCCsniDk!{FeFuCDDwTD}uThnDDawniFna{Dwi4o}s!FhhaTkCD!u}C!FTk4wa{T{1aoFoo1in1!aCniFsTnDaehueF4huF}Te!C{DD}}sTFn1hD1DD4kTwwTesD{iiFk}Duu{eh!sw{FCD{eFwiCwFie4DFw}T!1w!{}esTsi!noaseC{}{CD1ehCaDCDuDDuTa}soTT}D{!4T!wDaonuCo1nFw}DC1{FhFuheCFCnuoeuTCFknuuwDFkna{{sDnD{{khCunDDTC4wkw{u4DDDDTaa11h1F}CaahC4oi!DFu4DskDoTowawk1ueT{kaakhCDkFuFF4TwDk4Dao{e}D4wFhw{sDFCnw{DseD41heT{}TDenD!{aDeTuksT1s1Dk{D!e{4DuD{{kD{nnCi141seeksioew44TeDDD4eC{n{{Tu{DnwT1oaFCsFiDi}eF!DwCw{{neT}D4}{TuhoD{Dk!iDu1F{s4!u!hs4ha}CaaFFs{suFuDCiTDDasiDCh!CaC{{TFhDkDDuku1!iuT!hTnohFknki1Fnu1ah1Tk}11DsTDwD{oiDDeow4eF{{TDhoh!}CDCDoTDaFihCk1iFn1DnkC}DaCTwi

因为题目描述中说到频次很重要,所以尝试使用在线的词频密码分析网站,但没有发现,所以考虑另一种可能,就是不用还原成句子,只需要里面的每个词的频次。然后写个脚本跑一下:

下面这个比较自动我没跑出来

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# -*- coding:utf-8 -*-
with open ('file.txt','r') as f:
dd3 = f.read()

a = {}
for i in dd3:
if i not in a:
a[i]=1
else:
a[i] +=1

b = sorted(a.items(), lambda x, y: cmp(x[1], y[1]), reverse=True)
flag = ''
for i in b:
flag += i[0]
print(flag)

# DCTF{x1n9shaNgbIci}

下面脚本跑完之后自己统计

1
2
3
import collections
f=open('file.txt','r')
print (collections.Counter(f.read()))

得到flag:DDCTF{huanwe1sik4o!}

[RoarCTF2019]forensic

附件已经失效

参:https://blog.csdn.net/m0_46481239/article/details/108873022

Beautiful_Side

foremost 分离一张一半的二维码

在这里插入图片描述

来这个网站上面手撸一份然后扫码即可,最后得到flag{OQWIC_4DS1A_S034S}

[XMAN2018排位赛]file

linux挂载讲解

http://c.biancheng.net/view/2859.html

下载得到一个attachment.img。可以挂载。

在这里插入图片描述

发现一个空的lost+found文件夹。

extundelete img文件 –-restore-all 命令对 attachment.img 进行恢复。(需要安装 extundelete)

1
apt-get install  extundelete

在同级目录下会生成一个名为RECOVERED_FILES的文件夹。flag就在恢复的文件里。

在这里插入图片描述

最后别忘记 umount /mnt/cdrom 取消挂载。

[MRCTF2020]摇滚DJ(建议大声播放

这个音频听起来就知道是什么了,无线电,用RX-SSTV工具,不知道怎么用的可以去这个兄弟博客BUUCTF-刷题记录-7

也可以使用QSSTV解析

在这里插入图片描述

flag{r3ce1ved_4n_img}

[ACTF新生赛2020]frequency

打开是一个word

显示隐藏文字有一段

在这里插入图片描述

备注有一段(我下载下来的文件没有)

根据题目名字提示两端base64解密后进行词频统计得到flag

在线词频统计 http://www.aihanyu.org/cncorpus/CpsTongji.aspx

[SCTF2019]Ready_Player_One

开着飞机按W往上冲到上面去就有flag了

flag{You_Are_The_Ready_Player_One!!!For_Sure!!!}

greatescape

下载附件 打开得到一个流量包

追踪tcp流

在流18看到

在这里插入图片描述

右下角到流19的时候出现一个key,是一个rsa私钥格式的

在这里插入图片描述

把私钥保存为ssc.key

查了一下,这有可能是在向ftp服务器传送私钥,我们得到了私钥,就可以解密TLS报文

文件->首选项->Protocols->TLS->Edit->点击”+”号

在这里插入图片描述

然后在tcp.stream eq 80追踪TLS Stream即可发现flag

在这里插入图片描述

参:https://blog.csdn.net/mochu7777777/article/details/107743870

[INSHack2019]gflag

根据description得知,这是一种编程语言

在这里插入图片描述

通过搜索引擎搜索,得知是G语言(G-Code)

接着找到一个G语言的在线运行站:https://ncviewer.com/

把代码复制进去,点击PLOT,调整角度,放大

在这里插入图片描述

flag{3d_pr1nt3d_fl49}

[INSHack2018]INSanity

打开一个 md 交了就是flag…

[GUET-CTF2019]520的暗示

photo.dat,与0x33异或

1
2
3
4
5
data = open("photo.dat",'rb')
strs = data.read()
flag = open("1.jpg",'ab+')
for i in strs:
flag.write(bytes([i ^ 0x33]))

得到一张运营商的定位

根据LTE可以定位基站地址http://www.gpsspg.com/bs.htm

[INSHack2018]Self Congratulation

图片左上角有一堆黑白块,按白色为0黑色为1转成二进制,得到:

1
2
3
4
5
6
00110001001
10010001100
11001101000
01101010011
01100011011
10011100000

二进制转ASCII得到:12345678

flag{12345678}

key不在这里

QR 识别一下

在这里插入图片描述

发现这个 m 是十进制 有flag的痕迹 102 108 97 103 十进制的flag格式

写脚本转换成字符串

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from urllib import parse

s = "10210897103375566531005253102975053545155505050521025256555254995410298561015151985150375568"
flag = ""
i = 0

while(i <= len(s)):
if int(s[i:i+3]) < 127:
flag += chr(int(s[i:i+3]))
i += 3
else:
flag += chr(int(s[i:i+2]))
i += 2

print(parse.unquote(flag))
# flag{5d45fa256372224f48746c6fb8e33b32}

很好的色彩呃?

六个颜色可以看出来有不一样 ps看16进制 得到

在这里插入图片描述

把最后两位 得到

将每部分最后两位取出来,得到

1
6161706a6573

转字符串

flag{aapjes}

[BSidesSF2019]table-tennis

给了一个流量包,使用wireshark打开,通过查找字符串和跟踪TCP数据流并没有发现什么,以我的水平,基本上到这里就结束了。

后面查看了其他人写的writeup,跟着复现了一下。

这个流量包中除了大量的加密的TLS和TCP数据流,还有一些ICMP数据包,发现里面有HTML数据。

这里要将这些HTML数据提取出来,照着大佬使用python scapy模块写的脚本提取数据,我也依样画瓢谢了一下并且理解了脚本的意思,脚本比较简单:

1
2
3
4
5
6
7
8
from scapy.all import *

packets = rdpcap('out.pcapng') #rdpcap()读取pcapng文件

for packet in packets: #遍历每一个数据包
if packet.haslayer(ICMP): #haslayer()判断数据包的类型,此处为ICMP
if packet[ICMP].type == 0: #每一个ICMP的type值为0的包
print packet[ICMP].load[-8:], #打印每个数据包的最后8位,因为前面数据是重复的

将这段base64加密的数据空格合并 并解密就能得到flag

flag{JustAS0ngAb0utP1ngP0ng}

参:https://mochu.blog.csdn.net/article/details/109859233

[MRCTF2020]小O的考研复试

在这里插入图片描述

1
2
3
4
5
6
7
8
9
#!/usr/bin/python

a=2
for i in range(19260816):
a = a * 10 + 2
a%=(1e9+7)

print(a)
#577302567.0

[INSHack2017]insanity

直接交

[INSHack2019]Sanity

直接交

[INSHack2019]INSAnity

直接交

[RCTF2019]disk

winhex 其中一段

在这里插入图片描述

剩下看大佬文章吧 有时间再来复现

https://blog.csdn.net/mochu7777777/article/details/109841367

[CFI-CTF 2018]webLogon capture

用wireshark打开.pcapng文件 追踪http流发现邮件账号和密码

密码 url解密得到flag

在这里插入图片描述

[HDCTF2019]你能发现什么蛛丝马迹吗

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

扫一扫,分享到微信

微信分享二维码
  • Copyrights © 2021-2023 Wh1tecell
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~