Please consider following code:

```
extension Dictionary { 
    public func msArray(_ key: Key) -> [Dictionary<String, Any>] {
        return (self[key] as? Array<[String : Int]> ?? [])
    }
}

let dict = ["Warlock" : ["Hp" : 100],  "Rogue" : ["Hp" : 150], "Warrior" : ["Hp" : 250]]

```

Following produce []:

```
print(dict.msArray("Warlock"))

```

Why? Isn't it suppose to print `["Hp" : 100]`?