import java.lang.*; import java.util.*; /** Interface for any object that can be manipulated as a state by an implementation of SearchMethod. */ public interface State { /** Returns whether this state is a goal node. */ public boolean isGoal(); /** Returns a collection of successors of the state. */ public ArrayList successors(); }