                             }
                             string += debug ? "print(\"Failed to generate: \(key.coolie_lowerCamelCase)\"); return nil }\n" : "return nil }\n"
                         } else if value.isArray {
-                            //if case .array(_, let values) = value, let unionValue = unionValues(values), !unionValue.isDictionaryOrArray {
                             if case .array(_, let values) = value, let unionValue = unionValues(values) {
                                 if case .null(let optionalValue) = unionValue {
                                     if let value = optionalValue {

            } else {
                return "UnknownType?"
            }
        case .dictionary(let name, _):
            return name ?? "UnknownTypeDDD"
        default:
            fatalError("Unknown type")
        }

            var dictionary = [String: Value]()
            if case .endObject = token {
                next += 1
                return .dictionary(dictionary)
            } else {
                while true {
                    guard let key = parseString(), let _ = parseColon(), let value = parseValue() else {
