Interfaces and Objects to be used. (Incomplete)