Added the Shape interface