import java.util.*;

public class TD3EX1Q2 {
  /**
   * @param pileOne pile d'entrée avec des éléments, en sortie sera vide
   * @param pileTwo pile de sortie avec les éléments de pileOne dans l'ordre inverse , en entrée doit être vide
   */
  public static void inverse(Stack<Integer> pileOne,Stack<Integer> pileTwo) {
    /* BEGIN Solution ex1 */
    while (!pileOne.empty()) {
      pileTwo.push(pileOne.pop());
    }
    /* END Solution */
  }
  public static void main(String []args) {
    Stack<Integer> p1 = new Stack<Integer>();
    Stack<Integer> p2 = new Stack<Integer>();
    Stack<Integer> p3 = new Stack<Integer>();
    Scanner in = new Scanner(System.in);
    while (in.hasNext()) {
      p1.push(in.nextInt());
    }
    System.out.println("p1="+p1+" p2="+p2+" p3="+p3);
    inverse(p1,p3);
    System.out.println("p1="+p1+" p2="+p2+" p3="+p3);
    inverse(p3,p2);
    System.out.println("p1="+p1+" p2="+p2+" p3="+p3);
  }
}