MOVE_CUR	ptree.current_move[ply]

BB_BKING            data.abb_mask[ptree.posi.isquare_b_king]
BB_WKING            data.abb_mask[ptree.posi.isquare_w_king]

SQ_BKING            ptree.posi.isquare_b_king
SQ_WKING            ptree.posi.isquare_w_king

MOVE_CURR           ptree.current_move[ply]

BB_WOCCUPY          ptree.posi.w_occupied

BB_W_BH             ptree.posi.w_bh
BB_W_RD             ptree.posi.w_rd


BB_WLANCE           ptree.posi.w_lance

OCCUPIED_FILE       ptree.posi.occupied_rl90
OCCUPIED_DIAG1      ptree.posi.occupied_rr45
OCCUPIED_DIAG2      ptree.posi.occupied_rl45
BOARD               ptree.posi.asquare

MATERIAL            ptree.posi.material
HAND_B              ptree.posi.hand_black
HAND_W              ptree.posi.hand_white

BB_BOCCUPY          ptree.posi.b_occupied
BB_BTGOLD           ptree.posi.b_tgold
BB_B_HDK            ptree.posi.b_hdk
BB_B_BH             ptree.posi.b_bh
BB_B_RD             ptree.posi.b_rd
BB_BPAWN_ATK        ptree.posi.b_pawn_attacks
BB_BPAWN            ptree.posi.b_pawn
BB_BLANCE           ptree.posi.b_lance
BB_BKNIGHT          ptree.posi.b_knight
BB_BSILVER          ptree.posi.b_silver
BB_BGOLD            ptree.posi.b_gold
BB_BBISHOP          ptree.posi.b_bishop
BB_BROOK            ptree.posi.b_rook
BB_BKING            abb_mask[ptree.posi.isquare_b_king]
BB_BPRO_PAWN        ptree.posi.b_pro_pawn
BB_BPRO_LANCE       ptree.posi.b_pro_lance
BB_BPRO_KNIGHT      ptree.posi.b_pro_knight
BB_BPRO_SILVER      ptree.posi.b_pro_silver
BB_BHORSE           ptree.posi.b_horse
BB_BDRAGON          ptree.posi.b_dragon


BB_WOCCUPY          ptree.posi.w_occupied
BB_WTGOLD           ptree.posi.w_tgold
BB_W_HDK            ptree.posi.w_hdk
BB_W_BH             ptree.posi.w_bh
BB_W_RD             ptree.posi.w_rd
BB_WPAWN_ATK        ptree.posi.w_pawn_attacks
BB_WPAWN            ptree.posi.w_pawn
BB_WLANCE           ptree.posi.w_lance
BB_WKNIGHT          ptree.posi.w_knight
BB_WSILVER          ptree.posi.w_silver
BB_WGOLD            ptree.posi.w_gold
BB_WBISHOP          ptree.posi.w_bishop
BB_WROOK            ptree.posi.w_rook
BB_WKING            abb_mask[ptree.posi.isquare_w_king]
BB_WPRO_PAWN        ptree.posi.w_pro_pawn
BB_WPRO_LANCE       ptree.posi.w_pro_lance
BB_WPRO_KNIGHT      ptree.posi.w_pro_knight
BB_WPRO_SILVER      ptree.posi.w_pro_silver
BB_WHORSE           ptree.posi.w_horse
BB_WDRAGON          ptree.posi.w_dragon

MT_CAP_PAWN       data.p_value_ex[ 15 + def.pawn ]
MT_CAP_LANCE      data.p_value_ex[ 15 + def.lance ]
MT_CAP_KNIGHT     data.p_value_ex[ 15 + def.knight ]
MT_CAP_SILVER     data.p_value_ex[ 15 + def.silver ]
MT_CAP_GOLD       data.p_value_ex[ 15 + def.gold ]
MT_CAP_BISHOP     data.p_value_ex[ 15 + def.bishop ]
MT_CAP_ROOK       data.p_value_ex[ 15 + def.rook ]
MT_CAP_PRO_PAWN   data.p_value_ex[ 15 + def.pro_pawn ]
MT_CAP_PRO_LANCE  data.p_value_ex[ 15 + def.pro_lance ]
MT_CAP_PRO_KNIGHT data.p_value_ex[ 15 + def.pro_knight ]
MT_CAP_PRO_SILVER data.p_value_ex[ 15 + def.pro_silver ]
MT_CAP_HORSE      data.p_value_ex[ 15 + def.horse ]
MT_CAP_DRAGON     data.p_value_ex[ 15 + def.dragon ]
MT_CAP_KING       def.DKing + def.DKing
MT_PRO_PAWN       data.p_value_pm[ 7 + def.pawn ]
MT_PRO_LANCE      data.p_value_pm[ 7 + def.lance ]
MT_PRO_KNIGHT     data.p_value_pm[ 7 + def.knight ]
MT_PRO_SILVER     data.p_value_pm[ 7 + def.silver ]
MT_PRO_BISHOP     data.p_value_pm[ 7 + def.bishop ]
MT_PRO_ROOK       data.p_value_pm[ 7 + def.rook ]

EFUTIL_MG1             ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )
EFUTIL_MG2             ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )

FMG_MG                 ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) / 16 )
FMG_MG_KING            ( ( data.p_value_ex[ 15 + def.dragon ] * 3 ) / 16 )
FMG_MG_MT              ( ( data.p_value_ex[ 15 + def.dragon ] * 8 ) / 16 )
FMG_MISC               ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )
FMG_CAP                ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )
FMG_DROP               ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )
FMG_MT                 ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )
FMG_MISC_KING          ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )
FMG_CAP_KING           ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )


HASH_KEY            ptree.posi.hash_key
HASH_VALUE          ptree.sort_value[0]
MOVE_CURR           ptree.current_move[ply]
MOVE_LAST           ptree.current_move[ply-1]


SEARCH_ABORT data.root_abort                    //( root_abort || ptree->tlp_abort )


    #define EFUTIL_MG1             ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )
    #define EFUTIL_MG2             ( ( data.p_value_ex[ 15 + def.dragon ] * 2 ) /  8 )


 ptree->move_last[0]  = ptree->amove;
 ptree.amove[moveidx]
 ptree.amove[moveidx++]
 ptree.amove[moveidx+i]
 ptree.amove[p]
 ptree.amove[ptree.move_last[ply]++]
 ptree.amove[ptree.anext_move[ply].move_last]
 
 
 data.ptrans_table_orig[data.ptrans_table]
  data.ptrans_table_orig[data.ptrans_table + index]
