$BBh(B6$B2s(B $B1i=,LdBj!!4p?tC5:wLZ-6(B: MPTrie

$B"#(B $B6&DL(B
$B $B!!(Bhardware: $BB_M?$5$l$?(BnotePC(4$BG/@8!"G$0U$N(BPC or WS$B!"@-G=5-:\$NI,MW$,$"$k(B)
$B!!(BOS: linux($B;~4VE*M>M5$,$"$l$P(Bwindows7)
$BB,Dj;~$O!"Ev3:%W%m%0%i%`0J30$N%W%m%0%i%`$O$G$-$k$@$1:o8:$9$k(B

$B:n@.:Q$_(B6a$B!!(BMPTrie(26$B?J(B)$B!!A`:n(B($B=d2s(B)$B4X?t$N:n@.!!!!Fq0WEY(B: B
$B:n@.4X?t(B: $B!!!!>:=g=PNO!"LZ$N>C5n(B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat

$B:n@.:Q$_(B6b$B!!(BMPTrie(26$B?J(B)$B!!:o=|4X?t!!!!Fq0WEY(B: A
$B:n@.4X?t(B: $B!!!!:o=|4X?t(B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat

6c$B!!ItJ,0lCWJ8;zNs$NC5:w4X?t$NHf3S(B($BG[Ns!>FsJ,C5:w$H(BMPTrie(26$B?J(B)$B!!!!Fq0WEY(B: A
$B:n@.4X?t(B: $B!!!!ItJ,0lCWJ8;zNs$NC5:w4X?t(B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat
$B!&FsJ,C5:wK!$r2~NI$7!"A0J}0lCW(B($BNc(B: info?)$B$r $B!&G$0U$NItJ,J8;z=89g(B($BD9$5(B=3$B$r(B50$B!"D9$5(B=4$B$r(B50)$B$KBP$7!"$=$l$>$l$K$D$$$F0J2<$N9`L\$r7W$k!#(B $BAmHf3S(B($B>H9g(B)$B2s?t!"Am=PNOMQ8l?t!"Am=PNO;~4V(B
$B$3$l$i$N7k2L$r!"I=!"%0%i%U$KI=$7!"J,@O$9$k!#(B

>6d$B!!(BTrie(26$B?J(B)$B$H(BMPTrie(26$B?J(B)$B$NHf3S(B($B9=C[!"C5:w(B)$B!!!!Fq0WEY(B: B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat
$B!!>e5-%U%!%$%k$rFI$_9~$_!"DL>o$NG[Ns$K3JG<$9$k!#(BTrie(26$B?J(B)$B$*$h$S(BMPTrie(26$B?J(B)$B$r@8@.$9$k!#$3$N$H$-!"$3$NG[Ns$+$iMWAG$r(B1$BK|MQ8lC10L$G!"FbIt@aAm?t!"9=C[;~4V$r7WB,$9$k!#(B
------------------------------------------------------------
Trie(26$B?J(B)$B!!@8@.(B
$B!!!!!!!!!!!!FbIt@aAm?t(B $B9=C[;~4V(B
$B!!(B 1$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B10$BK|MWAG!!(B ****$B!!!!!!!!(B****
MPTrie(26$B?J(B)$B!!@8@.(B
$B!!!!!!!!!!!!FbIt@aAm?t(B $B9=C[;~4V(B
$B!!(B 1$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B10$BK|MWAG!!(B ****$B!!!!!!!!(B****
------------------------------------------------------------
$B$l$KBP$7$F!"AmC5:w$r$9$k!#(B $B!!3JG<$5$l$?MWAG$HF10l$NMWAG=89g(B($BG[Ns(B)$B$G$=$l$>$l$N%G!<%?9=B$$KBP$7$F!"A4C5:w$r9T$$!"$3$N$H$-!"$3$NG[Ns$+$iMWAG$r(B1$BK|MQ8lC10L$G!"C)$C$?FbIt@aAm?t!"C5:w;~4V$r7WB,$9$k!#(B
------------------------------------------------------------
Trie(26$B?J(B)$B!!C5:w(B
$B!!!!!!!!!!!!FbIt@aAm?t(B $B9=C[;~4V(B
$B!!(B 1$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B10$BK|MWAG!!(B ****$B!!!!!!!!(B****
MPTrie(26$B?J(B)$B!!C5:w(B
$B!!!!!!!!!!!!FbIt@aAm?t(B $B9=C[;~4V(B
$B!!(B 1$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B ****$B!!!!!!!!(B****
$B!!(B10$BK|MWAG!!(B ****$B!!!!!!!!(B****
------------------------------------------------------------
$B!!>e5-%G!<%?$r(Bexcel$B$K3JG<$7!"I=!"%0%i%U$r:n@.$7!"M}O@CM$HHf3S!"J,@O$9$k!#(B

$B:n@.:Q$_(B6e$B!!(BTrie(2$B?J(B)$B$H(BMPTrie(2$B?J(B)$B$NHf3S(B($BC5:w(B−$B;~4V(B)$B!!!!Fq0WEY(B: B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat
$B!!>e5-%U%!%$%k$rFI$_9~$_!"DL>o$NG[Ns$K3JG<$9$k!#$3$NG[Ns$+$iMWAG$r(B1$BK|MQ8lC10L$K$G!"(BTrie(2$B?J(B)$B$*$h$S(BMPTrie(2$B?J(B)$B$r@8@.$9$k!#3JG<$5$l$?MWAG$HF10l$NMWAG=89g$G$=$l$>$l$N%G!<%?9=B$$KBP$7$F!"A4C5:w$r9T$$!"C5:w;~4V$rB,Dj$9$k!#(B
------------------------------------------------------------
$B!!!!!!!!!!!!(BTrie(2$B?J(B)$B!!!!!!!!!!!!(B MPTrie(2$B?J(B) $B!!!!!!!!!!!!(Bnode$B?t(B $BC5:w;~4V!!!!(B node$B?t!!C5:w;~4V(B $B!!(B 1$BK|MWAG!!(B ****$B!!!!!!!!(B****$B!!!!!!!!(B****$B!!!!!!!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B ****$B!!!!!!!!(B****$B!!!!!!!!(B****$B!!!!!!!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B ****$B!!!!!!!!(B****$B!!!!!!!!(B****$B!!!!!!!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B ****$B!!!!!!!!(B****$B!!!!!!!!(B****$B!!!!!!!!!!!!(B****
$B!!(B10$BK|MWAG!!(B ****$B!!!!!!!!(B****$B!!!!!!!!(B****$B!!!!!!!!!!!!(B****
------------------------------------------------------------
*node$B?t(B $BC)$C$?%N!<%I?t(B

$B!!>e5-%G!<%?$r(Bexcel($B$^$?$O8_49%=%U%H%&%(%"(B)$B$K3JG<$7!"I=!"%0%i%U$r:n@.$7!"M}O@CM$HHf3S!"J,@O$9$k!#(B

6f$B!!(BTrie(26$B?J(B)$B$H(BMPTrie(26$B?J(B)$B$NHf3S(B($B@8@.(B−$B5-21MFNL(B)$B!!!!Fq0WEY(B: B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat
$B!!>e5-%U%!%$%k$rFI$_9~$_!"G[Ns(B($BJ8;zNs%]%$%s%?! ------------------------------------------------------------
$B!!!!!!!!!!!!(BTrie(26$B?J(B)$B!!!!!!(B
$B!!!!!!!!!!!!FbIt@a!!9=C[;~4V(B
$B!!(B 1$BK|MWAG!!(B****$B!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B****$B!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B****$B!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B****$B!!!!!!(B****
$B!!(B10$BK|MWAG!!(B****$B!!!!!!(B****

$B!!!!!!!!!!!!!!!!(BMPTrie(26$B?J(B)$B!!!!!!(B
$B!!!!!!!!!!!!FbIt@a!!9=C[;~4V(B
$B!!(B 1$BK|MWAG!!(B****$B!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B****$B!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B****$B!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B****$B!!!!!!(B****
$B!!(B10$BK|MWAG!!(B****$B!!!!!!(B****
------------------------------------------------------------
$B!!>e5-%G!<%?$r(Bexcel($B$^$?$O8_49%=%U%H%&%(%"(B)$B$K3JG<$7I=$r:n@.$9$k!#$3$NI=$+$i%0%i%U$r:n@.$7!"M}O@CM$HHf3S$7J,@O$9$k!#(B

6g$B!!(BTrie(2$B?J(B)$B$H(BMPTrie(2$B?J(B)$B$NHf3S(B($B@8@.(B−$B5-21MFNL(B)$B!!!!Fq0WEY(B: B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat
$B!!>e5-%U%!%$%k$rFI$_9~$_!"(BTrie(2$B?J(B)$B$*$h$S(BMPTrie(2$B?J(B)$B$r@8@.$9$k!#$=$N:]!"(B1$BK|%l%3!<%IC10L$G$N3JG<$5$l$?MWAG$HF10l$NMWAG=89g$G$=$l$>$l$N%G!<%?9=B$$KBP$7$F!"A4C5:w$r9T$$!"C5:w;~4V$rB,Dj$9$k!#(B
------------------------------------------------------------
$B9=C[;~(B: $BFbIt@a?t(B
$B!!!!!!!!!!!!(BTrie(2$B?J(B)$B!!(BMPTrie(2$B?J(B)
$B!!(B 1$BK|MWAG!!(B****$B!!!!!!!!!!(B****
$B!!(B 2$BK|MWAG!!(B****$B!!!!!!!!!!(B****
$B!!(B 3$BK|MWAG!!(B****$B!!!!!!!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B****$B!!!!!!!!!!(B****
$B!!(B10$BK|MWAG!!(B****$B!!!!!!!!!!(B****
------------------------------------------------------------
------------------------------------------------------------
$BC5:w;~(B
$B!!!!!!(BTrie(2$B?J(B)$B!!!!!!!!(BMPTrie(2$B?J(B)
$B!!!!!!!!!!!!Hf3S2s?t!!;~4V!!!!Hf3S2s?t!";~4V(B
$B!!(B 1$BK|MWAG!!(B****$B!!!!!!(B****$B!!!!(B****$B!!!!(B****
$B!!(B 2$BK|MWAG!!(B****$B!!!!!!(B****$B!!!!(B****$B!!!!(B****
$B!!(B 3$BK|MWAG!!(B****$B!!!!!!(B****$B!!!!(B****$B!!!!(B****
$B!!!!!!!&!&!&!&!&(B
$B!!!!!!!&!&!&!&!&(B
$B!!(B 9$BK|MWAG!!(B****$B!!!!!!(B****$B!!!!(B****$B!!!!(B****
$B!!(B10$BK|MWAG!!(B****$B!!!!!!(B****$B!!!!(B****$B!!!!(B****
------------------------------------------------------------
$B!!>e5-%G!<%?$r(Bexcel($B$^$?$O8_49%=%U%H%&%(%"(B)$B$K3JG
6i$B!!(BMPTrie(26$B?J(B)$B$G$N5<;w@55,I=8=C5:w4X?t$N:n@.!!!!Fq0WEY(B: A
$B:n@.4X?t(B: $B!!!!3JG$B5<;w@55,I=8=C5:w4X?t(B$B!"%a%$%s4X?t(B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat

$B!!>e5-%U%!%$%k$rFI$_9~$_!"(BTrie(26$B?J(B)$B$r@8@.$9$k!#(B10$B8D$N0[$J$C$?5<;w@55,I=8=J8;zNs$rJ8;zNsG[Ns$K3JG<$7!"5<;w@55,I=8=C5:w4X?t(B($B=d2s4X?t$N3HD%(B)$B$r9T$$!"8D!9$N5<;w@55,I=8=%Q%?!<%sKh$K!"$3$l$r4^$`C18l$r=PNO$9$k(B(1$B5<;w@55,I=8=J8;zNsKh$K!"J#?t$NC18l$,=PNO$5$l$k$O$:$G$"$k(B)$B!#(B1$BC5:wKh$N;~4V$rB,Dj$9$k(B($BA4$F$N%Q%?!<%s$K$D$$$F!"$=$l$>$lA4%N!<%I$N=d2s$r9T$&$N$G!"$[$H$s$IF1$8C5:w;~4V$K$J$k$O$:$G$"$k(B)$B!"%l%]!<%H$H$7$F$O!":n@.$7$?5<;w@55,I=8=C5:w4X?t$N%"%k%4%j%:%`$H4X?t$N@bL@!"$*$h$S

6j$B!!(BMPTrie(2$B?J(B)$B$G$N5<;w@55,I=8=C5:w4X?t$N:n@.!!!!Fq0WEY(B: A+
$B:n@.4X?t(B: $B!!!!3JG$B5<;w@55,I=8=C5:w4X?t(B$B!"%a%$%s4X?t(B
$B!!%-!<(B: $B!!!!J8;zNs(B
$B!!;HMQ%U%!%$%k(B: wordE100KR.dat

$B!!>e5-%U%!%$%k$rFI$_9~$_!"(BTrie(26$B?J(B)$B$r@8@.$9$k!#(B10$B8D$N0[$J$C$?5<;w@55,I=8=J8;zNs$rJ8;zNsG[Ns$K3JG<$7!"5<;w@55,I=8=C5:w4X?t(B($B=d2s4X?t$N3HD%(B)$B$r9T$$!"8D!9$N5<;w@55,I=8=%Q%?!<%sKh$K!"$3$l$r4^$`C18l$r=PNO$9$k(B(1$B5<;w@55,I=8=J8;zNsKh$K!"J#?t$NC18l$,=PNO$5$l$k$O$:$G$"$k(B)$B!#(B1$BC5:wKh$N;~4V$rB,Dj$9$k(B($BA4$F$N%Q%?!<%s$K$D$$$F!"$=$l$>$lA4%N!<%I$N=d2s$r9T$&$N$G!"$[$H$s$IF1$8C5:w;~4V$K$J$k$O$:$G$"$k(B)$B!"%l%]!<%H$H$7$F$O!":n@.$7$?5<;w@55,I=8=C5:w4X?t$N%"%k%4%j%:%`$H4X?t$N@bL@!"$*$h$S