コード例 #1
0
3m133i3p3s413m133d3o3l3o3r133s3i40133a3m3e401f133c3o3n3s3e3c403e40413r133a3d
3i3p3i3s3c3i3n3g133e3l3i401h0a273e3n3e3a3n133s3c3e3l3e3r3i3s3q413e133r3i3s41
3s133p413l423i3n3a3r13403i3n3c3i3d413n4013423e3s403i3b413l413m1h132k413l3l3a
133n413n3c133r3i3s413s1f0a3l413c40413s133e3g3e4013413r3n3a133a3c1f133i3a3c41
3l3i3s133o3r3n3a3r3e133a3n403e1h132n413i3s3q413e133a4013413l3l3a3m3c3o3r3p3e
3r133m3a3g3n3a1h132r40133e400a3s3a3g3i40403i3s133i3p3s413m1f133n3o3n133m3a44
3i3m413s133i3p3s413m1h132a3o3n3e3c133f3a3c3i3l3i3s3i3s133a413g413e133s3i4013
3a3m3e40133c3o3n3s3e3q413a400a3c3o3n3g413e1h132k413l3l3a133e3g3e3s403a3s133l
3i3g413l3a133l3i3g413l3a1f133a3c133m3a40403i3s133e3n3i3m133c3o3m3m3o3d3o133s
3e3d1h0a0a293r3a3s133a133l3o3r3e3m133n3i3b3h1h132k413l3l3a3m133f3e3r3m3e3n40
413m133c3o3n3s3e3q413a40133f3e3r3m3e3n40413m1h132p3e3d133a3c3c413m3s3a3n133i
3n13423e3l3i400a3e4113403r3i3s403i3q413e1h132a413i3s133a3l3i3q413a3m133e3s40
133n413l3l3a1f13423i403a3e133m3o3l3l3i3s13413r3n3a133m3o3l3l3i3s133n3e3c1h13
2m3h3a3s3e3l3l413s0a3i3n133l3e3c40413s133o3r3c3i1h132f3n403e3r3d413m133e4013
3m3a3l3e3s413a3d3a133f3a3m3e3s133a3c133a3n403e133i3p3s413m133p3r3i3m3i3s133i
3n133f3a413c3i3b413s1h0a2k413l3l3a3m13423i403a3e133p3l3a3c3e3r3a4013403o3r40
3o3r1h132f3n133s3i40133a3m3e40133l3a3c413s133e3l3e3i3f3e3n3d133l3i3g413l3a13
3p3r3e403i413m0a3p3r3e403i413m1h0a0a2m3h3a3s3e3l3l413s13423a3r3i413s133b3i3b
3e3n3d413m133n413n3c133l413c40413s133b3l3a3n3d3i401h132p3e3d13413l403r3i3c3e
3s133s3e3m13423e3l3i401f133n3o3n0a3e3g3e3s403a3s133r3i3s413s133s413s3c3i3p3i
40133e411h132k413l3l3a133p3o3s413e3r3e133e44134140133s3a3g3i40403i3s133m3a3l
3e3s413a3d3a1h132a3o3n3e3c0a3p3o3r40403i403o3r133m3a40403i3s133a413g413e133a
133h3e3n3d3r3e3r3i401h132s3e3s403i3b413l413m133f3i3n3i3b413s133d3i3c40413m13
3e3r3o3s1f133a3c133i3n403e3r3d413m0a3j413s403o133c3o3n3s3e3q413a401341401h13
2r40133e3g3e40133s3e3m133c3o3n423a3l3l3i3s1f133l3a3o3r3e3e40133s3e3m133s3e3d
1f13413l3l3a3m3c3o3r3p3e3r133p413r413s1h0a2p413s3p3e3n3d3i3s3s3e133p3o403e3n
403i1h132k413n3c133f3e3r3m3e3n40413m133p3o3r403a133s413s3c3i3p3i401h0a0a2q3h
3e133a3n3s433e3r133i3s2013433h3o3s3e133l4144413r450a"""

cracker(29, num, 2)
コード例 #2
0
3l403l433f3l3q3j143h3o3l441i0a293h3q3h3d3q14433f3h3o3h423l4341453h14423l4345
431440453o463l3q3d4214443l3q3f3l3g453q4414463h43443l3e453o453p1i142m453o3o3d
143q453q3f14423l4345431g0a3o453f444543143h3j3h441445423q3d143d3f1g143l3d3f45
3o3l43143r423q3d423h143d3q443h1i142p453l4341453h143d4414453o3o3d3p3f3r42403h
42143p3d3j3q3d1i143144143h440a433d3j3l44443l43143l4043453p1g143q3r3q143p3d48
3l3p4543143l4043453p1i142c3r3q3h3f143i3d3f3l3o3l433l43143d453j453h14433l4414
3d3p3h44143f3r3q433h41453d440a3f3r3q3j453h1i142m453o3o3d143h3j3h43443d43143o
3l3j453o3d143o3l3j453o3d1g143d3f143p3d44443l43143h3q3l3p143f3r3p3p3r3g3r1443
3h3g1i0a0a2b423d43143d143o3r423h3p143q3l3e3k1i142m453o3o3d3p143i3h423p3h3q44
453p143f3r3q433h41453d44143i3h423p3h3q44453p1i142r3h3g143d3f3f453p433d3q143l
3q14463h3o3l440a3h451444423l43443l41453h1i142c453l43143d3o3l41453d3p143h4344
143q453o3o3d1g14463l443d3h143p3r3o3o3l431445423q3d143p3r3o3o3l43143q3h3f1i14
2o3k3d433h3o3o45430a3l3q143o3h3f444543143r423f3l1i142h3q443h423g453p143h4414
3p3d3o3h43453d3g3d143i3d3p3h43143d3f143d3q443h143l4043453p1440423l3p3l43143l
3q143i3d453f3l3e45431i0a2m453o3o3d3p14463l443d3h14403o3d3f3h423d4414443r4244
3r421i142h3q14433l44143d3p3h44143o3d3f4543143h3o3h3l3i3h3q3g143o3l3j453o3d14
40423h443l453p0a40423h443l453p1i0a0a2o3k3d433h3o3o454314463d423l4543143e3l3e
3h3q3g453p143q453q3f143o453f444543143e3o3d3q3g3l441i142r3h3g14453o44423l3f3h
4314433h3p14463h3o3l441g143q3r3q0a3h3j3h43443d4314423l434543144345433f3l403l
44143h451i142m453o3o3d14403r43453h423h143h4814454414433d3j3l44443l43143p3d3o
3h43453d3g3d1i142c3r3q3h3f0a403r4244443l443r42143p3d44443l43143d453j453h143d
143k3h3q3g423h423l441i14323h43443l3e453o453p143i3l3q3l3e4543143g3l3f44453p14
3h423r431g143d3f143l3q443h423g453p0a3m4543443r143f3r3q433h41453d441445441i14
3144143h3j3h4414433h3p143f3r3q463d3o3o3l431g143o3d3r423h3h4414433h3p14433h3g
1g14453o3o3d3p3f3r42403h421440454245431i0a2r4543403h3q3g3l43433h14403r443h3q
443l1i142m453q3f143i3h423p3h3q44453p14403r42443d144345433f3l403l441i0a0a303k
3h143d3q43473h42143l432214433k3d463h3g143i453q3n490a
"""

cracker(28, num, 2)
コード例 #3
0
41153o44474941153j4340434615473o48153g413k481h153i4342473k3i483k484946153g3j
3o443o473i3o423m153k403o481j0a2b3k423k3g4215473i3k403k463o4745493k15463o4749
47154449404a3o423g4615483o423i3o3j494248154a3k47483o3h494049411j152o4940403g
154249423i15463o4749471h0a40493i484947153k3m3k48154946423g153g3i1h153o3g3i49
403o47154346423g463k153g42483k1j1530493o4745493k153g48154940403g413i4346443k
4615413g3m423g1j153448153k480a473g3m3o48483o47153o444749411h1542434215413g4c
3o414947153o444749411j152e43423k3i153l3g3i3o403o473o47153g493m493k15473o4815
3g413k48153i4342473k45493g480a3i43423m493k1j152o4940403g153k3m3k47483g471540
3o3m49403g15403o3m49403g1h153g3i15413g48483o47153k423o41153i434141433j431547
3k3j1j0a0a2d463g47153g154043463k4115423o3h3n1j152o4940403g41153l3k46413k4248
4941153i4342473k45493g48153l3k46413k424849411j15323k3j153g3i3i4941473g42153o
42154a3k403o480a3k491548463o47483o45493k1j152e493o47153g403o45493g41153k4748
15424940403g1h154a3o483g3k15414340403o47154946423g15414340403o4715423k3i1j15
2q3n3g473k404049470a3o4215403k3i4849471543463i3o1j152j42483k463j4941153k4815
413g403k47493g3j3g153l3g413k47153g3i153g42483k153o444749411544463o413o47153o
42153l3g493i3o3h49471j0a2o4940403g41154a3o483g3k1544403g3i3k463g481548434648
43461j152j4215473o48153g413k4815403g3i4947153k403k3o3l3k423j15403o3m49403g15
44463k483o49410a44463k483o49411j0a0a2q3n3g473k40404947154a3g463o4947153h3o3h
3k423j4941154249423i1540493i484947153h403g423j3o481j15323k3j15494048463o3i3k
4715473k41154a3k403o481h154243420a3k3m3k47483g4715463o474947154749473i3o443o
48153k491j152o4940403g15444347493k463k153k4c15494815473g3m3o48483o4715413g40
3k47493g3j3g1j152e43423k3i0a44434648483o48434615413g48483o47153g493m493k153g
153n3k423j463k463o481j15353k47483o3h49404941153l3o423o3h4947153j3o3i48494115
3k4643471h153g3i153o42483k463j49410a3p49474843153i4342473k45493g481549481j15
3448153k3m3k4815473k41153i43424a3g40403o471h15403g43463k3k4815473k4115473k3j
1h154940403g413i4346443k461544494649471j0a324947443k423j3o47473k154443483k42
483o1j152o49423i153l3k46413k4248494115444346483g154749473i3o443o481j0a0a333n
3k153g42474b3k46153o472415413g3q3k46153g45493g463o49410a"""

cracker(27, num, 2)
コード例 #4
0
ファイル: base-31.py プロジェクト: nadrojisk/ctf-writeups
3g113c3j3m3o3g11373i3f3i3l113m3c3n11343g383n1d11363i3h3m38363n383n3o3l113437
3c3j3c3m363c3h3a11383f3c3n1f0a23383h38343h113m36383f383l3c3m3k3o38113l3c3m3o
3m113j3o3f3p3c3h343l113n3c3h363c373o3h3n113p383m3n3c353o3f3o3g1f112g3o3f3f34
113h3o3h36113l3c3m3o3m1d0a3f3o363n3o3m11383a383n113o3l3h341134361d113c34363o
3f3c3m113i3l3h343l3811343h3n381f112j3o3c3m3k3o3811343n113o3f3f343g363i3l3j38
3l113g343a3h341f112n3n11383n0a3m343a3c3n3n3c3m113c3j3m3o3g1d113h3i3h113g343r
3c3g3o3m113c3j3m3o3g1f11263i3h3836113934363c3f3c3m3c3m11343o3a3o38113m3c3n11
343g383n11363i3h3m383k3o343n0a363i3h3a3o381f112g3o3f3f3411383a383m3n343m113f
3c3a3o3f34113f3c3a3o3f341d113436113g343n3n3c3m11383h3c3g11363i3g3g3i373i113m
38371f0a0a253l343m1134113f3i3l383g113h3c353b1f112g3o3f3f343g1139383l3g383h3n
3o3g11363i3h3m383k3o343n1139383l3g383h3n3o3g1f112l3837113436363o3g3m343h113c
3h113p383f3c3n0a383o113n3l3c3m3n3c3k3o381f11263o3c3m11343f3c3k3o343g11383m3n
113h3o3f3f341d113p3c3n3438113g3i3f3f3c3m113o3l3h34113g3i3f3f3c3m113h38361f11
2i3b343m383f3f3o3m0a3c3h113f38363n3o3m113i3l363c1f112b3h3n383l373o3g11383n11
3g343f383m3o3437341139343g383m11343611343h3n38113c3j3m3o3g113j3l3c3g3c3m113c
3h1139343o363c353o3m1f0a2g3o3f3f343g113p3c3n3438113j3f3436383l343n113n3i3l3n
3i3l1f112b3h113m3c3n11343g383n113f34363o3m11383f383c39383h37113f3c3a3o3f3411
3j3l383n3c3o3g0a3j3l383n3c3o3g1f0a0a2i3b343m383f3f3o3m113p343l3c3o3m11353c35
383h373o3g113h3o3h36113f3o363n3o3m11353f343h373c3n1f112l3837113o3f3n3l3c3638
3m113m383g113p383f3c3n1d113h3i3h0a383a383m3n343m113l3c3m3o3m113m3o3m363c3j3c
3n11383o1f112g3o3f3f34113j3i3m3o383l3811383r113o3n113m343a3c3n3n3c3m113g343f
383m3o3437341f11263i3h38360a3j3i3l3n3n3c3n3i3l113g343n3n3c3m11343o3a3o381134
113b383h373l383l3c3n1f112o383m3n3c353o3f3o3g11393c3h3c353o3m11373c363n3o3g11
383l3i3m1d113436113c3h3n383l373o3g0a3d3o3m3n3i11363i3h3m383k3o343n113o3n1f11
2n3n11383a383n113m383g11363i3h3p343f3f3c3m1d113f343i3l38383n113m383g113m3837
1d113o3f3f343g363i3l3j383l113j3o3l3o3m1f0a2l3o3m3j383h373c3m3m38113j3i3n383h
3n3c1f112g3o3h361139383l3g383h3n3o3g113j3i3l3n34113m3o3m363c3j3c3n1f0a0a2m3b
3811343h3m3q383l113c3m1r113n3i3s3i3n3411363b3c36343a3i0a"""

cracker(31, num, 2)
コード例 #5
0
ファイル: test_decode.py プロジェクト: nadrojisk/ctf-writeups
from base import cracker
for x in range(2, 95):
    if x == 8:
        continue
    with open(f"base-{x}.txt") as f:
        n = f.read()
    if x == 64 or x == 32:
        a = True
    else:
        a = False
    print(f"Base {x:2}:       ", end='')
    cracker(x, n, actual=a)

with open(f"base-580.txt") as f:
    n = f.read()
print(f"Base 58 Alt:   ", end='')
cracker(58, n)

with open(f"base-640.txt") as f:
    n = f.read()
print(f"Base 64 Alt:   ", end='')
cracker(64, n)
コード例 #6
0
4148414b3l41463p163n44414c1k0a2d3n463n3j46164b3l3n443n4a414b494d3n164a414b4d
4b16484d444e41463j4a164c41463l413m4d464c164e3n4b4c413k4d444d451k16304d44443j
16464d463l164a414b4d4b1i0a444d3l4c4d4b163n3p3n4c164d4a463j163j3l1i16413j3l4d
44414b16474a463j4a3n163j464c3n1k16334d414b494d3n163j4c164d44443j453l474a483n
4a16453j3p463j1k16374c163n4c0a4b3j3p414c4c414b1641484b4d451i1646474616453j4g
41454d4b1641484b4d451k162g47463n3l163o3j3l4144414b414b163j4d3p4d3n164b414c16
3j453n4c163l47464b3n494d3j4c0a3l47463p4d3n1k16304d44443j163n3p3n4b4c3j4b1644
413p4d443j1644413p4d443j1i163j3l16453j4c4c414b163n464145163l474545473m47164b
3n3m1k0a0a2f4a3j4b163j1644474a3n451646413k401k16304d44443j45163o3n4a453n464c
4d45163l47464b3n494d3j4c163o3n4a453n464c4d451k16353n3m163j3l3l4d454b3j461641
46164e3n44414c0a3n4d164c4a414b4c41494d3n1k162g4d414b163j4441494d3j45163n4b4c
16464d44443j1i164e414c3j3n1645474444414b164d4a463j1645474444414b16463n3l1k16
32403j4b3n44444d4b0a414616443n3l4c4d4b16474a3l411k162l464c3n4a3m4d45163n4c16
453j443n4b4d3j3m3j163o3j453n4b163j3l163j464c3n1641484b4d4516484a4145414b1641
46163o3j4d3l413k4d4b1k0a304d44443j45164e414c3j3n1648443j3l3n4a3j4c164c474a4c
474a1k162l46164b414c163j453n4c16443j3l4d4b163n443n413o3n463m1644413p4d443j16
484a3n4c414d450a484a3n4c414d451k0a0a32403j4b3n44444d4b164e3j4a414d4b163k413k
3n463m4d4516464d463l16444d3l4c4d4b163k443j463m414c1k16353n3m164d444c4a413l3n
4b164b3n45164e3n44414c1i164647460a3n3p3n4b4c3j4b164a414b4d4b164b4d4b3l414841
4c163n4d1k16304d44443j1648474b4d3n4a3n163n4g164d4c164b3j3p414c4c414b16453j44
3n4b4d3j3m3j1k162g47463n3l0a48474a4c4c414c474a16453j4c4c414b163j4d3p4d3n163j
16403n463m4a3n4a414c1k16383n4b4c413k4d444d45163o4146413k4d4b163m413l4c4d4516
3n4a474b1i163j3l1641464c3n4a3m4d450a424d4b4c47163l47464b3n494d3j4c164d4c1k16
374c163n3p3n4c164b3n45163l47464e3j4444414b1i16443j474a3n3n4c164b3n45164b3n3m
1i164d44443j453l474a483n4a16484d4a4d4b1k0a354d4b483n463m414b4b3n1648474c3n46
4c411k16304d463l163o3n4a453n464c4d451648474a4c3j164b4d4b3l4148414c1k0a0a3640
3n163j464b4f3n4a16414b26163l404a414b4c41463j163m3n3o3n464b3n0a"""


cracker(26, num)
コード例 #7
0
0opv0oq10nc60pvf07ka0pg00ra902di0nrs0nrf0pta0r440nrq0nrw0oq10qm50npg0qti0r4m
0r230qed0pgd0opt0mtv07kp0opt0nc60nka0pvs07kr0ns00rc20n4q0pgc0plw07jk0rju0pfp
07kj0rjw0n9w0qti0r4m0r2f02es0rjl0rce0r230nrl0ns107kq0qtn0mrf0mtg0aca0opg0nci
0pg00r230q6i0pv90qte07k60pvs0npu07jn0rjr0r4i0rjn07k60r9s0rju0pfp0pnj0q6i0qdu
0qrb0pnh0oac0mrt07jr0r9s0ns102f20mtk0oq20rc20r230opv0r4m0plu07kj0q6e07ki0mu4
0ops0rk407ke0qeb0rjv0arr0g2t0pvd0n9w0o270nc60pg00r4a0r230mu10oaj0npg0r4a0r9s
0mtq0ns107k80q6e0r460qm50mu002ej0q6e0oaj0npu07jk0rju0pfp07ka0oa30r4l0mtw07kh
0opm0rju0mrf0pg00oaj0pfp0aca0mtg07ki0mu00rc20r230nrs0ops07k80q6d0pnv0nk407ko
0nri0ar502dk0qta0r230mrf0pg60qte0pli0pvh0n4d0arr0iel0pg30mtq07kb0nrw0pnl0pvs
0rjv07k80q6e0r460qm50mu007kb0nrw0pnl0pvs0rjv0arr0jjv0nho0mtg0nci0po20mtr07ke
0pta0rrf0pg00r960ns207kp0qti0r4l0opw0rjn0arr0g320oq107k60pg00qm50mtq07ka0r4l
07kj0rju0pfp0aca0rrj0rbr0npg0pnv0pg30oq107kq0qtn0mrf0pnv0pg30oq107kj0nrh0arr
0itp0mtw0nrq0pgc0r1e0opt07kh0nrh0rce0r230q6i0nc60arr0h8l0rbv0qtd0rjv07ka0r9s
0pnh0pft0r4m0mth0mrf0o270pnl0r230mtg07k60pvs0npg0opv0r4m0pli0qea0ops0oq107ke
0pta0o270rjl0oph0rk40ar50iel0pg30mtq07kr0oq20mti07kl0pfp0nc20qta0r9s0rc80qtt
0q6i0arr0h8l07ko0oq207k60pnl0r9s0pfp0nci0r230nrq0nrn0o2b0pvc07kh0opm0rju0mrf
0qea0ns10oq30pkt0qea0ns10oq30plw02bt0itp0mtw0nrq0pgc0r230rrb0qti0rk407k70oph
0nrs0nka0pli0pvt0pvb07kh0rjl0rce0r230n4h0mtr0njv0ra907jp0nri07kq0pgb0qti0nc2
0r230r460pli0rrf0pg00ra707kj0q6e02el0oa30r4l0mtw07kn0oq10rk407ko0rk40nc60qe1
0r9s0ns20arr0iel0pg30mrf0qe70r4m0nrw0npg0ns507kq0r9s0r420oa70rcd0oq107ki0mtp
0ns00rjj0njn0arr0g2t0pvd0n9a0qe70qtt0rc20rc80qrb0pnh0rcd0oq107k60rjp0rjn07k6
07kd0nrs0nk70nrw0oq20arr0ka70r4l0oph0rju0rjv07kb0opt0oph0rk407k90opi0rce0pli
0nrw0q6j0aca0mtg07ke0pvs0nrw0nka0pkt0p0s0r4l0q420ncc0pvr0nrv0rjj0r9s0rk50arr
0k2u07ka0oa30r9s0r460pli0ncc0pvu0mtp0pg00r2f07kh0mts0qte0ns107ko0nrr07ko0nri
0aca0rju0pfp0pnj0q6i0qdu0qrb0qed0qtu0r2h02e30rk40qdu0pvc0oq10r4607kl0q6k0nrs
0rc20arr0iel0pvb07kb0nrw0pnl0pvs0rjv07kl0q6i0rbr07ko0rk40nc60qe10ra902bt0jrq
0npg0mtr0r4o0nrw07ke0r2t07kp0qta0njv0rc20q6e07k80mtv0qdu0r96"""

# num = ''.join(num)
cracker(33, num)
コード例 #8
0
ファイル: base-30.py プロジェクト: nadrojisk/ctf-writeups
3j123f3m3p3r3j123a3l3i3l3o123p3f3q12373j3b3q1e12393l3k3p3b393q3b3q3r3o12373a
3f3m3f3p393f3k3d123b3i3f3q1g0a253b3k3b373k123p393b3i3b3o3f3p3n3r3b123o3f3p3r
3p123m3r3i3s3f3k373o123q3f3k393f3a3r3k3q123s3b3p3q3f383r3i3r3j1g122i3r3i3i37
123k3r3k39123o3f3p3r3p1e0a3i3r393q3r3p123b3d3b3q123r3o3k371237391e123f37393r
3i3f3p123l3o3k373o3b12373k3q3b1g122l3r3f3p3n3r3b12373q123r3i3i373j393l3o3m3b
3o123j373d3k371g122p3q123b3q0a3p373d3f3q3q3f3p123f3m3p3r3j1e123k3l3k123j3740
3f3j3r3p123f3m3p3r3j1g12283l3k3b39123c37393f3i3f3p3f3p12373r3d3r3b123p3f3q12
373j3b3q12393l3k3p3b3n3r373q0a393l3k3d3r3b1g122i3r3i3i37123b3d3b3p3q373p123i
3f3d3r3i37123i3f3d3r3i371e123739123j373q3q3f3p123b3k3f3j12393l3j3j3l3a3l123p
3b3a1g0a0a273o373p1237123i3l3o3b3j123k3f383e1g122i3r3i3i373j123c3b3o3j3b3k3q
3r3j12393l3k3p3b3n3r373q123c3b3o3j3b3k3q3r3j1g122n3b3a123739393r3j3p373k123f
3k123s3b3i3f3q0a3b3r123q3o3f3p3q3f3n3r3b1g12283r3f3p12373i3f3n3r373j123b3p3q
123k3r3i3i371e123s3f3q373b123j3l3i3i3f3p123r3o3k37123j3l3i3i3f3p123k3b391g12
2k3e373p3b3i3i3r3p0a3f3k123i3b393q3r3p123l3o393f1g122d3k3q3b3o3a3r3j123b3q12
3j373i3b3p3r373a37123c373j3b3p12373912373k3q3b123f3m3p3r3j123m3o3f3j3f3p123f
3k123c373r393f383r3p1g0a2i3r3i3i373j123s3f3q373b123m3i37393b3o373q123q3l3o3q
3l3o1g122d3k123p3f3q12373j3b3q123i37393r3p123b3i3b3f3c3b3k3a123i3f3d3r3i3712
3m3o3b3q3f3r3j0a3m3o3b3q3f3r3j1g0a0a2k3e373p3b3i3i3r3p123s373o3f3r3p12383f38
3b3k3a3r3j123k3r3k39123i3r393q3r3p12383i373k3a3f3q1g122n3b3a123r3i3q3o3f393b
3p123p3b3j123s3b3i3f3q1e123k3l3k0a3b3d3b3p3q373p123o3f3p3r3p123p3r3p393f3m3f
3q123b3r1g122i3r3i3i37123m3l3p3r3b3o3b123b40123r3q123p373d3f3q3q3f3p123j373i
3b3p3r373a371g12283l3k3b390a3m3l3o3q3q3f3q3l3o123j373q3q3f3p12373r3d3r3b1237
123e3b3k3a3o3b3o3f3q1g122q3b3p3q3f383r3i3r3j123c3f3k3f383r3p123a3f393q3r3j12
3b3o3l3p1e123739123f3k3q3b3o3a3r3j0a3g3r3p3q3l12393l3k3p3b3n3r373q123r3q1g12
2p3q123b3d3b3q123p3b3j12393l3k3s373i3i3f3p1e123i373l3o3b3b3q123p3b3j123p3b3a
1e123r3i3i373j393l3o3m3b3o123m3r3o3r3p1g0a2n3r3p3m3b3k3a3f3p3p3b123m3l3q3b3k
3q3f1g122i3r3k39123c3b3o3j3b3k3q3r3j123m3l3o3q37123p3r3p393f3m3f3q1g0a0a2o3e
3b12373k3p3t3b3o123f3p1s123a3b3q3b3o3j3f3k3f3k3d12393l3k3p3m3f3o3739410a"""

cracker(30, num, 2)