  */
 /*:
  ## The Subclass
- Having a class inherit from another class, or subclassing and superclass is done with the colon `:` directly after the class name and then the class you want to inherit after the colon. Once a class is defined as having subclassing another class, the subclass can immediately access the visible properties and methods (type and instance). The subclass can also have new properties and methods.
+ Having a class inherit from another class, or subclassing the superclass is done with the colon `:` directly after the class name and then the class you want to inherit after the colon. Once a class is defined as having subclassing another class, the subclass can immediately access the visible properties and methods (type and instance). The subclass can also have new properties and methods.
  */
 class Son: Father {
     

 */
/*:
 ### Downcasting to get the type
 To actually cast a class as a subclass, downcasting, use the type cast operator `as` with either a question mark `?` or exclamation point `!`. Use `as?` if you are unsure if the class belongs in the class hierarchy, resulting in a `nil` if the class is not in the hierarchy. Conversely, use `as!` to force the type casting. If the class is not in the hierarchy, you will receive a runtime error.
 */
for trainer in trainers {
    

 */
/*:
 ### Overriding Properties
 Overriding a property (either instance or type) is similar to overriding a method; you also place the `override` keyword before the property definition. It doesn’t matter if the superclass’s property is a stored property or computed property. You can override a property in a subclass as long as the name and type are the same as in the superclass. You can override a property’s get and set methods as well as the property observers.
 */
class Granddaughter: Daughter {
    
