 trainers.append(jediTrainer)
 trainers.append(sithTrainer)
 /*:
- Above we have created two new classes `JediTrainerLightsaber` and `SithTrainerLightsaber`. We store instances of these two classes in an array storing instances of `Lightsaber`. This is allowable because our instances of `JediTrainerLightsaber` and `SithTrainerLightsaber` have the same base class `Lightsaber`.
+ Above we have created two new classes, `JediTrainerLightsaber` and `SithTrainerLightsaber`. We store instances of these two classes in an array storing instances of `Lightsaber`. This is allowable because our instances of `JediTrainerLightsaber` and `SithTrainerLightsaber` have the same base class `Lightsaber`.
  */
 /*:
  ### Checking the type

 */
/*:
 ### Overriding Properties
 Overriding a property (either instance or type) is similar to overriding a function; 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 {
    

 */
/*:
 ### Type Casting for Any and AnyObject
 Some frameworks that you will leverage within your program store an array of non specified types and indicate so with either using `typealias` of `AnyObject` or `Any`. `AnyObject` marks the type or collection of types as instances of classes. `Any` marks the type of collection of any thing, including tuples and function type. You can use the `is` type check operator or `as` type cast operator to determine what it is you are actually working with.
 */
var anyObjects = [AnyObject]()

