code: function(){
  		if(this._info.num){ return this._info.num;}
  
  		var bd = this.board;
  		var pathsegs = [], passed = [];
  		for(var id=0;id<bd.border.length;id++){ passed[id] = false;}
   
  		var clist = bd.cell.filter(function(cell){ return cell.isNum();});
  		for(var i=0;i<clist.length;i++){
  			var cell = clist[i], adb = cell.adjborder;
  			var dir4bd = [adb.top, adb.bottom, adb.left, adb.right];
  			for(var a=0;a<4;a++){
  				var firstbd = dir4bd[a];
  				if(firstbd.isnull){ continue;}
  
  				var pathseg = this.serachLineShapeInfo(cell,(a+1),passed);
  				if(!!pathseg){ pathsegs.push(pathseg);}
  			}
  		}
  
  		return (this._info.num = pathsegs);
  	}
docs: -------------------------------------------------------------------------------- ans.getLineShapeInfo() 丸などで区切られた線を探索し情報を設定する ans.serachLineShapeInfo() 丸などで区切られた線を探索します --------------------------------------------------------------------------------