class Move { int time; State state; Input input; Move() { time = 0; state = new State(); input = new Input(); } Move clone() { Move c = new Move(); c.time = time; c.state = state.clone(); c.input = input.clone(); return c; } }