class Merge {

Merge(){
    super(());
  }
  TPH JQYM merge(TPH JQYN a, TPH JQYO b){
    a.addAll Signature: [TPH JQYP, TPH JQYQ](b);
    return a;
  }

  TPH JQYU sort(TPH JQYV in){
    TPH JQYW firstHalf;
    firstHalf = in.subList Signature: [TPH JQYZ, TPH JQZA, TPH JQZB](1, 2);
    TPH JQZE secondHalf;
    secondHalf = in.subList Signature: [TPH JQZH, TPH JQZI, TPH JQZJ](1, 2);
    return this.merge Signature: [TPH JQZX, TPH JQZY, TPH JQZZ](this.sort Signature: [TPH JQZO, TPH JQZP](firstHalf), this.sort Signature: [TPH JQZT, TPH JQZU](secondHalf));
  }

  Merge(){
    super(());
  }

}