public T reverse(){
  String id=getId();
  String REVERSE="_REVERSE";
  if (id.endsWith(REVERSE)) {
    setId(id.substring(0,id.length() - REVERSE.length()));
  }
  float start=mStart;
  float end=mEnd;
  mStart=end;
  mEnd=start;
  mReverse=!mReverse;
  return self();
}

public T reverse ( ) { String id = getId ( ) ; String REVERSE = "_REVERSE" ; if ( id . endsWith ( REVERSE ) ) { setId ( id . substring ( 0 , id . length ( ) - REVERSE . length ( ) ) ) ; } float start = mStart ; float end = mEnd ; mStart = end ; mEnd = start ; mReverse = ! mReverse ; return self ( ) ; }
reverse how the transition is applied , such that the transition previously performed when progress = start of range is only performed when progress = end of range
