PERange intersection(PERange rangeb) {
    	if(rangeb == null) {
    		return null;
    	}
    	
    	int s = (this.begin < rangeb.begin) ? rangeb.begin : this.begin;
    	int e = (this.end < rangeb.getEnd()) ? this.end : rangeb.getEnd();
    	return (s > e) ? null : new PERange(s, e);
    }