void updatePoint(Point pr) {
    	pr.ownerlist.clear();
        double mindist = Math.sqrt(size*size);
        
        //ArrayList<Pair> ownerlist = new ArrayList<Pair>();
       
       
        	for (int j =0 ; j<king_outpostlist.size(); j++) {
        		for (int f =0; f<king_outpostlist.get(j).size(); f++) {
        			double d = distance(PairtoPoint(king_outpostlist.get(j).get(f)), pr);
        			if (d <= mindist) {
        				mindist = d;
        				
        			}
        		}
        	}
        if (mindist < r_distance){
        	//ownerlist = pr.ownerlist;
			//ownerlist.clear();
        	//pr.ownerlist.clear();
        	for (int j =0 ; j<king_outpostlist.size(); j++) {
        		for (int f =0; f<king_outpostlist.get(j).size(); f++) {
        			double d = distance(PairtoPoint(king_outpostlist.get(j).get(f)), pr);
        			if (d == mindist) {
        				Pair tmp = new Pair(j, f);
        				if (pr.ownerlist.size()==0) {
        				pr.ownerlist.add(tmp);
        				}
        				else if (!thesameowner(pr, tmp)) {
        					pr.ownerlist.add(tmp);
        				}
        			}
        		}
        	}
        }
    }