Don't you have this same check above. Why do you need it twice? When you set the Shape in the `__init__` method it will call this property method and you will get the type check.