I want to figure out what should "?" is in the code below : **Declare a class ​Zoo​ with a property ​weeklyHot​ which means the most popular one inthe zoo this week. The codes below can’t work correctly, please find what data typeshould A be and solve the problem**

    
    class Animal{
        let animal :String
        enum Gender{
            case male
            case female
            case undefined
        }
        init(animal : String) {
            self.animal = animal
        }
        func eat(){
            print("I eat everyyhing")
        }
    }
    class Elephant : Animal{
        override func eat() {
            print("I eat grass")
        }
    }
    class Tiger : Animal{
        override func eat() {
            print("I eat meat")
        }
    }
    class Horse : Animal{
        override func eat() {
            print("I eat grass, too")
        }
    }

    class Zoo {
        var weekHot : ?
        init(weeklyHot : ?){}
    }
    let zoo = Zoo(weeklyHot:Tiger())
    zoo.weeklyHot = tiger
