From 44bb28e50a54d2d1bcd3d2ee6c573418c68f11b7 Mon Sep 17 00:00:00 2001 From: Suikan <26223147+suikan4github@users.noreply.github.com> Date: Fri, 23 Jul 2021 08:17:47 +0900 Subject: [PATCH] Refine the INSTALL.md --- INSTALL.md | 35 ++++++++++++++++++----------------- image/an01_bios.png | Bin 5718 -> 0 bytes image/an01_efi.png | Bin 10519 -> 0 bytes image/an01_normal.png | Bin 7280 -> 0 bytes 4 files changed, 18 insertions(+), 17 deletions(-) delete mode 100755 image/an01_bios.png delete mode 100755 image/an01_efi.png delete mode 100755 image/an01_normal.png diff --git a/INSTALL.md b/INSTALL.md index 991dc4c..a4ef2d6 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -9,31 +9,32 @@ You can execute the install script without the command line parameter. For examp ```sh source ubuntu-kaiten-yaki.sh ``` -The first stage of the script is preparation like: erasing a disk, format partition, and encryption. This is the most critical stage of the entire installation process. This part is controlled by the configuration parameter. Thus, you have to edit the config.txt carefully. +The first stage of the script is preparation like: erasing a disk, format partition, and encryption. This is the most critical stage of the entire installation process. This part is controlled by the configuration parameter. Thus, you have to edit the config.sh carefully. In the second stage, the distribution-dependent GUI/TUI installer is invoked from the running script. That is the Ubiquity/void-installer of Ubuntu/Void Linux, respectively. -The third configure the target Linux system to decrypt the encrypted volume automatically, without prompting user to type passphrase. In this stage, Everything is automatic. +The third stage configures the target Linux system to decrypt the encrypted volume automatically, without prompting user to type passphrase. In this stage, Everything is automatic. # Installation Follow the steps below. ## Shell preparation -First of all, promote the shell to root. Almost of the procedure in the installation requires root privilege. Note that the scripts require Bash. +First of all, promote the shell to root. Kaiten-yaki script requires root permission to edit the storage device. Note that the scripts require Bash as shell. In the case of Ubuntu installation: -```bash +```sh # Promote to the root user sudo -i /bin/bash ``` In the case of Void Linux installation: -```bash +```sh +# Promote to the root user sudo -i /bin/bash xbps-install -Su xbps nano ``` -The nano is an editor package to configure the config.txt. The choice of editor is up to you. Kaiten-yaki script doesn't have a dependency on nano editor. +The nano is an editor package to configure the config.sh. The choice of editor is up to you. Kaiten-yaki script doesn't have a dependency on nano editor. And then, go to the kaiten-yaki/script directory. -```bash +```sh cd /the/downloaded/directory/kaiten-yaki/script ``` Now, ready to configure. @@ -43,13 +44,13 @@ This is a very critical part of the installation. The configuration parameters a Followings are the set of the default settings of the parameters : - Install to **/dev/sda** (DEV). - Do not erase the entire disk (ERASEALL). -- Overwrite install is disabled. +- Do not overwrite the existing logical volume (OVERWRITEINSTALL). - In the case of EFI firmware, 200MB is allocated to the EFI partition (EFISIZE). - Create a logical volume group named "vg1" in the encrypted volume (VGNAME) - Create a swap logical volume named "swap" in the "vg1". The size is 8GB (LVSWAPNAME,LVSWAPSIZE) - Create a logical volume named **"anko"** as root volume, in the "vg1". The size of the new volume is the **50%** of the free space (LVROOTNAME, LVROOTSIZE). -```bash +```sh # Configuration parameters for Kaiten-Yaki # Storage device to install the linux. @@ -120,11 +121,11 @@ And set the following parameters as same as the previous installation. - VGNAME - CRYPTPARTNAME -Kaiten-yaki will leave the "bad" logical volume and allow you to overwrite it by GUI/TUI installer. +Kaiten-yaki will leave the LUKS encrypted partition and allow you to overwrite the "bad" logical volume by GUI/TUI installer. ### About ITERTIME parameter This parameter is recommended to left as default value (=0), unless you understand what it mean well. -The ITERTIME parameter is passed as --iter-time parameter to the [cryptosetup command](https://man7.org/linux/man-pages/man8/cryptsetup.8.html), when script setup the LUKS crypto volume. +The ITERTIME parameter is passed as --iter-time parameter to the [cryptosetup command](https://man7.org/linux/man-pages/man8/cryptsetup.8.html), when script setup the LUKS crypto volume. See [AN03](https://github.com/suikan4github/kaiten-yaki/wiki/AN03:-The-ITERTIME-parameter-and-vulnerability) The unit of value is milliseconds. The target linux kernel may take this duration, to calculate a hash value from the given passphrase. You can change this duration through this parameter. @@ -134,15 +135,15 @@ The smaller value gives the weaker security. After you set the configuration parameters correctly, execute the following command from the shell. Again, you have to be promoted as the root user, and you have to use Bash. In the case of Ubuntu : -```bash +```sh source ubuntu-kaiten-yaki.sh ``` In the case of Void Linux -```bash +```sh source void-kaiten-yaki.sh ``` -After printing the configuration parameters, Kaiten-yaki will ask you to input a passphrase. This passphrase will be applied to the encryption of the LUKS volume. Make sure you use identical passphrases between all installations of the distributions in a computer. Otherwise, the install process terminates with an error, except the first distribution installation. +After printing the configuration parameters, Kaiten-yaki will prompt you to input a passphrase. This passphrase will be applied to the encryption of the LUKS volume. Make sure you use identical passphrases between all installations of the distributions in a computer. Otherwise, the install process terminates with an error, except the case of the ERASEALL configuration parameter is 1. ## Second stage : GUI/TUI installer After the first script finishes, the GUI/TUI installer starts automatically. Configure it as usual and run it. Ensure you map the following correctly. @@ -152,12 +153,12 @@ Target Directory | Host Volume | Comment / | /dev/mapper/vg1-ubuntu | Host volume name is up to your configuration parameter. swap | /dev/mapper/swap | Only the first distribution installation requires this mapping. -During the GUI/TUI installer copying files, Kaiten-yaki modifies the /etc/default/grub of the target system. This is the pretty dirty way. But if we don't modify this file, GUI/TUI installer fails at last. +During the GUI/TUI installer copying files, Kaiten-yaki modifies the /etc/default/grub of the target system. This is a pretty dirty way. But if we don't modify this file, GUI/TUI installer fails at last. ![Ubuntu Partitioning](image/ubuntu_partitioning.png) ![Void Partitioning](image/void_partitioning.png) -## Do not reboot +### Do not reboot At the end of the GUI/TUI installing, do not reboot the system. Click "Continue" and just exit the GUI/TUI installer without rebooting. Otherwise, we cannot finalize the entire installation process. ![Ubuntu done](image/ubuntu_done.png) @@ -166,7 +167,7 @@ At the end of the GUI/TUI installing, do not reboot the system. Click "Continue" ## Third stage: Finalizing After GUI/TUI installer quits without rebooting, the final part of the install process automatically starts. -In this section, Kaiten-yaki put the encryption key of the LUKS volume into the ramfs initial stage to allow the Linux kernel to decrypt the LUKS partition which contains root logical volume. Thus, the system will ask you passphrase only once when GRUB starts. +In this section, Kaiten-yaki put the encryption key of the LUKS volume into the initramfs image to allow the Linux kernel decrypting the LUKS partition which contains root logical volume. Thus, the system will ask you the passphrase only once when GRUB starts. You can reboot the system if you see the "Ready to reboot" message on the console. diff --git a/image/an01_bios.png b/image/an01_bios.png deleted file mode 100755 index 034f2e73da997a3690aa576240190a9a07c65bfd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5718 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%0A_51%_cT# z6}g&O8$HMay15{20yT@Qho=R>AK3ak*+Hj`;TQ;yr3cG(?9ZHB!*R}PekUu z?oR+^aUl!5)^r|;53%{OQNl?vE2rE5np@8|k=4&Lay(EnETBx{SE+H1I2M}3qOsu; z*4}|`focl%A&5zfS-@^0u*cpLI82dtmJBRF1~C=yh|l4tKj36B+DP%3*RK7&4yWjNvOCX@o(duv3Z2_}U-PLqeY1;hIoYG`8| zlB#c*#zGtD1<&S(<@%4R-OlIX;Ot3UEC_t*m8A5Z{4Y&P0TiJms6BENH1eLpJEpvb zvnr;cBFQ6t5bV*yo^|CL;MFH_BJ=*w_qoDl$%S=XtZfURS9sGbuxB;}#H`jSKCOMq z|3W?F&(m$6g-f%eBX+Or$i*#(Nad{aZ9{PmrB27ziO=WI`M=QdAIL_uPv=VyB|Jn9 zoE~2J5_gvU`mYsSQbGTtRs^QRjXn|W>C^3)^6B1#dUG3UyM-@<8Q;fB0{rqLaU|5Bmf(MI5Tt_NVmGE4G*ckC>yGLjT*?;itdQEPRw-dLLn;+aMIc+Vt z8IO5pGr@t5c?=6kCBDbhAP3wIHiirXWZ1AZ@im>;9Lbid_*>*A`wJ%-A!MstOk5?h zHD3or>dISC5biTW#=T*gV&>I@aP>x?-tKtFDc#Uwgm1H4H%yx};=6|9YBne7MEGMp2VeN!Jd#|4gI zGJ!Rcv4jAjw(E<*IIuTUZ5{*_b<&oMhgbz#pUYoDA<%m}MDEH7(zw%u%Z-yUi*4V}!oC7NJ5&JDGuiJ@s-rQYRdxb@-j9*yRn0HoH^Y&%8Nv)zntK z%bRSP*6&aHOVFPmTy7L9sdSlR9kn=jk^%X-{CDwoUGPBU|jn$Y(T-?MfMGanmwOX!t>{YZJ?7%;<@ ze2W+1(FxAx+`>)mH`sRWKnncndOYO8MFQItty5B^Qv&m1qeguIdWTvWG>d*HEr z2!E&>@+bzQ5c}-jzg9iyRosiu`lci9+J0W`5!m(}r69)Iq_u;* zO$7@}I(^fDtr&YLOqv@8RAN_pd64C4UYfEkr++z07K-&bOVe&3GZwNGJkmY{E?Hwj zTOxU4-tZCaX3f0`C;${fkziw7_EY z`u2#vCo#skEKFP|Ft?J9r`13V~l!B zQWt;t5b8D(O2{NOT8utVEkvzl3QI!e4cP;Qj?G4Dv(4p8aa|!5i)UIsJD-#+w`_LS z%j#{5oHNWfzB-?!okl%4j-80YL|mutW144HU*duijxD}t`Jj~FdF9&j9{&;Yl5VoY zrGqS}NeTW}VQp6txJUX zn4>E>W)htY@}G9X#v4GSq^)3`h-4(mHwpQ%?z8n!q;j}1H_SW9!yM$ia^(=dZ#1`g zhyGiTWa#e9re?U80K)+P#d>sb2T*-<>Jirx+o3{r`0d}u*5Y$m)pbhQ6(FcC!oMZP zt}`Za#dCgmiU3V-m=)Iy-tj5UF31@#nI{kgQ{JYVxsNmBDw;SHwihK`wtJg^S(2kV z(_Ekc{cU8plz!7?b&z`Va6p6hRYQxJsX$k}%E*_8V`=JVy-N}VE?_IF(is$TarO~E zYdVO)KMG7`B8!%-d8(J^gct&V*Zk%ta)kS(Dh^uWn8KRm1|BG#@5DN|RZt7y7e`g~P&Ik(sZ>AU5$9R&f;wKW({XkBOsKV# zE%Z9Z!uSU8<$Le=ozt?~Fd}&-+H0*Y%o+c-#ZH_$^;XzCdAldJ+Wlz(Lk|=+lAf+@ zxm*DNo9{Cedg$^8*CcBpywaJ%bRpyTz`^fAtw~c7?4A(71kAoXP!rE^nNuk33AeT_ z9)f}WkY{dfT;f3yL;z5IykGiEu?-!PyWtx+BVVIBBh&P(lw!2wk=_tJTB2VPKBA*W zQpws}Z>RRbg@Ff**lz1!_^=C;zOe5ULc0O-AJT^qYQtjLrh-JmZwD9X2Pa~ta3&h{ z@_11iA8!eSG~FVqZscN@J&mN@^OmIDSh~4LGR_RT(*u`Y=(ZNFs$~YY(0=N78UOR@ zEfb@JCDrlzN3rWa#J5PS6*W$IE zK0Nuy;O)(Cjt)CX{7XeB*Yy`#!v>`#&mk}T8dZJ*W|b}m3p};=mwY$%qNj##llA3q zm+3=9DvcU%0RZpPW>s4~UXk2maH}Qd+solb2@}P?17jkcbG6jGOs=(^3CN+ZZh}wY z#d8l!q0l_9Jh`)cEk$0X)mls>PD|u=X11xkc^&{%+r73RfP}I4YRq=P9gDPzjUu(u z4)o5LStbsdA759)4$L;Kok|EJXk``01+rHgFlo>yj&i?mK-M2ji6`O{*&Ahlq%aDW z@(`GmG>UyU8HDBU5i>PRU=(Qp)o5~tUj#!GA}eB@1KBYtU}FZy&C^l zeiFp86wwkHape-_Apm?~dT_CHNA2*&^OF*m@U_dpmhH@mv#?}Q_Z?nN0I*vaZ_z^@ zJmTq2&todohjp_prGMno+n3R6jY{5x@jQVTPYD4)=x6otCD~D1W2QcQmvyJ{@0`vn z6P?%Nbx(5yi%etCu>1!Az~{Q+{%eDZXCRT(s>w6;#P_r|vs53#0*&nk0bdk@(l^aN zb5}9)j}|1p1c7ntt;=Nu?|cBzSc(ret2?Xtr*R(ld%?g1P3Ta{GAl3pkIy>`XPEt? zbE2$<>ev7&I^}^coS?7yd(XjHZa%_@@~r%Wm%c1B4F)* z0$y#}AGEC)T?K&V=@z>0LQtHkAQ5ik41BRJZuz@%KzWu_kyRNkZfE{(;9{BqEoOtEfnk$Ny z;vGkpJ9jphzG%~W-K&u8`QYOT+Q$CNN3I1vPH*W z0Ki|rfxQpx+G70)&~b8OJ^)+|2dsdw}7HXE~w@^S(f)M z@w19`+EIjdhB2fJ)#!McvFIXJJ%-Y-C+qIIN4@^}9i%Sn2uZY}46pctRKhf9iimF9 z&k=mmx4!qB_FZzo^jJ?f~I2~d{J5hm7!&3buw2q zLUR-sW_uz`U#<;tBzTTS>bk}BCGShQ z8(BXTT75LUGmR6rX;rJwNW=&B4qQZ~hhuOBVkC{J<6Rs^DT)M8XZlfvop8tLZjOXZYUI66roBg(dRh+Tjm$0(AC3l<#8<|J>Jx5dPs43SWyu9)j2iCCx0o7dkRVK1h;A{2}z3BPVEkIodz3zFiGGCJ)jmP7SE zw%S`4BSE3@+!l*9e0gm`d2RKE$ZO5arOGOq=r#M7g_ebYW<@{};S8xTZY$~gr*RQ8 zb#jL-**~)l>~B?@g$qu;^)*z>E5rEfLTu|K!HvIDz_^k0bkHcd9@a|}{nCH`94*}u zSzkc7S5sfKO;{6OQ~rFkb$PWDENq9nkb!FN&;{bENaWbR{y=ZE=5 zCv(S=>FiQu12%WWdpBY}O3-lHC97EcyL9+do~X4xRqj)z43;`I^B6_Eby(VC)1}-G zf=3+tJg9x95DmK1Jw)z-S2{1GH|=ylI*Jrmg9#7m(a)+%V8;A{W<^xY+gzr&Dx?@!~T{Utn)ZkhA^(btXFTGkUnIlhc)$(_{urrP4% zqX?^Hu^M1|#Gy<4bBp&#&A(%C!E zmRUUAXeKw3AdNpu%?oCakx?%)h!63%Z0Ejgtbv3AG&xX!FfZKV&Hh`S>ux!GXl|(zI!ezOE`SD!lFNhZz!o3Rh%qDj!G2b0;fp3{6c7 z=B?b78O1HTVr&<>IyQmZ;n^tG|cY8EogpRbq#nelrj#>Cv3WV)q9-HO3EqLNU> z{N_=zq^2tsJ(qsFvTbkF*mm)5;(*JJ!)2(3Yl7njEsr%yW(Ls> znY71wsku#^oN8s=UdydwL!+CTAj>3-IEe?6d-S_T<5|<`Oo?t53=WK1ME2a?cf}Gz zgb+O)P1kEV)%FE$xI+6UM`?jc^e% zu#%IcBJ0bvlvlRYE%P(Wvpx{hv0OYx)xUrE=;EZxUJ6^8cFZ=PtDi^JQkA7t2mPjZ zK{$8i2Y-skh7lU97k(~pXkARH@9E`F=LfLtBolYO2Yo(do@+K~o~ljHbYl_xVtHST zZ&SajM2(*JF-MxYY3Jiq(H3w0NH%~t9OK(nN9}t znK%+^J#M_h!pI$Gn|w<8G5u`;R3%;XTbH`@27$p~%Q$zLK~U@v zIce1+^Xa|??{i~P<7rAz==iKJZ&Y7dt~p9!>k(pdbt}189lR*^Cw_|oV+d)k%X9Vw zWv~NxsD!_%HLPJ%RgELEZaV4!p(5g(NZCs7QtuDkH=y7LUsz&Wn`sask-$`4{*{C%i!RVk~X1ef{=nPv+~C0Uwn)8|Hsdc0)>Av994tGR>c?;W+N{obcAS5{(^&rMG8h6asp6Gl zqRVLSK>8kIuF)*-wodrm{Vw<+XSz%`tFOXq;1#HxjQMTCPdP&2D6QZ00b2&2qoX(S z%QS7<_`Aab>N7r5Rq@R)^aC1}FzaXkewAaDqH*efx!B7EuzMC<;?!BPA@4jG&NdK~ z*|nLM0;KN3SE0V}PiZ0+{g^AGjbW)7LVu*#HP@}Cr)v!lmk)5aG*JjW+CN>zfmG-l z&-5p4%e+K}^9j|F2g z(ISt*L?B1p1v0d>lqOm(7T+s#ibY zxLnfQh&SJH^uDwA^d1_%O*qHhmlXz7Yyy@uQ+!ZNs}s4JG?M zuOta?!F6J1Ke{>(5U8)9jBdhm#JchKU@+il_Bv}EI~CjUBiR#mhrVJ$og5PJXa-Q_*H{agiH zm$zFLj--0*z?*-~HUawjGo<$(NkEzUry4nF^f}+jT5#-w;5nc58O2+!Yqp2ANSmw^ z+7-o4*?7FU#$;4;4f+_Iixq5Ul9dkwzNiAg8qhPEh`1|dMNx(Z(H1O%YEddgJ*s|? z)r(Dz2PBH^mJfOd522N^`o~@5pwLc~gR@T2>2#CSH>zj0hZH@X)gDKqdPoP}vRc!1 zUkEI$QzO zDT=D2fZqBaE!n`k!L59E5=hv+`YRy6d&mFyMop&m1dU`ikfmd6bsYy zok*bKxR|l=VgVdTV7v;lqF9B)tbpFL&uFmkS6TsH%gb;li(c_6FXQF0f`;LEeEf@G z@nBXl|ANFZCJ9m3De!zN)l!OH6)~8Tr|4>J?unCNR~99LCAwq!Kx?1OdoLgL!?J&V z>sMXD-$?Gt&?8QHiG+tzePBZ-hpxx94N0Hd(R4Q2tTB&Kyaur>ReuWc^IJ?Vf3V(b zk}|UvXw*MNbVP0Z%ge%Tw@b&b8=TZbzt>KU;Q=7&9=N4r=jw~zn^K|*WTwe<#Mg1~ zzuox=5FUyH`eQ)TuepaSqJWgLX5f1e1~lIK6$oh4yQ;U%Y^bcX)H3Aj0F*{g`|&T~ zg+r5)T%2Dyq3hqu;t*z*GmPq3pO#4s$-q zuclW4jfA^EucVy6<_jR-OJZLCgG<_-j;|Y50TPvs6HM?u*i9}bq$QTtr;J&~xePgqOcn4g|WF6$FxcmTkiTC#fNZYH+Azmq@X zV8f};#TXG=J20(F=uDAu`+rQk0ly2cB)(&P`tnaF{yv|wl<-SBEMp5*xaD*tq- z`pLo9b(DtB&F}V?gfRrIIbMeLmEQ6@UFq>6^F;&F_gpum>PPxbbN0ff#Md|BO-ryh zbt0Sm+u6^f&#F2Lgoft4^SLQXyY;ey z-ObW^WnVRuvH6u)Jb&4IBDH>-O2J(5W-ZnH@xg$~g((RN+u7ItG=?lflb#(H35NLD zpPB7M4*4=iS3q{}{LqJA6!cV=o$pn=mt7<^lEy~0jajb;;JPzfh41bxaPiIZE|v~+$leMVQoUSJEyWGo&D)W)>#`qF0XE^5iehrpMB)5A;m*<{K=cT z$v3Y}=n*H8vy$(|}C9z1Xb`^)0eTHJmT3GPw1@&$OiuoGo^h%@7(aD%Rc#4AAGkih87PVQIVCq2EBD7=+Bla4Z_L! z%Y3hR_4-F^E>va|<-YX0j{+yruSug~kvfG4Wk3;f#jN^bH7JOtIin*4aIy~rQhCQT z@Vwa9np-s3d36V?7w<)@C<{bSj`}RDvz}MOEk@&wjN&QVtGN-~wtox;UthlXI4qos zDj4_L&8g&4;#jt589BuX+76=#p4=4d(3a*QX)du0J_GhePt4 z&gWv|TP<;O_A!~Fyynf9x%c*FQ;J3B!YbMNDF0iQ=X2!>W*a(B6OdiWeYD5YrDhom z9~1Iu(Ma>ctN{4An(V#Aa=%thPQI%;2<}DlsEd8ecxC5o) zPM{0Vxy943KN*w^Gz)7sDQ`R43VBrC+R)Z%b7a9Bc-?gAvJLK>6oq_tDixeH)*mOs6Cvk=C^Yo(#|vmW)+hmD ztl=ogSsc~VW6~1|eI=aZ^IYt?NS@;sK|0m)!Nf7!uUcDV=`3ceEGLsDVTgzqnK*<7 zi7x9bLrEsvV~b@&a^fCyaneJXZU$dg436XTLgwk^PYybjbUt>ATOrI|3tztYOV5Qk z`263w4J9+ZzQHuGNQmYRZZX(mX|sIIf^U$xOPl$0NbQ{FU@2&=f1?Ev0!)*9RZS=tC2z7 z>Zo2)NH0?zH5D6cQ<}~I854H|gIQe-8Avq6FS0g?5)BzDxXz`cYdZ(uCg_5=DTAWH zH?1~lN*(M_)s>D{2D0r%lRDnglp5Px?fXsTLz|jN{)cpZXv2OqC2}nU2p2)6(Ps`P z8f|1Ql_TG2cf5N4n1^wZhe^fs#U0>2&Qs_gU3((bV+ogt1Ri60lQ>jOu2#S7UXnxx z6r;k8JDE1?lh9x!Qp!3RimF$4(S9^MuJMQ+_u-zH3TQU^SO9x%BX^}0ruqA)*G&WO z0a5C;6Cv6@!+iFM%1WAoUXdhs%J+H~MP<$jf0Amw&XBQYbmI##`+sJ`XX6v?x7ZQ2 ztCYz;A;1K83}U*C4%HKv5XI!;$&{~;^2OWa(e{_MrxBvffc^_7Sk&C4N<{t&NC zhz0@bgSV3L z_dZ$z3^=`aS^#`$1r7O7sYy%9ad~=zapZO`a*?)DDt7a82{8ozgF8F69cUhkz z0ziA`3+suIPSmAra58)c^f=ayW}y9neg%-z=CY>4mCXHE+?EG)lm(iT6Mi2=RR3Aj zv7&o2Q;9%+&D%lJj{O}5?3!7k=7;_!!e9IV$S1Ti&?L##R47qt5iOG5-wGt` z`*$LsDS(zsLHnBvPTA*Txf4oB?`+_lG0ppNs7)#zD9;2sP8*|j zT7^s@*VTcf-z=a)@v!OeU-Jf^WzCDuuA_Uhp{hfCiI}zrpBt(SR_XD|uxI?JovF5` zP-B(MQHX%uGSBV(*k9)&91Y>wCQlK6_8YHO-g%97K&3FXleWm2VMw+fk%uqxzoZQ@_s)$F7eQ{_KbpB&qo49kX65JLO?+~cL!9&sg&y5 z8MQ10aX@&Bw5P^vIyc6kg{;^=OG=L?XSNPhXuHMP z;!I+OMfmP=($K6?`$BPpB{;&TwjdW!c4ay@ZEFPDoa2}pTKUWn8l?8hH+*yM6|-@E z)|iJiiQ+#AL7l8WGLsf~mYxTSM~w%>WdaXT3{sP_{JT~?BpR<2dUpDOlj@+~JbsMr z3O2^4r%7`t-yNnSHi@<7#Ho7&nIVPS>2$$!sBM+*vX&@&EJtsH-=TMn(?Z9q(90s8 zsUX_5#09whu}2{)7uMbC)D7p!`3(JnVH%I&1}*4LPWi<2R%neKn4Bg+f>)ah8sihB zkBMAjZeu3#xXhRnUpHcd)@d~a$f}&!paM!ZWa)yhq~7FmYGn!!)H$S3eimoa)#YJ& z2lSY0)aq&xal2ec#JNf5MGR^HMo@uc2M56oibAyK%kc*^THb4fj1=@s@3iGtYLq%tbd6f?+w# z>NT@b9#*ynf{!h?&v2^Gma$H>7(g_aeihp*xgU#3?^6@XQNorW{S_Kv)gx_RDVh7& zBwGCh1?PDDu$EY+>AB^Ba;jIh{#6Z8C19CR{ck1RcpYTCth>EL1fUIF;uGcK+ceYP zdSTW!HF>5yDeZVElY^X$t)6SB49oj1 z+O$IfDt05YW>;53PgSL>d_!JhTi08kG?LFn_S)e#R{2hQR?T4_$e$Sw(1zU?ICrG) z0mk?^pgHX|_O~~u!kl^-3=iOsrA+S1E9}-wh6~?>7QYXSFFv=PK;lY21abzUIc4JJyUJ-2@i1uC{%tEB^*)4FumA`zbSOb9Kx6w=zzjN$$ z=K8^ch=-8f3|0@{-ivUB;>Z!>>_9D6J(C9{lnM*TZy*U5vUk@uJW^)VGOeTP-+x z7}#|+YGZ!b7MJ&8@;0tds`CKapEq$={`&pNYo-AnQD_TD(R0~A=?m-c6l3=%;vOiW zE&-wM96!>kkN#x*Xfoj|ZjdfdD7jx9$;iv3U|FE9wj*mcN|*76~)o6Z z)4=v-)?Cr}27kG@U>yC(mYBklRfL3_d$ZF)G^EtZN9VtUB+Tu z(@zstg3ct3j_wn!km zY95OAG7jN5i#g=3>E6Aqq5Y!MB)n#Ymzxx7){_EMr7F}*2pia0>r!+o53Qi|_q>Va$=XtAnC*}rN$J^nH_uS~NFd?1Ef zxqH;A@2uwXw5HU4r(NWz+?B6UB3a$ovM*wM284O#fRF|U=J%SM{sy_LMUZ>)PXiT{ z2!I)X4jo6|;P{Zk=u5SPeR3h&0vyZ8x&*tKUDTPSWF_59GfCbHqE>c8kmZ_<8{J7S#V^6^{S!{?V7DWwB+|*~H{GUkq=( R06?E_gAX65|0dyY{|&1t5widQ diff --git a/image/an01_normal.png b/image/an01_normal.png deleted file mode 100755 index a90c26f994168e5ec5efb5d569155467c99f2955..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7280 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 bRmC=BcfY|(Y2n%?5jgAY;Z$?-!p;8y(+Fdk