public static ArgPositionType getArgPositionType(DependencyTree tree, int aIdx) {
   Bunsetsu aBun = tree.getBunsetsuFromNodeId(aIdx);
   DependencyNode aBunHeadNode = aBun.getHeadNode();
   if (aIdx == aBunHeadNode.getId()) {
     return ArgPositionType.HEAD;
   } else if (aIdx == aBunHeadNode.getId() - 1) {
     return ArgPositionType.HEAD_LEFT;
   } else if (aIdx == aBunHeadNode.getId() + 1) {
     return ArgPositionType.HEAD_RIGHT;
   } else {
     return ArgPositionType.OTHER;
   }
 }
 public static DepType getDepType(DependencyTree tree, int pIdx, int aIdx) {
   Bunsetsu pBun = tree.getBunsetsuFromNodeId(pIdx);
   Bunsetsu aBun = tree.getBunsetsuFromNodeId(aIdx);
   Bunsetsu pBunHeadBun = tree.getBunsetsuFromId(pBun.getHead());
   Bunsetsu aBunHeadBun = tree.getBunsetsuFromId(aBun.getHead());
   if (pBun.getId() == aBun.getId()) {
     return DepType.SAME_PHRASE;
   } else if (pBun.getId() == aBunHeadBun.getId()) {
     return DepType.DEP;
   } else if (pBunHeadBun.getId() == aBunHeadBun.getId()) {
     return DepType.DEP;
   } else {
     return DepType.ZERO_INTRA;
   }
 }