import java.util.ArrayDeque;
public class Mono {
String name = "";
public Mono(String name){
this.name = name;
}
@Override
public String toString(){
return name;
}
}
class Momo extends Mono {
Momo(){
super("桃");
}
Momotaro bornMomotaro(){
return new Momotaro(); //桃太郎が生まれる
}
}
class Kibidango extends Mono {
Kibidango(){
super("きび団子");
}
}
class Fukuro extends Mono {
ArrayDeque<Mono> fukuro;
Fukuro(){
super("きび団子が入った袋");
fukuro = new ArrayDeque<Mono>();
}
public void add(Mono mono){
fukuro.add(mono);
}
public Mono pop(){
return fukuro.pop();
}
public int size(){
return fukuro.size();
}
}