Created basic version of this. With extending.