         self.dictionary = dictionary
     }
     
-    public func fetch<T>(key: String) throws -> T {
+    public func fetch<T>(_ key: String) throws -> T {
         return try self.fetch([key])
     }
     
-    public func fetch<T>(keys: [String]) throws -> T {
+    public func fetch<T>(_ keys: [String]) throws -> T {
         
         guard keys.count > 0 else {
             throw ParserError(message: "No specified keys")

        throw ParserError(message: "Unexpected error")
    }
    
    public func fetchOptional<T>(key: String) throws -> T? {
        return try self.fetchOptional([key])
    }
    
    public func fetchOptional<T>(keys: [String]) throws -> T? {
        
        guard keys.count > 0 else {
            throw ParserError(message: "No specified keys")


typealias 🔨 = ParsableObject

struct ParserError: Error {
    let message: String
}

