{
  "ES010": "기타 오류",
  "ES011": "['$1'] 모듈을 가져오는데 실패하였습니다.",
  "ES012": "['$1'()] 함수를 가져오는데 실패하였습니다.",
  "ES013": "[$1]는 [$2] 처리가 실패하였습니다.",
  "ES021": "[$1]는 [$2] 타입만 가능합니다.",
  "ES022": "[$1]는 처리할 수 없는 타입니다.",
  "ES023": "[$1]는 [$2]타입이 아닙니다.",
  "ES031": "[$1]는 객체가 아닙니다.",
  "ES032": "[$1]는 [$2]의 인스턴스가 아닙니다.",
  "ES033": "[$1]의 객체가 [$2]와 다릅니다.",
  "ES041": "[$1]는 [$2]와 중복이 발생했습니다.",
  "ES042": "[$1]에 [$2]가 존재하여 [$3]를 재거 할 수 없습니다.",
  "ES043": "[$1]에 [$1]가 존재하여 [$3]를 추가 할 수 없습니다.",
  "ES044": "[$1]는 예약어 입니다.",
  "ES051": "필수값 [$1]이 없습니다.",
  "ES052": "[$1]에는 [$2]이 필요합니다.",
  "ES053": "[$1]에 [$2]이 존재하지 않습니다.",
  "ES054": "[$1]에 공백을 입력할 수 없습니다.",
  "ES061": "[$1]의 [$2] 범위를 초과하였습니다.",
  "ES062": "[$1]는 [$2]보다 작을 수가 없습니다.",
  "ES063": "[$1]와 [$2]의 길이가 다릅니다.",
  "ES064": "and(&&) 조건 검사에 실패하였습니다. $1",
  "ES065": "or(||) 조건 검사에 실패하였습니다. $1",
  "ES066": "[$1]의 범위는 [$2]에서 [$3]까지 입니다. ",
  "EL01100": "----- util-type.js match -----",
  "EL01101": "타입 매치 : $1 의 세부 타입을 지정해야 합니다. $1: $2",
  "EL01102": "타입 매치 : target 은 '$1' 타입이 아닙니다. tarType: $2",
  "EL01103": "타입 매치 : 처리할 수 없는 타입니다. ",
  "EL01110": "----- match array -----",
  "EL01111": "배열 매치 : target 은 array 타입이 아닙니다. tarType: $1",
  "EL01112": "배열 매치 : array(_ANY_) 타입은 target array 의 요소가 하나 이상 가지고 있어야 합니다. target.length = $1",
  "EL01113": "배열 매치 : array(_SEQ_) 타입의 길이보다 target array 의 길이가 작습니다. extType.length = $1, target.length = $2",
  "EL01114": "배열 매치 : array(_SEQ_) [$1]번째 리터럴 타입이 target 값과 다릅니다. extType[$1] = $2, target[$1] = $3",
  "EL01115": "배열 매치 : array(_SEQ_) [$1]번째 타입 검사가 실패하였습니다. extType[$1] = $2",
  "EL01116": "배열 매치 : array(_REQ_) 타입은 target array 의 요소가 하나 이상 가지고 있어야 합니다. target.length = $1",
  "EL01117": "배열 매치 : array($1) 는 처리할 수 없는 array 타입 종류입니다.",
  "EL01118": "배열 매치 : array 요소 검사가 실패하였습니다. extType: $1, tarType: $2",
  "EL01120": "----- match choice -----",
  "EL01121": "초이스 매치 : choice(_ANY_) 타입에 'undefined' 은 사용할 수 없습니다.",
  "EL01122": "초이스 매치 : choice(_NON_) 타입에 'undefined' 만 가능합니다.",
  "EL01123": "초이스 매치 : choice(_ERR_) 타입에 Errror 인스턴스 만 가능합니다.",
  "EL01124": "초이스 매치 : choice(_EUM_) 타입의 세부 타입은 리터럴만 가능합니다. extType[$1]: $2",
  "EL01125": "초이스 매치 : choice(_DEF_) 타입의 첫번째 세부 타입은 리터럴만 가능합니다. extType[0]: $1",
  "EL01126": "초이스 매치 : choice($1) 는 처리할 수 없는 choice 타입 종류입니다.",
  "EL01127": "초이스 매치 : choice 세부 타입 검사가 실패하였습니다. extType: $1, tarType: $2",
  "EL01130": "----- match class -----",
  "EL01131": "클래스 매치 : class 타입을 union 타입으로 생성 후 검사에 실패하였습니다. (opt = 1)",
  "EL01132": "클래스 매치 : target은 [$1]의 인스턴스가 아닙니다.",
  "EL01133": "클래스 매치 : target 이 class, object, union 타입이 아닙니다. tarType: $1",
  "EL01140": "----- match union -----",
  "EL01141": "유니언 매치 : target 은 union 타입이 아닙니다. tarType: $1",
  "EL01142": "유니언 매치 : target['$1'] 키가 존재하지 않습니다. extType['$1'] = $2",
  "EL01143": "유니언 매치 : '$1' 타입 검사가 실패하였습니다.",
  "EL01150": "----- match function -----",
  "EL01151": "함수 매치 : target 은 function 타입이 아닙니다. tarType: $1",
  "EL01152": "함수 매치 : 선언한 extType.name = '$1' 과 target name 이 일치하지 않습니다. function.name = '$2'",
  "EL01153": "함수 매치 : extType.func 을 선언하였는데 target.func 이 functon 타입이 아닙니다.",
  "EL01154": "함수 매치 : extType.func 과 target.func 서로 다릅니다.(proto check)",
  "EL01155": "함수 매치 : target의 params 또는 return 객체를 설정해야 합니다. extType.param = $1, extType.return = $2",
  "EL01156": "함수 매치 : params 허용검사가 거부되었습니다. <array(_SEQ_) 변환>",
  "EL01157": "함수 매치 : return 허용검사가 거부되었습니다.",
  "EL01200": "----- allow -----",
  "EL01201": "타입 허용 : $1 의 세부 타입을 지정해야 합니다. $1: $2",
  "EL01202": "타입 허용 : $1 타입의 리터럴 값과 다릅니다. extType = $2, tarType = $3",
  "EL01203": "타입 허용 : $1 타입이 아닙니다. tarType = $2",
  "EL01204": "타입 허용 : 처리할 수 없는 타입입니다.",
  "EL01210": "----- allow array -----",
  "EL01211": "배열 허용 : array 타입이 아닙니다. tarType: $1",
  "EL01212": "타입 허용 : array(_ANY_) 타입에 array(_ALL_, _OPT_) 타입을 허용하지 않습니다. tarType: $1",
  "EL01213": "배열 허용 : array(_SEQ_) 타입에 array(_SEQ_) 타입만 허용합니다. tarType: $1",
  "EL01214": "배열 허용 :extType 의 array(_SEQ_) 타입의 길이보다 tarType 은 같거나 커야합니다. extType.length = $1, target.length = $2",
  "EL01215": "배열 허용 : array(_SEQ_) [$1]번째 타입 검사가 실패하였습니다.",
  "EL01216": "배열 허용 : array(_REQ_) 타입에 array(_ALL_, _ANY_, _OPT_) 타입을 허용하지 않습니다. tarType: $2",
  "EL01217": "배열 허용 : array(_OPT_) 타입에 array(_ALL_, _ANY_) 타입을 허용하지 않습니다. tarType: $2",
  "EL01218": "배열 허용 : array($1) 는 처리할 수 없는 array 타입 종류입니다.",
  "EL01219": "배열 허용 : array 요소 검사가 실패하였습니다. extType: $1, tarType: $2",
  "EL01220": "----- allow choice -----",
  "EL01221": "초이스 허용 : choice(_ALL_) 타입에 choice(_ERR_) 타입을 허용하지 않습니다. tarType: $1",
  "EL01222": "초이스 허용 : choice(_ANY_) 타입에 'undefined' 타입은 사용할 수 없습니다.",
  "EL01223": "초이스 허용 : choice(_ANY_) 타입에 choice(_NON_, _ERR_), 'undefined' 타입을 허용하지 않습니다. tarType: $1",
  "EL01224": "초이스 허용 : choice(_NON_) 타입에 choice(_NON_) 타입만 허용합니다. tarType: $1",
  "EL01225": "초이스 허용 : choice(_ERR_) 타입에 choice(_ERR_) 타입만 가능합니다. tarType: $1",
  "EL01226": "초이스 허용 : choice(_REQ_) 타입에 choice(_ALL_, _ANY_, _OPT_, _NON_, _ERR_) 타입을 허용하지 않습니다. tarType: $1",
  "EL01227": "초이스 허용 : choice(_OPT_) 타입에 choice(_ALL_, _ANY_, _NON_, _ERR_) 타입을 허용하지 않습니다. tarType: $1",
  "EL01228": "초이스 허용 : choice(_EUM_) 타입에 choice(_EUM_) 타입만 가능합니다.",
  "EL01229": "초이스 허용 : choice(_EUM_) 의 세부 타입은 리터럴만 가능합니다. extType[$1]: $2",
  "EL0122A": "초이스 허용 : tarType choice(_EUM_) 의 세부 타입은 리터럴만 가능합니다. tarType[$1]: $2",
  "EL0122B": "초이스 허용 : choice(_DEF_) 타입에 choice(_DEF_) 타입만 가능합니다.",
  "EL0122C": "초이스 허용 : extType choice(_DEF_) 의 첫번째 세부 타입은 리터럴만 가능합니다. extType[0]: $1",
  "EL0122D": "초이스 허용 : tarType choice(_DEF_) 의 첫번째 세부 타입은 리터럴만 가능합니다. tarType[0]: $1",
  "EL0122E": "초이스 허용 : choice($1) 는 처리할 수 없는 choice 타입 종류입니다.",
  "EL0122F": "초이스 허용 : tarType[$1] = $3 타입에 허용하는 extType 이 없습니다. extType = $2",
  "EL01230": "----- allow class -----",
  "EL01231": "클래스 허용 : extType, tarType class 타입을 union 타입으로 생성 후 검사에 실패하였습니다. (opt = 1)",
  "EL01232": "클래스 허용 : class to class 허용이 거부 되었습니다. (opt = $1)",
  "EL01233": "클래스 허용 : tarType class 타입을 union 타입으로 생성 후 검사에 실패하였습니다. (opt = 1)",
  "EL01234": "클래스 허용 : class to union 허용이 거부 되었습니다. (opt = $1)",
  "EL01235": "클래스 허용 : tarType 이 class, union 타입이 아닙니다. tarType: $1",
  "EL01240": "----- allow union -----",
  "EL01241": "유니언 허용 : tarType 은 union 타입이 아닙니다. tarType: $1",
  "EL01242": "유니언 허용 : tarType['$1'] 키가 존재하지 않습니다. extType['$1'] = $2",
  "EL01243": "유니언 허용 : '$1' 타입 검사가 실패하였습니다.",
  "EL01250": "----- allow function -----",
  "EL01251": "함수 허용 : tarType 은 function 타입이 아닙니다. tarType: $1",
  "EL01252": "함수 허용 : 선언한 extType.name = '$1' 과 target name 이 일치하지 않습니다. function.name = '$2'",
  "EL01253": "함수 허용 : extType.func 을 선언하였는데 target.func 이 functon 타입이 아닙니다.",
  "EL01254": "함수 허용 : extType.func 과 target.func 서로 다릅니다.(proto check)",
  "EL01255": "함수 허용 : tarType의 params 또는 return 객체를 설정해야 합니다. extType.param = $1, extType.return = $2",
  "EL01256": "함수 허용 : params 허용검사가 거부되었습니다. <array(_SEQ_) 변환>",
  "EL01257": "함수 허용 : return 허용검사가 거부되었습니다.",
  "EL01300": "----- util-type.js -----",
  "EL01301": "파싱 검사 : function 규칙이 아닙니다.'$1'",
  "EL01302": "파싱 검사 : function 에 argument, body 내용이 없습니다. '$1'",
  "EL01303": "파싱 검사 : function 파싱 실패 $1",
  "EL01304": "타입 검사 : [$1]는 처리할 수 스페셜타입 입니다.",
  "EL01305": "타입 검사 : array($1) 타입은 처리할 수 없는 스페설타입 입니다.",
  "EL01306": "타입 검사 : choice($1) 타입은 처리할 수 없는 스페셜타입 입니다.",
  "EL01307": "타입 검사 : array($1) 타입은 처리할 수 없는 타입 입니다.",
  "EL01308": "타입 검사 : choice($1) 타입은 처리할 수 없는 타입 입니다.",
  "EL01309": "REVIEW:",
  "EL0130A": "타입 허용 : allowType(extType, tarType) 검사가 실패하였습니다.",
  "EL0130B": "타입 매치 : matchType(extType, target) 검사가 실패하였습니다.",
  "EL0130C": "ctor 이 function 타입이 아닙니다. typeof ctor = $1",
  "EL01400": "----- util.js -----",
  "EL01401": "implements(ctor, obj, args..); ctor 이 <function> 타입이 아닙니다. typeof ctor == '$1'",
  "EL01402": "implements(ctor, obj, args..); obj 이 <object> 타입이 아닙니다. typeof obj == '$1'",
  "EL01403": "implements(ctor, obj, args..); args[$1] 이 <function> 타입이 아닙니다. typeof args[$1] == '$2'",
  "EL01404": "[$1] 는 [$2] 타입을 구현해야 합니다. $1._KIND = '$3'",
  "EL01405": "isImplementOf(target); target 은 <function, string> 타입만 가능합니다. typeof target = '$1'",
  "EL01500": "----- etc -----",
  "EL01501": "$1.$events 는 obejct 타입입니다. typeof $events $2",
  "EL01502": "$1.isLog 는 boolean 타입입니다. typeof isLog $2",
  "EL01503": "on(event, listener); event 는 <string> 타입이 아닙니다. typeof event == '$1'",
  "EL01504": "on(event, listener); listener 는 <function> 타입이 아닙니다. typeof listener == '$1'",
  "EL01505": "once(event, listener); event 는 string 타입이 아닙니다. typeof event == '$1'",
  "EL01506": "once(event, listener); listener 는 <function> 타입이 아닙니다. typeof listener == '$1'",
  "EL01507": "off(event, listener); event 는 <string> 타입이 아닙니다. typeof event == '$1'",
  "EL01508": "off(event, listener); listener 는 <function> 타입이 아닙니다. typeof listener == '$1'",
  "EL01509": "emit(event); event 는 <string> 타입이 아닙니다. typeof event == '$1'",
  "EL01510": "",
  "EL02100": "----- Interface.* -----",
  "EL02110": "----- i-object.js -----",
  "EL02111": "getTypes(): array<function> 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02112": "instanceOf(any): boolean 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02113": "equal(any): boolena 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02120": "----- i-marshal.js -----",
  "EL02121": "getObject(opt?, origin?): object 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02122": "setObject(mObj) 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02130": "----- i-element.js -----",
  "EL02131": "clone(): object 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02140": "----- i-list.js -----",
  "EL02150": "----- i-control-list.js -----",
  "EL02151": "add(key) 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02152": "del(key) 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02153": "has(key): boolean 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02154": "find(any): any 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02160": "----- i-collection.js -----",
  "EL02161": "add(any): boolean 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02162": "remove(elem): boolean 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02163": "cantains(any): boolean 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02164": "indexOf(any): number 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02170": "----- i-collection-array.js -----",
  "EL02171": "insertAt(pos, val, ..): boolean 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02180": "----- i-collection-property.js -----",
  "EL02181": "indexToKey(idx): string 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02190": "----- i-serialize.js -----",
  "EL02191": "output(opt, ...): string 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02192": "load(any, ...) 은 추상메소드 입니다. [$1] 을 구현해야 합니다.",
  "EL02300": "----- Meta.Entity.* -----",
  "EL03100": "----- Meta.* -----",
  "EL03110": "----- meta-object.js -----",
  "EL03111": "abstract, interface, enum 타입은 생성할 수 없습니다. $1['_KIND'] = '$2'",
  "EL03112": "setObject(oGuid, origin); oGuid 는 'object' 타입입니다. typeof oGuid = '$1'",
  "EL03113": "setObject(oGuid, origin); 네임스페이스가 서로 다릅니다. this._type = $1, oGuid._type = $2",
  "EL03114": "setObject(oGuid, origin); origin 은 Guid 객체가 아닙니다. origin._type = '$1', origin._guid = '$2'",
  "EL03120": "----- meta-element.js -----",
  "EL03121": "$name; val 은 'string' 타입입니다. typeof val = '$1'",
  "EL03122": "$name; val.length 은 0 보다 커야 합니다.",
  "EL03200": "----- meta-registry.js -----",
  "EL03211": "register(meta); 등록할 meta 가 Guid 객체가 아닙니다. meta._type = '$1', meta._guid = '$2'",
  "EL03212": "register(meta); 등록할 meta._guid 가 이미 등록되어 있습니다. meta._guid = '$1'",
  "EL03213": "release(meta); 해제할 meta 는 string(guid) | object(Guid) 타입만 가능합니다. typeof meta = '$1'",
  "EL03220": "----- create -----",
  "EL03221": "createMetaObject(oGuid, origin); oGuid 는 'object' 타입만 가능합니다. typeof oGuid = '$1'",
  "EL03222": "createMetaObject(oGuid, origin); oGuid._type 은 'string' 타입만 가능합니다.(length > 0) typeof oGuid._type = '$1'",
  "EL03223": "createMetaObject(oGuid, origin); origin 는 'object' 타입만 가능합니다. typeof origin = '$1'",
  "EL03224": "createMetaObject(oGuid, origin); [$1] 네임스페이스가 'function' 타입이 아닙니다. typeof coClass = '$2'",
  "EL03225": "createReferObject(meta); meta 는 'object' 타입만 가능합니다. typeof meta = '$1'",
  "EL03226": "createReferObject(meta); meta._guid 은 'string' 타입만 가능합니다.(length > 0) typeof meta._guid = '$1'",
  "EL03227": "createNsReferObject(fun); fun 는 'function' 타입이 아닙니다. typeof fun = '$1'",
  "EL03230": "----- ns Class -----",
  "EL03231": "registerClass(fun, ns, key); fun 이 'function' 타입이 아닙니다. typeof fun = '$1'",
  "EL03232": "registerClass(fun, ns, key); ns 가 'string' 타입이 아닙니다. typeof ns = '$1'",
  "EL03233": "registerClass(fun, ns, key); key 가 'string' 타입이 아닙니다. typeof key = '$1'",
  "EL03234": "releaseClass(fullName); fullName 은 'string' 타입만 가능합니다.(length > 0) typeof fullName = '$1'",
  "EL03235": "findClass(fun); fun 는 'function' 타입이 아닙니다. typeof fun = '$1'",
  "EL03236": "getClass(fullName); fullName 은 'string' 타입만 가능합니다.(length > 0) typeof fullName = '$1'",
  "EL03240": "----- set, transform, load -----",
  "EL03241": "setMetaObject(oGuid, meta); oGuid 는 'object' 타입만 가능합니다. typeof oGuid = '$1'",
  "EL03242": "setMetaObject(oGuid, meta); meta 는 'object' 타입만 가능합니다. typeof meta = '$1'",
  "EL03243": "setMetaObject(meta); meta._guid 은 'string' 타입만 가능합니다.(length > 0) typeof meta._guid = '$1'",
  "EL03244": "transformRefer(oGuid); oGuid 는 'object' 타입만 가능합니다. typeof oGuid = '$1'",
  "EL03245": "transformRefer(oGuid); $1['$2']['$ns'] 는 'function' 타입이 아닙니다.",
  "EL03246": "loadMetaObject(str, parse?); str 은 'string' 타입만 가능합니다. typeof str = '$1'",
  "EL03247": "loadMetaObject(str, parse?); str 을 파싱한 객체가 Guid 객체가 아닙니다. obj._type = '$1', obj._guid = '$2'",
  "EL03250": "----- has, valid, find -----",
  "EL03251": "validObject(oGuid); oGuid 는 'object' 타입만 가능합니다. typeof oGuid = '$1'",
  "EL03252": "hasGuidObject(oGuid, origin); guid 는 'string' 타입만 가능합니다.(length > 0) typeof guid = '$1'",
  "EL03253": "hasGuidObject(oGuid, origin); origin[$1]는 'object' 타입이 아닙니다. typeof origin[$1] = '$2'",
  "EL03254": "hasRefer(oGuid); oGuid 는 'object' 타입만 가능합니다. typeof oGuid = '$1'",
  "EL03255": "hasRefer(oGuid); oGuid 가 Guid 객체가 아닙니다. oGuid._type = '$1', oGuid._guid = '$2'",
  "EL03256": "findSetObject(oGuid, origin); [ oGuid._guid | oGuid ]는 'string' 타입만 가능합니다.(length > 0) guid = '$1'",
  "EL03257": "findSetObject(oGuid, origin); origin 는 'object' 타입만 가능합니다. typeof origin = '$1'",
  "EL03300": "----- namespace-manager.js -----",
  "EL03310": "----- private function, proterty -----",
  "EL03311": "NamespaceManager.allowOverlap 은  'boolean' 타입만 가능합니다. typeof allowOverlap = $1",
  "EL03312": "_getArray(ns); ns 는 유효한 네임스페이스 이름 규칙이 아닙니다. ns = $1",
  "EL03313": "_getArray(ns); ns 타입은 'string', 'array<string>' 타입만 가능합니다. typeof ns = $1",
  "EL03314": "_getArray(ns); ns[$1] 는 'string' 타입이 아닙니다. typeof ns[$1] = $2",
  "EL03315": "_getArray(ns); ns[$1] 는 유효한 이름 규칙이 아닙니다. ns[$1] = $1",
  "EL03320": "----- addNamespace, delNamespace, path -----",
  "EL03321": "addNamespace(ns); 네임스페이스 추가가 실패하였습니다.",
  "EL03322": "delNamespace(ns); 네임스페이스 삭제가 실패하였습니다.",
  "EL03323": "path(ns); 네임스페이스 경로 얻기에 실패하였습니다.",
  "EL03330": "----- add, del -----",
  "EL03331": "add(fullName, elem); [$1] 는 유효한 이름 규칙이 아닙니다.",
  "EL03332": "add(fullName, elem); elem 이 이미 등록되었습니다. 중복허용 [this.allowOverlap = 'true']",
  "EL03333": "add(fullName, elem); 네임스페이스에 요소 등록이 실패하였습니다.",
  "EL03334": "del(fullName); 네임스페이스에 요소 삭제가 실패하였습니다.",
  "EL03340": "----- getPath, output, load -----",
  "EL03341": "getPath(elem); elem 값이 없습니다. typeof elem = $1",
  "EL03342": "output(stringify, space); 네임스페이스 내보내기가 실패하였습니다. $1",
  "EL03343": "load(str, parse); str 는 'string' 타입이 아닙니다. typeof str = $1",
  "EL03344": "load(str, parse); 네임스페이스 로딩이 실패하였습니다. $1",
  "EL04100": "----- Collection.* -----",
  "EL04110": "----- base-collection.js -----",
  "EL04111": "_remove(idx): boolean 는 추상메소드 입니다. 구현해야 합니다.",
  "EL04112": "setObject(oGuid, origin); oGuid 의 _owner 연결이 실패하였습니다. guid = $1",
  "EL04113": "removeAt(idx); idx 는 'number' 타입이 아닙니다. typeof idx = $1",
  "EL04114": "add(any): number 는 추상메소드 입니다. 구현해야 합니다.",
  "EL04115": "clear() 는 추상메소드 입니다. 구현해야 합니다.",
  "EL04116": "map(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL04117": "filter(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL04118": "reduce(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL04119": "find(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL041110": "forEach(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL041111": "some(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL041112": "every(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL041113": "findIndex(callback); callback 이 function 타입이 아닙니다. typeof callback = $1",
  "EL04200": "",
  "EL04210": "----- collection-array.js -----",
  "EL04211": "setObject(oGuid, origin); oGuid['_elem'][$1] 의 _elements 연결이 실패하였습니다. guid = $2",
  "EL04212": "insertAt(pos, value, desc); pos 는 'number' 타입이 아닙니다. typeof pos = $1",
  "EL04213": "insertAt(pos, value, desc); pos 는 this.count 보다 클 수 없습니다. pos = $1, count = $2",
  "EL04214": "insertAt(pos, value, desc);  pos 는 0 보다 작을 수 없습니다. pos = $1",
  "EL04215": "insertAt(pos, value, desc); 등록이 실패하였습니다. pos = $1, value = $2",
  "EL04220": "----- collection-property.js -----",
  "EL04221": "setObject(oGuid, origin); oGuid['_elem'].length = $1 길이와 oGuid['_key'].length = $2 길이가 서로 다릅니다.",
  "EL04222": "setObject(oGuid, origin); oGuid['_elem'].length = $1 길이와 oGuid['_desc'].length = $2 길이가 서로 다릅니다.",
  "EL04223": "setObject(oGuid, origin); oGuid._elem[$1] guid 를 찾을 수 없습니다. guid = $2",
  "EL04224": "indexOf(obj, isKey); key로 인덱스값을 찾을 경우 obj 는 'string' 타입이어야 합니다. typeof obj = $1",
  "EL04225": "add(name, value, desc); name 이 'string' 타입이 아닙니다. typeof name = $1",
  "EL04226": "add(name, value, desc); name = '$1' 이 이름규칙에 맞지 않습니다. 규칙 = '$2'",
  "EL04227": "add(name, value, desc); name = '$1' 이 예약어 입니다.",
  "EL04228": "add(name, value, desc); name = '$1' 이 기존 이름과 중복이 발생했습니다.",
  "EL04229": "add(name, value, desc); 추가가 실패하였습니다. name = '$1', value = '$2'",
  "EL0422A": "indexToKey(idx); idx 이 'number' 타입이 아닙니다. typeof idx = $1",
  "EL0422B": "exists(key); key 이 'string' 타입이 아닙니다.(length > 0) typeof key = $1",
  "EL04300": "",
  "EL04310": "----- collection-transaction.js -----",
  "EL04311": "$1.autoChanges 는 'boolean' 타입입니다. typeof aucoChanges = '$2'",
  "EL04320": "----- trans-queue.js -----",
  "EL04321": "collection 값이 [MetaObject] 을 상속한 인스턴스가 아닙니다.",
  "EL04322": "collection 이 [ArrayCollection] 의 인스턴스가 아닙니다.",
  "EL04323": "rollback(); '$1' 는 처리할 수 없는 cmd 입니다.",
  "WS011": "[$1] 대상 [$2]는 삭제 할 수 없습니다.",
  "KO": "OK",
  "EL02200": "---- Interface.* ----",
  "EL02210": "---- i-control-export.js ----",
  "EL02211": "write(opt): object 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL02220": "---- i-control-import.js ----",
  "EL02221": "read(object) 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL02230": "---- i-control-group.js ----",
  "EL02231": "merge(any, opt) 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL02232": "copy(filter) 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL02240": "---- i-control-schema.js ----",
  "EL02241": "readSchema(json) 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL02242": "writeSchema(opt): object 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL02250": "---- i-transaction.js ----",
  "EL02251": "acceptChanges() 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL02252": "rejectChanges() 은 추상메소드 입니다. '$1' 을 구현해야 합니다.",
  "EL05100": "---- Meta.Entity.* ----",
  "EL05110": "---- BaseColumn ----",
  "EL05111": "$1._entity 값이 [MetaElement] 인스턴스가 아닙니다.",
  "EL05112": "$1.columnName 는 'string' 타입입니다. typeof columnName = '$2'",
  "EL05113": "기존에 $1.columnName '$2'이 존재합니다.",
  "EL05114": "기존에 $1.alias '$2'이 존재하여 columnName 을 설정할 수 없습니다.",
  "EL05115": "$1.alias 는 'string' 타입입니다. typeof alias = '$2'",
  "EL05116": "기존에 $1.alias '$2'이 존재합니다.",
  "EL05117": "$1.caption 는 'string' 타입입니다. typeof caption = '$2'",
  "EL05118": "setObject(oGuid, origin); oGuid.['_entity'] guid 를 찾을 수 없습니다. name = '$1', guid = '$2'",
  "EL05119": "clone() 은 추상메소드 입니다. 상속해서 구현해야 합니다.",
  "EL05120": "---- ObjectColumn ----",
  "EL05121": "_load(prop); prop 는 'object' 타입입니다. typeof prop = '$2'",
  "EL05122": "setObject(oGuid, origin); oGuid.['default'] guid 를 찾을 수 없습니다. guid = '$1'",
  "EL05123": "setObject(oGuid, origin); oGuid.['value'] guid 를 찾을 수 없습니다. guid = '$1'",
  "EL05130": "---- MetaColumn ----",
  "EL05131": "$1.required 는 'boolean' 타입입니다. typeof required = '$2'",
  "EL05132": "$1.isNullPass 는 'boolean' 타입입니다. typeof isNullPass = '$2' //  TODO: 제거됨",
  "EL05133": "$1.constraints 의 배열 요소는 'function' | {regex: RegExp, msg: string} 타입입니다. typeof [$2].regex = '$3', [$2].msg = '$4'",
  "EL05134": "$1.getter 는 'function' 타입입니다. typeof getter = '$2'",
  "EL05135": "$1.setter 는 'function' 타입입니다. typeof setter = '$2'",
  "EL05136": "addConstraint(regex, msg, code, condition); regex 는 RegExp 인스턴스가 아닙니다.",
  "EL05137": "addConstraint(regex, msg, code, condition); msg 는 'string' 타입입니다. typeof msg = '$1'",
  "EL05138": "valid(value); value 는 필수값 입니다. columnName = '$1' ",
  "EL05139": "valid(value); 함수 제약조건이 실패하였습니다. columnName = '$1' ",
  "EL0513A": "valid(value); 정규식 제약조건이 실패하였습니다. columnName = '$1', msg = '$2' ",
  "EL05140": "---- BaseColumnCollection ----",
  "EL05141": "$1._baseType 는 'function' 타입입니다. typeof getter = '$2'",
  "EL05142": "$1._baseType [BaseColumn]의 prototype 이 연결되어 있어야 합니다.(상속)",
  "EL05143": "add(name, vlaue); _onwer 의 rows 가 존재하여 columnColleciton 을 추가할 수 없습니다. _onwer.rows.count = '$1'",
  "EL05144": "add(name, vlaue); '$1' 에 '$2' 존재하여 추가할 수 없습니다.",
  "EL05145": "add(name, vlaue); '$1' 에 alias '$2'이 존재하여 추가할 수 없습니다.",
  "EL05146": "removeAt(idx); _onwer 의 rows 가 존재하여 columnColleciton 을 제거할 수 없습니다. _onwer.rows.count  = '$1'",
  "EL05147": "addValue(name, value) 은 추상메소드 입니다. 구현해야 합니다.",
  "EL05148": "컬럼 컬렉션은 setter 속성을 사용할 수 없습니다. add(), remove() 메소드를 사용해야 합니다. TODO: setter 속성 제거",
  "EL05150": "---- MetaTableColumnCollection ----",
  "EL05151": "add(any); any 는 'string' | [BaseColumn] 타입입니다. typeof any = '$1'",
  "EL05152": "addValue(name, value); name 은 'string' 타입입니다. typeof name = '$1'",
  "EL05160": "---- MetaViewColumnCollection ----",
  "EL05161": "add(any, refCol); refCol 값이 [BaseColumnCollection] 타입이 아닙니다.",
  "EL05162": "add(any, refCol); any 는 'string' | [BaseColumn] 타입입니다. typeof any = '$1'",
  "EL05163": "addValue(name, value, refCol); name 은 'string' 타입입니다. typeof name = '$1'",
  "EL05164": "addEntity(entity); entity 값이 [BaseEntity] 타입이 아닙니다.",
  "EL05200": "",
  "EL05210": "---- MetaRow ----",
  "EL05211": "$1.constructor(entity) 값이 [BaseEntity] 타입이 아닙니다.",
  "EL05212": "setObject(oGuid, origin); oGuid['_elem'].length = '$1' 길이와 oGuid['_key'].length = '$2' 길이가 서로 다릅니다.",
  "EL05213": "setObject(oGuid, origin); oGuid['_elem']['$1'] guid 를 찾을 수 없습니다. guid = '$2'",
  "EL05214": "changeKey(oldKey, newKey); 매개변수 '$1'이 'string' 타입이 아닙니다.",
  "EL05215": "changeKey(oldKey, newKey); 기존에 키가 존재하지 않습니다. '$1'",
  "EL05216": "changeKey(oldKey, newKey); 교체할 키가 기존키와 중복됩니다. '$1'",
  "EL05220": "---- MetaRowCollection ----",
  "EL05221": "target의 _entity 객체와 $1._onwer 객체가 같이야 합니다.",
  "EL05222": "insertAt(pos, row, isCheck); row 는 [MetaRow] 타입이 아닙니다.",
  "EL05223": "insertAt(pos, row, isCheck); row 의 _entity 객체와 $1._onwer 객체가 같이야 합니다.",
  "EL05224": "insertAt(pos, row, isCheck); row['$1'] 의 유효성 검사(valid)가 실패하였습니다. fail msg = '$2'",
  "EL05300": "---- base-entity.js ----",
  "EL05310": "---- property ----",
  "EL05311": "$1._mestaset 값은 [MetaSet] 타입이 아닙니다.",
  "EL05312": "$1.columns 속성을 재정의해야 합니다.",
  "EL05320": "---- private method :: _buildEntity, _readEntity, _readSchema - 14 ----",
  "EL05321": "_buildEntity(entity, cb, items); items['$1'] 가 'string' 타입이 아닙니다. typeof items['$1'] = '$2'",
  "EL05322": "_buildEntity(entity, cb, items); this.columns 에 '$1' 컬럼명이 존재하여 추가할 수 없습니다.",
  "EL05323": "_buildEntity(entity, cb, items); entity 에 대한 row 생성이 실패하였습니다.",
  "EL05324": "_readEntity(entity, opt); entity 가 [BaseEntity] 타입이 아닙니다.",
  "EL05325": "_readEntity(entity, opt); opt 가 'number' 타입이 아닙니다. typeof opt = '$1'",
  "EL05326": "_readEntity(entity, opt); entity 읽기가 실패하였습니다. opt = '$1'",
  "EL05327": "_readEntity(entity, opt); this.rows 가 존재하여 컬럼을 load 할 수 없습니다. opt = '$1'",
  "EL05328": "_readEntity(entity, opt); this.columns 에 '$1' 컬럼명이 존재하여 추가할 수 없습니다.",
  "EL05329": "_readSchema(obj, isRow, origin); obj._baseEntity guid를 찾을 수 없습니다. guid = '$1'",
  "EL0532A": "_readSchema(obj, isRow, origin); 스키마 읽기가 실패하였습니다.",
  "EL0532B": "_readSchema(obj, isRow, origin); this.rows 가 존재하여 컬럼을 추가 할 수 없습니다.",
  "EL0532C": "_readSchema(obj, isRow, origin); this.columns['$1'] guid를 찾을 수 없습니다. guid = '$2'",
  "EL0532D": "_readSchema(obj, isRow, origin); this.columns['$1']._entity guid를 찾을 수 없습니다. guid = '$2'",
  "EL0532E": "_readSchema(obj, isRow, origin); this.columns 에 '$1' 컬럼명이 존재하여 추가할 수 없습니다.",
  "EL05330": "---- method :: transformSchema(static), setValue, clone, select - 7, : getValue, clear, reset, newRow, getObject, setObject ----",
  "EL05331": "BaseEntity.transformSchema(oGuid); oGuid 는 스키마 객체가 아닙니다. oGuid = {columns: $1, rows: $2}",
  "EL05332": "BaseEntity.transformSchema(oGuid); 스키마 변환이 실패하였습니다.",
  "EL05333": "setValue(row); row 가 [MetaRow] 타입이 아닙니다.",
  "EL05334": "setValue(row); columns 에 row 설정이 실패하였습니다.",
  "EL05335": "select(filter, ...); MetaRegistry.namespace 에서 '$1' 가져오는데 싪패하였습니다.",
  "EL05336": "select(filter, ...); 조회가 실패하였습니다.",
  "EL05337": "clone() 은 추상메소드 입니다. 구현해야 합니다.",
  "EL05338": "validate(); 모든 컬럼이 MetaColumn 타입일 경우 유효성 검사를 수행할 수 있습니다. ",
  "EL05340": "---- merge, copy - 8 ----",
  "EL05341": "merge(target, opt, isMath); target 이 [BaseEntity] 타입이 아닙니다.",
  "EL05342": "merge(target, opt, isMath); opt 이 'number' 타입이 아닙니다. typeof opt = '$1'",
  "EL05343": "merge(target, opt, isMath); opt = 1, target.columns['$1'].name = '$2' 이 column name 에 존재합니다.",
  "EL05344": "merge(target, opt, isMath); opt = 1, target.columns['$1'].name = '$2' 이 column alias 에 존재합니다.",
  "EL05345": "merge(target, opt, isMath); opt = 3, target.columns['$1'].name = '$2' 이 columns name 에 존재합니다.",
  "EL05346": "merge(target, opt, isMath); opt = 3, target.columns['$1'].name = '$2' 이 columns alias 에 존재합니다.",
  "EL05347": "merge(target, opt, isMath); 병합이 실패하였습니다. opt = '$1'",
  "EL05348": "copy() 은 추상메소드 입니다. 구현해야 합니다.",
  "EL05350": "---- load, read, readSchema, readDate - 12 ----",
  "EL05351": "load(obj, parse); [BaseEntity] 타입의 obj 는 로드할 수 없습니다.",
  "EL05352": "load(obj, parse); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL05353": "load(obj, parse); 로드가 실패하였습니다.",
  "EL05354": "read(obj, opt); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL05355": "read(obj, opt); opt 이 'number' 타입이 아닙니다. typeof opt = '$1'",
  "EL05356": "read(obj, opt); opt 값은 범위(1 ~ 3)가 아닙니다. obj = '$1'",
  "EL05357": "read(obj, opt); 읽기가 실패하였습니다.",
  "EL05358": "readSchema(obj, isCreate, origin); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL05359": "readSchema(obj, isCreate, origin); obj 는 스키마 객체가 아닙니다. obj = {columns: $1, rows: $2}",
  "EL0535A": "readSchema(obj, isCreate, origin); 스카미 읽기가 실패하였습니다.",
  "EL0535B": "readData(obj); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL0535C": "readData(obj); obj 는 스키마 객체가 아닙니다. obj = {columns: $1, rows: $2}",
  "EL0535D": "readData(obj); 데이터 읽기가 실패하였습니다.",
  "EL05360": "---- output, write, writeSchema, writeData - 4 ----",
  "EL05361": "",
  "EL05400": "",
  "EL05410": "---- MetaTable ----",
  "EL05411": "$1.tableName 값은 'string' 타입이 아닙니다. typeof tableName = '$2'",
  "EL05412": "$1.columns 값이 [MetaTableColumnCollection] 타입이 아닙니다.",
  "EL05413": "$1.rows 존재하여 columns 을 설정할 수 없습니다. rows.count = '$2'",
  "EL05414": "setObject(oGuid, origin); oGuid.['_metaSet'] guid 를 찾을 수 없습니다. guid = '$1'",
  "EL05420": "---- MetaTableColleciton ----",
  "EL05421": "$1._baseType 값은 function 타입이 아닙니다. typeof _baseType = '$2'",
  "EL05422": "$1._baseType [MetaTable]의 prototype 이 연결되어 있어야 합니다.(상속)",
  "EL05423": "add(any); any 는 'string' | [MetaTable] 타입만 가능합니다. typeof any = '$1'",
  "EL05424": "add(any); tableName = '$1'이 기존에 존재합니다.",
  "EL05430": "---- MetaView ----",
  "EL05431": "$1.viewName 값은 'string' 타입이 아닙니다. typeof viewName = '$2'",
  "EL05432": "$1.columns 값은 [MetaViewColumnCollection] 타입이 아닙니다.",
  "EL05433": "$1.rows 존재하여 columns 을 설정할 수 없습니다. rows.count = '$2'",
  "EL05434": "$1._baseEntity 값은 [BaseEntity] 타입이 아닙니다.",
  "EL05435": "setObject(oGuid, origin); oGuid.['_metaSet'] guid 를 찾을 수 없습니다. guid = '$1'",
  "EL05436": "setObject(oGuid, origin); oGuid.['_baseEntity'] guid 를 찾을 수 없습니다. guid = '$1'",
  "EL05440": "---- MetaViewColleciton ----",
  "EL05441": "$1._baseType 값은 'function' 타입이 아닙니다. typeof _baseType = '$2'",
  "EL05442": "$1._baseType [MetaView]의 prototype 이 연결되어 있어야 합니다.(상속)",
  "EL05443": "add(obj, baseEntity); [MetaView] 타입의 obj와  baseEntity 를 동시에 입력할 수 없습니다.",
  "EL05444": "add(obj, baseEntity); baseEntity 는 [BaseEntity] 타입이 아닙니다.",
  "EL05445": "add(obj, baseEntity); obj 는 'string' | [MetaView] 타입만 가능합니다. typeof obj = '$1'",
  "EL05446": "add(obj, baseEntity); viewName = '$1'이 기존에 존재합니다.",
  "EL05450": "---- MetaSet ----",
  "EL05451": "$1.setName 값은 'string' 타입이 아닙니다. typeof setName = '$2'",
  "EL05452": "$1.autoChanges 값은 'boolean' 타입이 아닙니다. typeof setName = '$2'",
  "EL05453": "MetaSet.transformSchema(oGuid); oGuid 는 스키마 객체가 아닙니다. oGuid = {tables: .., views: ..}",
  "EL05454": "load(obj, parse); [MetaSet] 타입의 obj 는 로드할 수 없습니다.",
  "EL05455": "load(obj, parse); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL05456": "read(obj, opt); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL05457": "read(obj, opt); opt 이 'number' 타입이 아닙니다. typeof opt = '$1'",
  "EL05458": "readSchema(obj, isCreate); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL05459": "readSchema(obj, isCreate); obj 는 스키마 객체가 아닙니다. obj = {tables: $1, views: $2}",
  "EL0545A": "readData(obj); obj 가 'object' 타입이 아닙니다.(null제외) typeof obj = '$1'",
  "EL0545B": "readData(obj); obj 는 스키마 객체가 아닙니다. obj = {tables: $1, views: $2}"
}