     override init(name: String) {
         super.init(name: name)
     }
-    
+
     override func sound() -> String {
         return "neigh"
     }

    override init(name: String) {
        super.init(name: name)
    }
    
    override func sound() -> String {
        return "moooo"
    }

class Animal {
    let name: String

    init(name: String) {
        self.name = name
    }

    func sound() -> String {
        preconditionFailure("This method must be overridden")
    }

    func speak() -> String {
        return "\(self.name) says \(self.sound())"
    }
