public Period normalized(){
  long totalMonths=toTotalMonths();
  long splitYears=totalMonths / 12;
  int splitMonths=(int)(totalMonths % 12);
  if (splitYears == years && splitMonths == months) {
    return this;
  }
  return create(Math.toIntExact(splitYears),splitMonths,days);
}

public Period normalized ( ) { long totalMonths = toTotalMonths ( ) ; long splitYears = totalMonths / 12 ; int splitMonths = ( int ) ( totalMonths % 12 ) ; if ( splitYears == years && splitMonths == months ) { return this ; } return create ( Math . toIntExact ( splitYears ) , splitMonths , days ) ; }
returns a copy of this period with the years and months normalized . < p > this normalizes the years and months units , leaving the days unit unchanged . the months unit is adjusted to have an absolute value less than 11 , with the years unit being adjusted to compensate . for example , a period of " 1 year and 15 months " will be normalized to " 2 years and 3 months " . < p > the sign of the years and months units will be the same after normalization . for example , a period of " 1 year and - 25 months " will be normalized to " - 1 year and - 1 month " . < p > this instance is immutable and unaffected by this method call .
