From 81a5db42f87ce1bb7d633671f4036319e91ab3f3 Mon Sep 17 00:00:00 2001 From: Dnomd343 Date: Fri, 26 Jun 2020 13:14:41 +0800 Subject: [PATCH] add Readme --- README.md | 264 ++++++++++++++++++++++++++++++++++++++++++ images/address.png | Bin 0 -> 18688 bytes images/code_exp_1.png | Bin 0 -> 12370 bytes images/code_exp_2.png | Bin 0 -> 12722 bytes images/code_exp_3.png | Bin 0 -> 13574 bytes images/illegal_1.png | Bin 0 -> 3600 bytes images/illegal_2.png | Bin 0 -> 3998 bytes images/illegal_3.png | Bin 0 -> 3955 bytes images/illegal_4.png | Bin 0 -> 3895 bytes images/legal_1.png | Bin 0 -> 3938 bytes images/legal_2.png | Bin 0 -> 3633 bytes images/legal_3.png | Bin 0 -> 3121 bytes images/legal_4.png | Bin 0 -> 2008 bytes images/step_exp_1.png | Bin 0 -> 6987 bytes images/step_exp_2.png | Bin 0 -> 6521 bytes images/step_exp_3.png | Bin 0 -> 5666 bytes 16 files changed, 264 insertions(+) create mode 100644 README.md create mode 100644 images/address.png create mode 100644 images/code_exp_1.png create mode 100644 images/code_exp_2.png create mode 100644 images/code_exp_3.png create mode 100644 images/illegal_1.png create mode 100644 images/illegal_2.png create mode 100644 images/illegal_3.png create mode 100644 images/illegal_4.png create mode 100644 images/legal_1.png create mode 100644 images/legal_2.png create mode 100644 images/legal_3.png create mode 100644 images/legal_4.png create mode 100644 images/step_exp_1.png create mode 100644 images/step_exp_2.png create mode 100644 images/step_exp_3.png diff --git a/README.md b/README.md new file mode 100644 index 0000000..aa676cc --- /dev/null +++ b/README.md @@ -0,0 +1,264 @@ +## 基本定义 + +### 华容道布局 + ++ 棋盘大小为4 x 5 + ++ 棋子为2 x 2,2 x 1(1 x 2),1 x 1三种 + ++ 棋子间不能重叠,且至少存在两个空格 + ++ 有且仅有一个2 x 2块,其他类型不限定 + + *(一个合法的华容道布局必须满足以上四点)* + + 合法华容道布局共有29334498种 + + +### 合法布局举例: + +legal_1legal_2legal_3legal_4 + + +### 非法布局举例: + +illegal_1illegal_2illegal_3illegal_4 + + +### 布局间的关系 + ++ 移动原则:棋子只能平行移动,不能进行旋转; + ++ **一步**:某一棋子做任意步移动后的结果; + ++ **子布局**:某一布局通过一步移动可以得到的布局称为子布局; + +​ (相对的,布局A是布局B的子布局,同时必有布局B是布局A的子布局) + ++ **相邻布局**:两布局互为对方子布局时,两者为相邻布局; + +​ (充要条件:布局与其子布局间的关系) + + +### 步的举例 +step_exp_1 + +step_exp_2 + +step_exp_3 + + +### 标准情况 + +标准布局:存在5个2 x 1(或1 x 2),4个1 x 1棋子的合法华容道布局(363480种) + +非标准布局:除标准布局外的全部合法华容道布局(28971018种) + + + +### 编码 + +合法华容道均有编码,长度9位,每一位是单个16进制数(0~9与A~F);同一布局只能有唯一编码,同一编码亦对应唯一布局,即编码与布局一一对应; + +**位置编号** + +address + +2 x 2棋子的左上角在棋盘中的位置编号有12种情况,对应编码分别为:0、1、2、4、5、6、8、9、A(10)、C(12)、D(13)、E(14),将其置于编码第一位;剩余8位十六进制位储存其他棋子信息。 + +其余棋子(空格此时暂时视为棋子)按从左到右,从上到下的顺序排列(取左上角排序) + +它们对应的代号(二进制)如下: + +| 棋子类型 | 代号 | +| ---- | ---- | +| 空格 | 00 | +| 1 x 2 | 01 | +| 2 x 1 | 10 | +| 1 x 1 | 11 | + +十六进制可按位转为二进制,对应关系如下: + +| 十六进制 | 二进制 | 十进制 | +| ---- | ---- | ---- | +| 0 | 0000 | 0 | +| 1 | 0001 | 1 | +| 2 | 0010 | 2 | +| 3 | 0011 | 3 | +| 4 | 0100 | 4 | +| 5 | 0101 | 5 | +| 6 | 0110 | 6 | +| 7 | 0111 | 7 | +| 8 | 1000 | 8 | +| 9 | 1001 | 9 | +| A | 1010 | 10 | +| B | 1011 | 11 | +| C | 1100 | 12 | +| D | 1101 | 13 | +| E | 1110 | 14 | +| F | 1111 | 15 | + +8个十六进制位相当于32个二进制位,由于每个棋子占用2个二进制位,因此最多储存16个棋子信息;将其依次填入,若有空余则补0填;按此操作即可将布局转化为编码,规定编码最后的0可以省略。 + +**编码举例** + +**例1:** + +exp-1A9BF0C00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
2 x 21234567891011补0
000110101001101111110000110000000000
1A9BF0C00
+因此,布局编码为***1A9BF0C00***,可简写为***1A9BF0C*** + +**例2:** + +exp-4FEA13400 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
2 x 21234567891011补0
010011111110101000010011010000000000
4FEA13400
+因此,布局编码为***4FEA13400***,可简写为***4FEA134*** + +**例3:** + +exp-5DC02F800 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
2 x 212345678910111213补0
010111011100000000101111100000000000
5DC02F800
+因此,布局编码为***5DC02F800***,可简写为***5DC02F8*** \ No newline at end of file diff --git a/images/address.png b/images/address.png new file mode 100644 index 0000000000000000000000000000000000000000..b80d6f524cc83102a115d38f048d05b02fee08b2 GIT binary patch literal 18688 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%0AEcLiX1egv7!=C#W9 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 literal 0 HcmV?d00001 diff --git a/images/code_exp_1.png b/images/code_exp_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1c740e37931b8cb6cc0135fba2c9edb8ac888c04 GIT binary patch literal 12370 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 Pt$$f5#peYQ2EP9b8Z_QD literal 0 HcmV?d00001 diff --git a/images/code_exp_2.png b/images/code_exp_2.png new file mode 100644 index 0000000000000000000000000000000000000000..c66ee7cbb7fd430ba0d1b24239d03888d0d246d9 GIT binary patch literal 12722 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 literal 0 HcmV?d00001 diff --git a/images/code_exp_3.png b/images/code_exp_3.png new file mode 100644 index 0000000000000000000000000000000000000000..334f97cca7f2fab04f6ad9596259d418436331d3 GIT binary patch literal 13574 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 literal 0 HcmV?d00001 diff --git a/images/illegal_1.png b/images/illegal_1.png new file mode 100644 index 0000000000000000000000000000000000000000..6bed17ab95ca6f5aeb9287fa7fe574f1795a3188 GIT binary patch literal 3600 zcmeAS@N?(olHy`uVBq!ia0y~yU|hq%z$C)K1Qa=WyT1-daTa()7Beu2se&-0XOPMV zpyETGE{-7;x8C0I&$wPHbG)$mgOZo5h|nR9t`))UO?)pkx%P-O3b44k1WdP?<}tVX zg_7)>2h%nip5+_C2|iZ+?YM3QL~vn{w?=vBl=J`6_FV#aVJYdJ6Q^=e{|=uVC4h z*D;ZkcI|6t=f18~@!tLC#Fjb&@@Sb1E{=ZfeMFHfDnr+XVWB> zgZ00+Ub*u*`0Lk;UF-5+e7`9@x9HE48Zq5xB8!c-i5y?{)Yaghecj%#f8WfNe`0d~ zEqifxwQ=DT?>R*_0{xb&TaQlY(fztHQ&phm*Xm0f@4uS${_e+H)0}rM73^VuWSG8n zgT$nbOYO|ovNTz@pPt@TJS+c&*WY*ipS_hO_>Ux?%StplL_l&JTtGPm7FM8~KogR3utu;lkOq)ekRed!1wF6`36u<21G4Q~ zyun5iLBVW=Isn=6Fh^zNfZaws^+)$0-eh@zEviEcJRCY{aD0Px8*YSmh)Y^Esw6~(LK5`vr=$RR5qXg_5Cw0 zDfvE;Hn)2EwsX3Z`zNfnvs5k~pQqb@en4-er1<6ELo^pu2DxU6rw!5`$ zikIPXiK!d6-kN_^ZO^Ud2R~yTuhj46ubnkLNE4i;!fso~wT4^om)-Z@i z2@&XFko`pa7=OSZnTHZI3t~a#3sIycSS4OB;|Q6#{SUm;Pur)>0>!#OOM<)7j;8^6 zuM-@-B6xt|_{M-mox3;u{M7ljv6H~*1sJ5(Y>t^n!9feo^&%`c*-;V&xTFI{ju;at zjYJi)EY~{QES_C`e07l4(K$&WKx^7-&9-kd-<($;2DIm7da=M84;Fd*z?%FdkO0u) zlBv^TmZk!WrUeS1l8F$Bhzn5egeNZ=C09skpD`U221Jp4xDq0cSizdC9WUGfr9z^} zNYu;;OSF4P$fh(;w7}%LE{J72zvz9-_{l<`;xO#CZP3nK1@?p66fJ(8*UP^(eIhW; znPlax6&E?Q+Lq&AU~XMe<+l1wYD=6 zPfm8#oSNiksFj?(_1{UUJ-2?o{Sez;e7n61TGmCgbHDz*X`gJKF{n+jU*!3cmcPfN zQ)I3j>f7!5tiEZ1bng=_-SA9DoFxj85lKps(+o^BNTn<=T_Y+`Qp#JL5s73Tq&S0R zo!#IJL=0IBR!O+P#T7iToO+B6RDuvgo1nr!QDl z6V&v}-g>-G++5~_(}rA*e{-^J>X&_av9SqOi$oZX5)Z+G8OQr>>T0Tg$tz>pCFrUXu4b;|;*ZGn}p2C&YZ0?f-^6ibs?oxhM3 zBg;k5$XmaNDvrk!GH9s;wKzo77U;@=fg7gTWbHSVFMifkV42jkz)I*~>F>?6e=S{d zbb`VPKIac!J8u>*{C16B6drYKNM#PVCesdJsq0+>CWR%|EAL3w`20Z7GphIPPrc9LcM|7+cjNOl0(S8jJYD@< J);T3K0RR*RV$A>m literal 0 HcmV?d00001 diff --git a/images/illegal_2.png b/images/illegal_2.png new file mode 100644 index 0000000000000000000000000000000000000000..02d0f3eb6bfd15f75c767c7ba3cd3c6d3656de78 GIT binary patch literal 3998 zcmcInc~p~E7Ef)^0HR@UU|@n02V?|>tqO`KG01j=7#KT(5o$oTv_e^xqQi$kJw+KI z6w6{GnhGh{39A;AgY-ZFK}4}Ef`cPC2mu@sTv+D5FSLXd6nf75!A(xyz4zVwdw2P9 zisk00qNJllAP`iXotSI_;k`lvVU-4H75viBoq8NT6hoc%hZ6`|H1zkLGuv>CKv>Um zX3{-lx+D+Wzu-syp*~FcnXi#%px+m&ntLw`uyupRN>v*1WTFF;m5G_s*vV9*ymf6g z>#n>C@czW4w5!!&OEd5NXv=gf?dCss2jBTRVCHtqtqGGrubj@Zuz-QisDoqnKic0O zY)bwp@?1cRZo;W{A7}QTCK^HywQRY5YTFR4Ks|PbN~F=vr|#yBJWgLz{N4I~!=U@o z?mn*>#3R#G>zFJ2?^9gc3Xe4VuEWx(B)T*Cq`;8GV5t!ej1;jnBHbDL*UssjqQdDL zV{NR1WiMuJZ8|e*H%=CKpY!-2Lrn2b;fAcO8Jip%7j0?K?fug8lfnCey-Cci{Tj0( zMYEGXKL|ebu~Xe)o;X#)CV%ed6ZOQ5_Se`qF=3tMfloO}+BZW!wHBKjaxKd{>Z6QF z_ICfU%cXo&Hd7+Ze(1jEdeayqrnzX7R+1mDPU}qvH87KGWkX`Lni>T1AXW~ewFAPg zJSh;6zSXq!SG7W<$Xt(;uo_~h+RS| zLS?FD4HU6^UYM$BjBi6z8 z^RF!`^6j?0Fs)VYv#!Yc+XrdlvO_#F&j52&>(~6|+stvMNYcLXRYMd-|C)Qx&77P0 zDMhEa3BDn!+kFbxrhH|uyEiwRKj4P6n#1VlQWg;Ajq>16D# zgE>cMXL?bNOQ!H!jRB3_{=Cx@ju%$d#E`dZW&Ckwd-!C%ae;B-w#2;@?~6rt2mkJy zQ>}L+F81j&v(MVBly_N_?~Vvlf12mE5io0wcH4YjSd=Awa9f{7Bty|q~3{- zgWG!xMLpFfC86P;&Cy*N_e-H*UpRTnVDru}YV5<7(%>N-Q@8S_v7h4nc+a$km9Rb9 zHN2x!2gDX$tlYe|mwuINQy)0iX&tG#LhXo9+t-KYXV(dB^9)PL|^)77G@hw1a^xu%O3e zxWfDZ!_Y>AaAi7Ounmz60reL%pp;;|l$4#0jMk#xx%(E3cGQGqM6DNDmtFRsUuM4|Y&H&P+`2 zJ2qWe6+C3ScYF4C_jY)_jE#B941NLqRd9FKQAMss4U7u7s#V9m??vWajlN{)Tyn#4 zGQf-(I+FC`qmjpH=bh3H$0^&;%$Te++kaM*543-CHKfuo@=!>%^OWMz+ddgiw#f!Tt!Hs!^;fwtbSShCr literal 0 HcmV?d00001 diff --git a/images/illegal_3.png b/images/illegal_3.png new file mode 100644 index 0000000000000000000000000000000000000000..ad95f3abcdb97b044ad9895e4e2238ea6b3a24a5 GIT binary patch literal 3955 zcmeHKYgCiT8UB!Uak+RoDk#Xtty=3U7X=9rE}~qt$Yo<-$1B;0~7muNx)*s4$n z)Z;2kFhM|!D2bN@5Mlx@LKcA_3n7p~5Ud39K_cQuAef|~b=%Xfb^F6#J^q+8XJ*cs znRnjjeV%9Xf&=}`j4h1;05Cgr&^rVG44440Y~6}a^)uDPR11A)kQ(B*A7BYLP3i}q zV7vmn0N`Gc$(xwv`tfHc4<1bg0P}52&EQbT)|UXVYQ-UMudh!>O%Fxq((qA&8D)t} ziD$B8tETe$sQ~Uho4mnknD@DueK zBdhNj$L$#SbN+A|Jgzs5oy_iPYn;y56R;=iTj8eet5;E5yABH-FZE_R-Lcq2#*jNj zZkgSSB`vdV6lD`!v{3ADMA>Zt4AqgLoLg<9y`eO;->tyID!jonCk{SQbWrCG49&6B zLExi2U-$Ym0q#%H2G4ruzT=*ANZ`WU1|)J)sg%#+&c|YV)UwI zt9>{??iWbl@oF33c&<6H+uJ02L&fra1?xu`kT!|IpAl9`jZt-{4`?a4PB`M_DL9pu zsO&|a;uHqeCd$f7ToLSGt2Q?mLyxPwFio=L1ps5>i(}Ny8OKaL#HuR+A%3#iV%M%%HZJ%XF=+8IpS+@B+)?oF4 zcVF-0@;kHkzGtDdFc_}f!mnxHvm|w7&Pv7iQ%rvs4-t!YAx=IR&?RA$Dw<62ER7%z zyzIct!N~M@BE`hAmnKu_$)X|*qC+U;SF(r2D5XZqtXK|Dev0L}@PeCklEb_+xbh}L zw?^D`?RZH$;k6XZn%R!L`{Ywf|KZ!A+qt9EcnF?NO$u}GH|sya?ip#IVjq2J<%n#4 zg0`};I1aos)wX9YlsZmqQ!>xpS|vja*Y=JWP`6Md_Wctq4JGkGkV)9!wI0IaoBf*h zdJH&SbEI(Q+a3*Cnq7!{hC+v68 zKkuwVK!TtGv42n?N{aen%s|T)%My-rzA6-+L?I{o?1sR$%m?ekY>-7vt7@535rl8J zEJUGh8VY1`JS@^7n4?wvwMxQEe&}Q~d+>{}Zn(7M&Lx?-w+SxiNPa)Nlv;~fdosA!sj-@9QBfFvF}*$K59$A2m$dFb6ATh6{)0cPRf}O^mVs8tq3u{WqEW z83Z5xS^g)w?O>+8LUA*ioI<-jf2t{_qqHe}c}aL+G`Un~?tQswZM$Ti;JoD-JA>J$!^oRipRXbjFF z+Aqw~B+f4Pr>1hlHup60n2yLGPkW?Y(nfHp^gzZq7^$rH0T~qRu=JmtsIQxI8$KfG ztt0xdP{D5Ua2E}xUza~l6V*YL=_dszQqWIksxzkD978F-B0JkzVhw%LpQcvo5=F2i ztJ}r&s}sto5xxFG;Q|>LPQGze#hUzlE3QE|DfDK98g>icl7(Q6;*-UquKt}Eq+YPc zFcN-cDo;hMC!fXAJeq>DW`-NoG5BvDkck};q#1Ui+7mtE`Q}-O=6UskHpsLC(_h#J zBjFyB`CQv?PGyimPrE;vzc$;3G#PeyGMK@r--C*+q*!tvSv1ZLr{*mvW?~-rHtPBU z(~7#s8oz5TS*XhLutPqDe}^?F8|u|XYpR4XN(V@_SS>zfvQ2{s#I~V=`Z^-dGqts9J>3w2yQD9+QdTaOLTWl-u$rmuxtyox{5uIjjRa#2~PiI*uP)2-s_yu9z6&kIzn?v%Gy|p8}RC2ijHwSO1 zLeg$cE(A`Kj%QxOY8JrMbY(;(mAZGG1@cI#xX{!MVbN%mHlrF1#5ZiAL|QS+I@9GN zBgrD8R1=N$`4`2oq>N~PSgDU6c}T%;EUPdTX`XL^NgekJgWe-bJkde)NYC+`Rf=xb47Hv(n+rmR#x zzn^5I9@wVr!rfLxKHQQ17+noysy!O}CVA$hT}a?0SMCEs4xuzp_b6ztRci|josSwo bLAsUu3T}Xb_I3J?GH}Qz(3`dY*xA1UHNaC& literal 0 HcmV?d00001 diff --git a/images/illegal_4.png b/images/illegal_4.png new file mode 100644 index 0000000000000000000000000000000000000000..2b345e3d39b5992ea46cb35ae088057528431e38 GIT binary patch literal 3895 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

?;_eqFqw*s`Q3-XLy`$jL OjI!8bZI()QX8#T3X(y8a literal 0 HcmV?d00001 diff --git a/images/legal_2.png b/images/legal_2.png new file mode 100644 index 0000000000000000000000000000000000000000..907f76fb90b51641db76cbdc79a8d2edd36237ed GIT binary patch literal 3633 zcmeHKeKeF=7@yi{8>AhrVbx|$XveBKR#F|7#>du}(ir5M@l^1JQ}({EG^Rb1hW&H@m~-EA?{k08=Y5{v{7ALm zrmDPB8HGZrlDFH?P^d-uDAZzg%wn)p_wZCKSd_lm?)DuDrJ)c17LjRsqd@pCvJJ^8 zN+@cx3`%2sTKj}hozb)g!kx)Hk108ODjn>OAlPMc1&G) zZ{-;$)e=(TgG{v@63rkJC;!pIN|6mO>;CK+?rL6+?Eh!p^1xL?ueODDVjva#&Pv9R@4<}JV6P+-W!Lm|*&LHNS`n zwzYEvvS<=efQ@his&okOr#euEQHH>}galSd2dpG41aWmRBocK_F>$YCK^5QAXH zfh~aCcyH_6x8GCAEa;zkuo^oo(4vpA!a^Wc7!vR_j*EB(%*PX8bJ+64WUQRO-%`u_ z%;iJ?SOJ3D$M{d;4C^agHY?JKg}~b#qcLcx($jmY`ndb#C1D&lI+;Gy_$7b+kaA_y znkZthx#U29``;=dqRvnpG_VEYS=YAkiwx0}M7rdVXe>rhufU*zFs3jEMhi-TakyT{Av1W6 zgU2i$sgbA;U$6s)ma&1IOap)@q9KR@p}^`o7*)Pt%^p}tD-}ix3`J0Q2!i~BUI9Qf zHbpK#3kiY(Q6s=nrYaJge}_}S$bb+|)Drh=?W~C{Xz1q9IDWP~@NkU|V!|z16_Yl; z4N(p=jcL!a%DZA=*4|sR3kkNM8r-a?1Mcuk2b~E#b%^^A`35J`-RZ5aQee6YL zYaZMuv2pa8*s$TT%C-qzv0+X`b%GxyHf%Z6YCU@VbhmhaUSY#}N^k$S$DXignXxXR*Fe(K%qU%2x z=Gz<*jh@Ok?eK8bw(xP>cP}w1iK%5dW?{^4*I*u_2dlBOEmR;Ds5seCpZ@g3l3uRM#k@7y>r5zT_Q|>(v_ScSzA$Wz;u_HmRMQZp|@vmuf+MUpvX&6)aAN-_lhjnL#gi zf=|ycFm1ty41dp2|4uQODZF7WQYHi}gQxa_y_RCj zvZ7Qt22$!JqlY>-dy((bp2d}B9qWh8ydH#nl=g+loDI~^CsGs z9@nP=94@QY-}mH3drRlPYk2;;2OQ135Jy_%k%2?f+0WG*@0i;9!&|fzFj|gTx zq!!@x>#;DM$i~1ob3rD;^B}h~rhz##yGSskT^}eyjinS(T3#}Q^L33x)GQ?L@L-&6 zr5s(-SNI;Jp8NEj@15Ix#F%{~MMLft-si?~gKmZY_E?!XOV!YHxA$KGn&u5_naK z2e+*NJIrN0&AJ4#N6}$y+oscHdv~z-euXh-CRdpS80TbgG$`OdAc|~jZ&P4JhyDQz CBJ-gD literal 0 HcmV?d00001 diff --git a/images/legal_3.png b/images/legal_3.png new file mode 100644 index 0000000000000000000000000000000000000000..67e26702cfba2b54131a5584af2f41ce5208d2e9 GIT binary patch literal 3121 zcmeAS@N?(olHy`uVBq!ia0y~yU|hq%z$C)K1Qa=WyT1-daTa()7Beu2se&-0XOPMV z1_tiOo-U3d6}R5rIiD?(&T#x;#F6Gl3t3rplLWOd6~FZT$pwA`us)k1OGFu|(N zDpdmf-x89JsCH%_oW^!*DVNtq%NbJ^t&m7soSWsEl4kZ>dGgt1>yv^z!mQ35I`D>h z{^3p4)j!`Ij(H|)VJ9j3FLKhajqjH&ZoGRn<3W$g*W~z^_5~^&ZT_>hKBn87^54(! z40?In*lxen!SDOl`P;qSvitO;kY9a1+Y~f7n*^q?IC6M3DX^$I3N%ep(C`$PqQdd- z^82&zPTuB@_uIO3p2#y1x73`-)qi(#tWOf)x!)dt-$wrZjtL%?+|EYZ*5pe2UgLFr zSkJv)N$}5)tk1vgt%A-Sn$V-09e>w%d%voHj>N%c;k7r9ZJM&#KqdKfRPMUXuajh( z1VmUAPv~=Sff%fgKpN-i2gn?O7LY+4 zP8aluCdEK11Aq=t)Brj_U<%Ly99|%ER5_dknuJ&sIUIo@)v^E>RJfHjE!YTlJuzf6 zs%L?A0(}d#6zE-&yp1z-kjw-53git?KyonhCGLs z7(lKD2GmdTlLcD%K+FS%0w|UtA%1HqDBOuBNlq4M!6RT|28w0kNnkKSlRwbih~!OS zegOvzvUw;$v&9<}K*W$H?qp<`1W$oKf2v-GU71=W)|QeJx% zpD&%$swf$K?cV=o`|2#(5)wJioza)wb@A7isNh$giGGP8$EIz4mBR%rjeup9mk^68 zXVWAWN6)4ODvkl5BJ8Q_hrr#|Rra>E<&JO-o$7MIT(!A*cLTO0T1=E!aMBQ&vX1|Y5B5bpzA`ri8to@is!w|`9Xup3r)uA6({!bk>aCW(lF{FoT0dy99X!r` zH(y>aEG-Bm+!_c>q08p!9b7Gek^W%GQZyu0?eB{sXZ`YoMW(UwO$$Q)J)hP4{L$XW zpMPiZuKki{`cwa=g2q(dgR$bT?a!3fW$R=wy&et?pUTvI{_9M`m3NeB+=}Vk-lqa=C7aFb4p-Ljti55(^8NZE jem&11`?62dU*vPXKE1i}8HWY155VB*>gTe~DWM4f=0kZU literal 0 HcmV?d00001 diff --git a/images/legal_4.png b/images/legal_4.png new file mode 100644 index 0000000000000000000000000000000000000000..184c80061d08603b4455678fbefb7f9b44bfb834 GIT binary patch literal 2008 zcmeAS@N?(olHy`uVBq!ia0y~yU|hq%z$C)K1Qa=WyT1-daTa()7Beu2se&-0XOPMV z1_t&nPZ!6Kid%25D|#~*N*s8|I$I*vAd=-H^Nl|&Zi!dZu4)|aR}kCXbx1(6$?>#9 zbBCS<&ogSF+tr!9{&=gD|DS8b@(m&HCR}kb*ux($zUuDPD1ITX?kC%uL);2h z%kBSiY(hYUilE9`!JO~MCQRT^YU)@3CW2j91RVt&T?AYN1X%=KSRAR#1!gfpM=}VK zo#O&5On}Y@6IAvCTIi7Bn+uG}O&tmy3Q8PG9UM)-a91FP+riPL093!rnKn@a^%io# zA%c(y)?EWqJOlE%QWJvk6Qq7(Ly9OtN1*W}5htrzyv_e+{gwu18T z1m@^8t^fF9gXN9de@*p**EDseTC13%R#pvXTnhfJslFj|XAdv1%KN*`Uh?3|#VaCS zo|#()C!!;_2ug1>O{a~xRHukj`uSXDE4y85}Sb4q9e05Q*Y AX8-^I literal 0 HcmV?d00001 diff --git a/images/step_exp_1.png b/images/step_exp_1.png new file mode 100644 index 0000000000000000000000000000000000000000..0877ecb4fb6f71ffc9967cefb3e528a7fd6cea24 GIT binary patch literal 6987 zcmeHMdpwj|+g`(DQ`E>YBXp7?hg1|Xq*R1LIfdBeY@FE)Gf^qW-B;v%sFadqkI9+D zu%nDa&W8!FL&j-L&VzRi?eFc~-}~Iiu+gYHG1b0hr;LEvBAHew?fPT;XVOg!DA#6UM2QOux|D}a7U))SybQEXqdPvidViIo>L~D@AcTE ze43Fs5P}tRRWs|oC-W!S*k z_;^1?`x9Y$aT&KV(a=>rKARjelQZWS@RUZdb`YR^(y)84S4b+(Ln5C)ZzfEIZ*h)_ zR#WZ7#RmEJ4U*^IH#gH8eIs8uq~bmo7S4a!Wj>I;B*V{<*s(8P?zlR7b*A#B4O?)A zv1rH-$qFiitrIMmp6ju{y*^&)?nN1;c8x@4-P`2;7p9SDw?fI2K#!qLTvDf!pi0f9 zpzT*samgMkKmBy9zBfru5&}(D@N3uxCps>B0CD~KR#YuT?Rq_YhPGQ`UI7ge{R6BK z2-ts`ixXZkXEE>!F8tZ@d>`^1vF{t^yTAP3(M3Dqn$RxGl&nGlx8mdCxh7eM%cl#g z)w|{?GINt2p6JJrS?98IwL1^9!dmBm(5{qHf!u(uA>~rM^XG#9kmlRuKGJP8hIdnr z8tZIg@$^Ki4U>%Px}t_%c;5Pm(YR&Z&zINsU82QWY^yv z&d8cbuBLhPH@$CKwk_V7;^&3?tY-A?Ci-6EyTW#92FY(kjhYkYR=h$gJD4k++OAmi zByf76jyTiiX4tK$`Vl9{aSzhJkfmir0L_XCY_Xq`kmT_6QcP&=^>1O+9{`&s=HC%}b#gc0RQ(uDODfMfjQ0W^c@^yfC}9Z|v?|mmm(9_M>I{ zpj63QkXiO(%-SRs9pnr3je_x)S=myk{7Zn2b9s%`CdGCbwF75vb`%^dG|^?*S;y*c zc9dTQDo0J2E(f4X-Mu|_L?xw$g{a(W%hRv7NQ^dIsvaG#lP-^v=Y)2WOH{YpVe5tX z{>ut-aSqz0Vps~ndn<|=#{)y^|9X6taca9Hxk}{$!p<;SyFC~Tz8(ia$T=9mJ0&H- zn@_wbKzNx~jnqJZ=Q^;}|Ew+`I6}!qD07J93T6Y&tbwm2sm!VQrfjqgY_Nb04Y8L_ zXy$9AAC~0Y2n>Q)Eisl=H#ig!pq6Fa|H)xVFFt-V+u$?+1|=i_2y70IYmk7iTtxei zE^3X_!+9yaVeO?Zo=Lsxue~hZ#oW26?B%+Dv$J^Aqkz{(QZrIt>d98!Wf;1<)wqdL zix=CN(D9T#UDWi((c#GhzXLd@$X6t%?v9S4&Rq0(m|uTmeeVtb<_>hvDMH(53$2N^ zYI(94%G;#yn8ZM~bv0FJGCoy6g?qiTDr9=PiwnHUg}U}l5lvec#ShZ*q1a3_GPBi` z3xVIa9q#qh-b<&-(95@3z~oUvrCfm;4tdPhr#3rt%Xy25$bSE_ZBO$31=v~{t9)u& zxy&&>mdh%MKjZ}5_k)-|5K2{OC-X*YT*Em7`!$4_5d;8?F38zvhQPJ)g)_hmlB#dG z25UO8rXhR?qATy_&&wxLg#;XT;KST`-wZe24bjaTIjL)p;su!^(7N@8Y=!iDX%ahu z!5%pFtE{`&uo%yg%sirzkLN&ut2@_5Nebs}-LgJP*gm@=O{g)gnW6&-zwp5waJ@O& zT0#UEc(W#eTIA&c)<3gmw}-?L;`&g-Ngf6F)sL{#U|T6C2Tw2pbhFm}$ct9%hI5DP zc{m;-fDCrz8I6xrBX>$QK-y;R^#^zV)%GU$Jzq8Ux+8V46mik9LX>vBKDlChr8{nN z)QZ9P;K{&y(t1nT|(xc_0y$&U^du3q?q5fLB|BiMS-nMOA z|6$=HUF`FKnS|Iud^6r0UDLm@kc)+}?dfuGGOD8?vOsKlRUM8gW--*+3l zIkf}Akf|wEcjBTeHO&{j(bAY?@aY79-B)$Z*bxRW&*l%XgUrovbw=X9f#-e*0RXQIp^7vO zc|h=Bq5e9LgS`;|j!@Y1;!IA+b$bBN;qc~5j5Po)EMGd_BEqfpo4Ev5>t5LE0w)X+ z=jMPfDX8-}kAW5|Bw?4qWlemU9V z_O9Wl{hy-xU>Y`)vv5bJ+5MkoJXYS5hb$lPJ-8M-A-n;ZfO(~|nq}ak@`GG^? z2%h3mYO{}v`EqDtJvnTzgwg$s4L!MewP!E{737U+r(p~3kqFP+elAXds}35greBWSiZO%?$~5HBI}YGK^i>*t&N}+)pJK@MIGi+Si_tTeg@S)&H-4=xd>``vj3xeU>+-R|ux+nnv{i)P?8T}Hm&AcDE4gs* zf7PGv)=O@pJwy^qGX72K4b1npln?EdJy#R&#Bg_{nv98BEqFin)w4{AA}S4k(Bq0v z_Asv-`^O9vp;u47b!%rYu~uDsvO6J*j9;PPm=zO^Ua1C_*Pi-~zt^)JUY&{Qn9oQ> zM=fcO%54pti(J(G=$Jd?ncLY%uV)XgkdCU5&L?qOhIH&p`8F$fSzaQXy1b~{ohiPr zRa;Cfk{UF8n!$^X>@Zb#iciKb)?45f7CMG@g-yR+IzoQhTfC>&QeBo+vYKj*u8_`g zo)URqzX;1s(4Sf5CLi{E9whBUb{e!~Or7Hjy`EFi^MLuI;nA?#R)lDgf!uCp>MrqwBnlt3oa zST!-DJxb2lBVk}X&T#{KPPTgT_)h^aQ&C$eJ3xOo=jxzl^GHF3W_N(dD9oW$4W|?m z8T;ysYm~^;z^N2iH7wf9$$?!qF>6qdZC$jtbKv4MGA>5+)mCYW9#azNn(W~(pN;Js zB7SMsF(fH3Go5i`J-eWuX&oXuANp-+@qOl=?jwDTuzEPHZjzS2GQPxcXT*?==k(eT z6`uqsO~EU~ys);vFZV?=f_GZ{X9T=5Y=e&L*k`FiY;Iq$d-bCk@V=)YE#YX&wAmxuzi? literal 0 HcmV?d00001 diff --git a/images/step_exp_2.png b/images/step_exp_2.png new file mode 100644 index 0000000000000000000000000000000000000000..90181aa8741f92930204722b0058f8a38675932d GIT binary patch literal 6521 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 QdDgrCXA8spy)IFI2VRN^3IG5A literal 0 HcmV?d00001 diff --git a/images/step_exp_3.png b/images/step_exp_3.png new file mode 100644 index 0000000000000000000000000000000000000000..a456c22b84a6bfb2d655595a525abbbb8245bd81 GIT binary patch literal 5666 zcmeHLc~p~E7JmsL1{4W`nh{y56p=NE8w5gvR75Z=vIzpgv|@#V1|)_>q7*7KN=_{p z6lEz@Rz-?{>;WoRwv++cA$l-`H6REG2+Rwmp3YRK=gdEI>hX`fqm;9{7a_u(vP+_nWp3!3UH#`3M<+T=v>G zUXt)x>dc{I0RU|JRQy3$+N(_fu(8n6oa}JkW31Qa@~zph+L!!8S#eHIns*!zZ7g)O zPmBKHX3ftj8V~On&DqlRCDYd27~T;4Amvfyw)7MQ2UKLujwJe*x$8eoe{t}vT7)AubwYwv6#5{vMp7Bj)*|X=fqcj!Yt12dZ;g|() zclqLg@6>=jg4H!&7BMoSVv-vkwx;IEVtURddI$j23kA2j0;lpWTB%Iq}fE$>xRUG%z=sf^auG!ZhG0$^TW(V z@A|PY8&!N$aS{p7M%eC96y}B?o_AclE$E59F(VC9g9aweeB6A;*J7^ZiC9#)Gi7fR zZ3!a*SH((U;7C$ag(LWuB_7R@NI3qRz^?zvT<6IgJ|Q$9_?Bb8-ES=9NWd=MhI(nd;=%Eun%U>%f(i062U78+di()I5>JsVa zleC;R1{*R^DD_Adc#3B`@{FDQ7aM3{l3%B(Bx&jq=O&f`bwlZ!HZ$hf;uk`SOqoHU zePTGR+;|}}BT?6dzc@r^3PubBRtqv?j_)$dk^tlTXCZ&@S$q`y0iGXlNLu&PFBCAR zop#o)AJrC88XmTPKfB=AXhy*hSY(v1` z;4%sYN7W6mUAz@|_G2Ulr+v0^oUP_gWpuhG+}`f+1^@oRIR~E*oTs9L2~?P!+hUO( z#q(mR|a zE(N3+jW^tj74qZtco)3tB(tJWs7E#=*6H}#OmF3^!V3fXdUj&Z-tXmm-Tx@~10p{3 zkbJ*NAPyS_QN0ZrC+?OJpTu>>(I=}y4bPs+G!74Bi0gxMpNIBlKWzfz^q>VyT~Ci< z_oWy67;&7$t`@`MA_LCmI@9GBl(}#Cy>8{Nt%^^Jdte)p0|ng+Y3u?HedhJjv=VOn z<{Vz!QO@C^bIKC)FdM|cp1)B$FO8{i@w;BV5So5wtpDj`heI`NvW0FHZO$j1>phJP zds`$&y8U(XiPcJ9_>W9|zA#M}VKCOxD|O0)?0jT{C3+>9M z1w)fXWwPa1L&ia&VuikA`OA?KBh#-$3+>~vu)Y+)h!vJ{vYgoTl%Q>3^7 zEhF8lPqqcDd3o_F>$at)HGHC$g&jgCGU;X_qrMnxN73iMz<-+qosZg6LqVY5xcKU zhsG;Ho1Yf4P3Ta<3K}i+FFs{;_!v4WC|Gt zls7`VZ3)#Fv=2%G;FMR+>vwyL4~^>*Ab-qrRV6)&qk*)wst%6cw%9p(_rfoVugC`~ z-TOC5mzvA5iYGUG29kFr?gFfrpTG?dv?#4ZN27biL0|=Ae?=oMTW;Md8m)>WE{bDv zfCNDBu2HJ$7QjvY3_cXZQ6b#P@K;nO0e2Y<@I*0ssh1GoiYYX*<44ho^5^0;Z9252 zF;Jybta5Z^Gw=?o0H?j1L;NKLTP&J*dvp3U1@E}_B@w$k>N@)u+8NX<$4iOM6nD+X z#^~;m0kgc&@vhr5(%FPZX?BT*rCDWuC;K5G0=8C2j8w{t%mQi9fNEbb3jZ1NU{M3vt41i=JR z_C$3)+qs^0R0e@yStPBBReC&h_;b(gi_VsG8X~uLb!+hFCj;kt`WjPj!v4ISOrqLD zn$r3d@~^!A{#R4rxEqdG;cqdQkR#fev>baEa0eIrORNM*uH9SsRowj}OPkPBIB@RA zv&to#v3FhDGdvUh9=07^&_i-H7T-|v%I?Wwao)X%N@FzXw(qT4kt7PFYauS4or#bg zsN2VPk%cVWd5kqNTG6zZU(#!c1bbffJfEJ9%)wx;r1>v(9~W~HZ=RB_U>S7xxbAvv SHK7Or1S~(JnBO;}UiudnnfZ|b literal 0 HcmV?d00001