
$@<-=q$N7A<0(J

$@<-=q$O!"(J

$@%X%C%@!<!"%3%a%s%H!"IJ;l%j%9%H!"IQEY!"IJ;l!"4A;z!"(J
$@EPO?2DG=7A<0%$%s%G%C%/%9(J1($@%F!<%V%k(J)$@!"(J
$@5UJQ49%$%s%G%C%/%9(J1($@FI$_(J)$@!"5UJQ49%$%s%G%C%/%9(J1($@4A;z(J)$@!"(J
$@%$%s%G%C%/%9(J2($@K\BN(J)$@!"5UJQ49%$%s%G%C%/%9(J2

$@$+$i$J$k!#(J

$@%$%s%G%C%/%9$K4X$9$k>pJs$O!"<-=q$N<oN`$K$h$C$FB8:_$7$?$j$7$J$+$C$?$j$9(J
$@$k$,!"B8:_$7$J$$$H$$$&$N$O!"%W%m%0%i%`$NCf$G$O!"B8:_$9$k$,Bg$-$5$,(J0$@$H(J
$@$7$F07$o$l$F$$$k!#(J

	$@$I$N7A<0$N<-=q$G!"$I$N%$%s%G%C%/%9ItJ,$rMQ$$$F$$$k$+!#(J

					$@8GDj(J	$@5UJQ49(J	$@EPO?(J

$@EPO?2DG=7A<0%$%s%G%C%/%9(J1($@%F!<%V%k(J)			$@!{(J
$@5UJQ49%$%s%G%C%/%9(J1($@FI$_(J)			$@!{(J	
$@5UJQ49%$%s%G%C%/%9(J1($@4A;z(J)			$@!{(J	
$@%$%s%G%C%/%9(J2($@K\BN(J)			$@!{(J		$@!{(J
$@5UJQ49%$%s%G%C%/%9(J2				$@!{(J	

$@!|%X%C%@(J
$@%X%C%@$O!"(J128$@%P%$%H$NBg$-$5$r;}$D!#$3$l$O!"%U%!%$%k$N%X%C%@(J
$@$KB3$$$FCV$+$l$k!#FbMF$O!"(J

syurui($@8GDj(J = 1$@!"EPO?(J = 2$@!"5UJQ49(J = 3)
maxcomment($@%3%a%s%H$ND9$5(J)
maxhinsi_list($@IJ;l%j%9%H$NBg$-$5(J)
maxserial($@%7%j%"%kHV9f$N:GBgCM(J)
maxkanji($@4A;zItJ,$ND9$5(J)
maxtable($@EPO?2DG=7A<0%$%s%G%C%/%9(J1$@$ND9$5(J = struct uind1 $@$N8D?t(J)
maxhontai($@%$%s%G%C%/%9(J2$@$ND9$5(J)
gosuu($@<-=q$N8l?t(J)
hpasswd($@<-=qFbIQEYItJ,$rJQ99$9$k$?$a$N%Q%9%o!<%I(J(WNN_PASSWD_LEN))
total($@%H!<%?%kIQEY(J($@L$;HMQ(J))
maxri1[D_YOMI]($@5UJQ49%$%s%G%C%/%9(J1($@FI$_(J)$@$ND9$5(J = struct rind1 $@$N8D?t(J)
maxri1[D_KANJI]($@5UJQ49%$%s%G%C%/%9(J1($@4A;z(J)$@$ND9$5(J = struct rind1 $@$N8D?t(J)
maxri2($@5UJQ49%$%s%G%C%/%9(J2$@$ND9$5(J = struct rind2 $@$N8D?t(J)
56$@%P%$%H(J $@L$;HMQNN0h(J(0)
  
$@%X%C%@!<ItJ,$r4^$a!"A4$F$NItJ,$N%P%$%H%*!<%@$O!"%S%C%0!&%$%s%G%#%"%s(J
(68000$@7O(J)$@$G$"$k!#(J

$@!|%3%a%s%H(J
maxcomment $@$NBg$-$5$N(J w_char $@$NG[Ns(J

$@!|IJ;l%j%9%H(J
maxhinsi $@$NBg$-$5$N(J w_char $@$NG[Ns!#<B:]$N(Jhinsi_node $@$N9=B$$O!"(J
$@<-=q$rFI$_9~$`;~$K:n$i$l$k!#(J

$@!|IQEY(J
maxserial $@$NBg$-$5$N(J unsigned char $@$NG[Ns(J

$@!|IJ;l(J
maxserial $@$NBg$-$5$N(J unsigned short $@$NG[Ns(J

$@!|4A;z(J
$@4A;z!"FI$_!"$*$h$S%3%a%s%H$N>pJs$r;}$D!#(J($@<-=q$N7A<0$K$h$j!";}$D>pJs$O0[$J$k!#(J)
$@2DJQD9$N%G!<%?!#(J(maxkanji $@$,Bg$-$5$rI=$7$F$$$k(J)
$@3F4A;z>pJs$O!"%o!<%I6-3&$K9g$C$F$$$kI,MW$,$"$k!#(J
$@F1$8FI$_$r;}$A!"%7%j%"%kHV9f$,O"B3$7$?%(%s%H%j$N4A;zItJ,$O!"O"B3$7$F$$$J(J
$@$/$F$O$J$i$J$$!#$=$N$?$a!"Nc$($P!"(Jforward $@$r9T$J$C$?;~!"(Jforward $@@h$N(J
$@4A;zItJ,$NA08e$N4A;zItJ,$KBP1~$9$k%7%j%"%kHV9f$,O"B3$7$J$$$h$&$K(J
$@$9$kI,MW$,$"$k!#(J

$@$3$NItJ,$N9=B$$O!">-MhE*$KJQ99$K$J$k2DG=@-$,$"$k!#(J
(bug $@$,62$/$FJQ99$7$?$$$,JQ99$,$G$-$J$$(J)

$@3F4A;z>pJs$N%G!<%?7A<0(J

$@D9$5(J(1$@%P%$%H(J) unsigned char $@$G$N4A;z>pJs$NBg$-$5!#(J
($@$9$J$o$A!"4A;z!"FI$_!"%3%a%s%H$r9g$o$;$F(J 256$@%P%$%H$N@)8B$,$"$k!#(J)

$@$3$N4A;z>pJs$N>uBV(Jstate(1$@%P%$%H(J)
	$@Bh(J0$@%S%C%H(J(HAS_YOMI) : $@FI$_$N>pJs$b;}$C$F$$$k$+$I$&$+!#(J
	$@Bh(J1$@%S%C%H(J(HAS_KANJI) : $@%3%a%s%H$N>pJs$b;}$C$F$$$k$+$I$&$+!#(J
	$@Bh(J2$@%S%C%H(J(FORWARDED) : $@%U%)%"%o!<%I$5$l$F$$$k$+$I$&$+!#(J
	$@Bh(J3-7$@%S%C%H(J : $@L$;HMQ(J

$@0J2<!"(Jstate $@$N>uBV$K1~$8$F!";D$j$N%G!<%?$N7A<0$r=R$Y$k!#(J

$@!}(Jstate & FORWARDED $@$,(J 0 $@$G$J$$;~(J
	$@$3$N8e$K!"(Jforward $@$5$l$?@h$NHVCO$,!"$3$N4A;z>pJs$N@hF,$+$i$N(J
$@AjBP$N?t;z$H$7$FCV$+$l$k!#$3$N?t;z$rI=$9$N$K!"(J4$@%P%$%HMQ$$$F$$$k!#(J
forward $@@h$O!">o$K!"8=:_$N4A;z>pJs$N0LCV$h$j@h$G$J$/$F$O$J$i$J$$!#(J
$@%o!<%I6-3&$N4X78>e!"(Jforward$@@h$NHVCO$O(J
$@@hF,$N(J 2 $@%P%$%H$,>e0L(J2$@%P%$%H!"<!$N(J2$@%P%$%H$,2<0L(J2$@%P%$%H$H$J$C$F$$$k!#(J
$@$9$J$o$A!"(Jkptr $@$,4A;z>pJs$N@hF,$X$N(J unsigned char $@$N%]%$%s%?$N;~!"(J
forward $@@h$N%"%I%l%9$O!"(J
	(*(w_char *)(kptr + 2)) << 16 | (*(w_char *)(kptr + 4))
$@$GF@$i$l$k!#(J
forward $@$O!"(Jcomment set $@$N$?$a$K!"4A;z>pJs$NFbMF$KJQ99$r<u$1!"(J
$@8=:_$N4A;z>pJs$NNN0h$K=q$-@Z$l$J$$;~$K!"MQ$$$i$l$k!#(J

$@!}(Jstate & FORWARDED $@$,(J 0 $@$G!"(Jstate & HAS_YOMI $@$,(J 0 $@$G$J$$$H$-!#(J
	$@$3$l$O!"5UJQ497A<0$N;~$N7A<0$G$"$k!#FI$_!"4A;z$,!"(J
$@FbIt(J UJIS $@$NJ8;zNs$H$7$FCV$+$l$k!#$^$?!"(Jstate & HAS_COMMENT $@$,(J 0 $@$G$J$$$H$-(J
$@$K$O!"%(%s%H%j$N%3%a%s%H$,FbIt(J UJIS $@$NJ8;zNs$H$7$F$3$N8e$KB3$/!#(J

$@!}(Jstate & FORWARDED $@$,(J 0 $@$G!"(Jstate & HAS_YOMI $@$,(J 0 $@$N$H$-!#(J
	$@$3$l$O!"EPO?2DG=7A<0!"8GDj7A<0$N>l9g$G$"$k!#4A;z$,(J
$@FbIt(J UJIS $@$NJ8;zNs$H$7$FCV$+$l$k!#$^$?!"(Jstate & HAS_COMMENT $@$,(J 0 $@$G$J$$$H$-(J
$@$K$O!"%(%s%H%j$N%3%a%s%H$,FbIt(J UJIS $@$NJ8;zNs$H$7$F$3$N8e$KB3$/!#(J

$@$J$*!"A4$F$NFbIt(J UJIS $@$NJ8;zNs$O!"(Jnull terminate $@$r$7$F$$$k!#(J

$@!|5UJQ497A<0$N%$%s%G%C%/%9!#(J
$@5UJQ497A<0$N%$%s%G%C%/%9$O!"(J
$@5UJQ49%$%s%G%C%/%9(J1($@FI$_(J)$@!"5UJQ49%$%s%G%C%/%9(J1($@4A;z(J)$@!"(J
$@5UJQ49%$%s%G%C%/%9(J2 $@$N(J 3$@$D$NItJ,$+$i$J$k!#(J

$@5UJQ49%$%s%G%C%/%9(J1($@FI$_(J)$@!"5UJQ49%$%s%G%C%/%9(J1($@4A;z(J)$@$O!"(Jstruct rind1 $@$N(J
$@G[Ns$G!"$=$l$>$l(J maxri1[D_YOMI]$@!"(Jmaxri1[D_KANJI] $@$NBg$-$5$r;}$D!#(J
$@5UJQ49%$%s%G%C%/%9(J2 $@$O!"(Jstruct rind2 $@$NG[Ns$G!"(Jmaxri2 $@$NBg$-$5$r;}$D!#(J

struct rind1 {
  int pter1;                    /* pointer to rind1 */
  int pter;                     /* pinter to rind2 */
};

struct rind2 {
  int next[2];                  /* pointer to rind2 */
  int kanjipter;
};

struct rind2 $@$O!"3F%(%s%H%j$rI=$7$F$$$k!#(J
$@5UJQ49%$%s%G%C%/%9(J2 $@$NCf$G$N(J struct rind2 $@$N%$%s%G%C%/%9$O!"$=$N(J
$@%(%s%H%j$N%7%j%"%kHV9f$rI=$7$F$$$k!#(Jnext[D_YOMI] $@$O(J
$@F1$8FI$_$r;}$D<!$N(J rind2 $@$N%$%s%G%C%/%9$r!"(Jnext[D_KANJI] $@$O(J
$@F1$84A;z$r;}$D<!$N(J rind2 $@$N%$%s%G%C%/%9$r;X$7$F$$$k!#$3$l$i$N(J
$@%$%s%G%C%/%9$N:G8e$O!"(JRD_ENDPTR = 0xffffffff $@$G$"$k!#(J

$@5UJQ49%$%s%G%C%/%9(J1($@FI$_(J)$@!"5UJQ49%$%s%G%C%/%9(J1($@4A;z(J)$@$N(J
struct rind1 $@$O!"$=$l$>$lF1$8FI$_!"F1$84A;z$N%(%s%H%j$N=89g$K(J
$@$rI=$7$F$$$k!#(Jpter $@$O!"$=$l$>$l$N(J struct rind1 $@$NI=$9FI$_!"4A;z$r;}$D@hF,$N(J
rind2 $@$N%$%s%G%C%/%9$G$"$k!#$^$?!"(Jpter1 $@$O!"$3$N(Jrind1 $@$NI=$9FI$_!"4A;z(J
$@$N:GD9ItJ,J8;zNs$r$"$i$o$9(J rind1 $@$N%$%s%G%C%/%9$G$"$k!#(J
$@ItJ,J8;zNs$N(J rind1 $@$,B8:_$7$J$$;~$K$O!"(J pter1 $@$NCM$O(J RD_ENDPTR $@$G$"$k!#(J

$@!t(Jrind1.pter1, rind1.pter, rind2.next[D_YOMI], rind2.next[D_KANJI]
$@!t$O!"A4$F(J int $@$G$"$k$,!"<-=q$N8l?t$r(J 65535 $@$^$G$K@)8B$9$k$J$i$P!"(J
$@!t$3$l$i$O(J unsigned short $@$G$h$$!#$3$NJQ99$r2C$($k$H!"<-=q$N%5%$%:$O(J
$@!tBgI}$K>.$5$/$J$k!#(J

