import java.util.Stack;

/**
 * Laboratorio, código inicial: historial para deshacer acciones. Hereda de
 * Stack, así que cualquier cliente puede usar add(i, x), get(i), remove(i)...
 * y desordenar el historial.
 */
@SuppressWarnings("serial")     // Stack es Serializable; aquí no serializamos
public class UndoHistory extends Stack<String> {

    /** Registra una acción hecha. */
    public void record(String action) {
        push(action);
    }

    /** Devuelve la última acción y la quita; null si no hay nada que deshacer. */
    public String undo() {
        return isEmpty() ? null : pop();
    }
}
