{
    "error": {
        "1": "Unexpected error when posting danmaku. Error info: $1",
        "2": "Unexpected loading error in loading resource '$1/$2'. Error info: $3",
        "3": "Syntax error in parsing CSS: Unexpected ':'. Col: $1. CSS string: '$2'",
        "4": "Syntax error in parsing CSS: Unexpected ';'. Col: $1. CSS string: '$2'",
        "5": "Syntax error in parsing CSS: Missing property name after '-'. Col: $1. CSS string: '$2'",
        "6": "Syntax error in parsing CSS: Unexpected end of css, expecting ':'. Col: $1. CSS string: '$2'",
        "7": "Syntax error in parsing CSS: Unexpected end of css, expecting property value. Col: $1. CSS string: '$2'",
        "8": "Post danmaku with not allowed css. Info: $1",
        "9": "Cannot initialize shader program. Error info: $1",
        "10": "Cannot compile $1 shader. Error info: $2",
        "11": "Cache depth cannot larger than 31.",
        "12": "Cannot move while status is not 'moving'. Call 'readyMove' first.",
        "13": "Cannot compile $1 shader. Error info: $2",
        "14": "",
        "15": "",
        "16": "Cannot find log message for $1 code $2.",
        "17": "Cannot use shader program for shader element that does not belong to it.",
        "18": "Cannot delete shader program for shader element that does not belong to it.",
        "19": "Cannot create MotaRenderer instance for nonexistent canvas.",
        "20": "Cannot create render element for tag '$1', since there's no registration for it.",
        "21": "Incorrect render prop type is delivered. key: '$1', expected type: '$2', delivered type: '$3'",
        "22": "Incorrect props for custom tag. Please ensure you have delivered 'item' prop and other required props.",
        "23": "Cannot get reader when fetching '$1'.",
        "24": "Cannot decode source type of '$1', since there is no registered decoder for that type.",
        "25": "Unknown audio type. Header: '$1'",
        "26": "Uncaught error when fetching stream data from '$1'. Error info: $2.",
        "1201": "Floor-damage extension needs 'floor-binder' extension as dependency."
    },
    "warn": {
        "1": "Resource with type of 'none' is loaded.",
        "2": "Repeat load of resource '$1/$2'.",
        "3": "Unknown danmaku tag: $1",
        "4": "Ignored a mismatched ']' in danmaku.",
        "5": "Repeat post danmaku.",
        "6": "Registered special danmaku element: $1.",
        "7": "Unknown special danmaku element: '$1'.",
        "8": "Incomplete render data is put. None will be filled to the lacked data.",
        "9": "Data transfered is partially (or totally) out of range. Overflowed data will be ignored.",
        "10": "Cannot resolve big image of enemy '$1'.",
        "11": "Cannot resolve material $1. Material not exists.",
        "12": "Cannot mark buffable with a non-number status. Key: '$1'.",
        "13": "Cannot set buff of non-number status. Key: '$1'.",
        "14": "Cannot add status of non-number status. Key: '$1'.",
        "15": "Cannot get item of a non-item block on loc: $1,$2,$3.",
        "16": "Override repeated state key: '$1'.",
        "17": "Floor-damage extension needs 'floor-binder' extension as dependency.",
        "18": "Uncaught error in posting like info for danmaku. Danmaku id: $1.",
        "19": "Repeat light id: '$1'.",
        "20": "Cannot apply animation to camera operation that does not belong to it.",
        "21": "Cannot apply transition to camera operation that does not belong to it.",
        "22": "There is already an active camera for delivered render item. Consider using 'Camera.for' or disable the active camera to avoid some exceptions.",
        "23": "Render item with id of '$1' has already exists. Please avoid repeat id since it may cause issues when use 'getElementById'.",
        "24": "Uniform block can only be used in glsl version es 300.",
        "25": "Cannot activate weather since there's no weather named '$1'.",
        "26": "Cannot set attribute when only element number specified. Use 'pointer' or 'pointerI' instead.",
        "27": "Cannot vertex attribute integer point when specified as float. Use 'set' or 'pointer' instead.",
        "28": "Redefinition of shader $1: '$2'",
        "29": "Cannot define new texture since texture index is larger than max texture count.",
        "30": "Cannot use indices named $1 since no definition for it. Please define it in advance.",
        "31": "Cannot use indices since the indices instance is not belong to the program.",
        "32": "Sub-image exceeds texture dimensions, auto adjusting size.",
        "33": "Cannot modify MotaOffscreenCanvas2D that is freezed.",
        "34": "Repeated render tag registration: '$1'.",
        "35": "Cannot append child on plain render item, please ensure you have overrided 'appendChild' method in your own element.",
        "36": "Cannot remove child on plain render item, please ensure you have overrided 'removeChild' method in your own element.",
        "37": "Cannot execute 'requestSort' on plain render item, please ensure you have overrided 'requestSort' method in your own element.",
        "38": "Using plain text in jsx is strongly not recommended, since you can hardly modify its attributes. Consider using Text element instead.",
        "39": "Plain text is not supported outside Text element.",
        "40": "Cannot return canvas that is not provided by this pool.",
        "41": "Width of text content components must be positive. receive: $1",
        "42": "Repeated Textbox id: '$1'.",
        "43": "Cannot set icon of '$1', since it does not exists. Please ensure you have delivered correct icon id or number.",
        "44": "Unexpected end when loading stream audio, reason: '$1'",
        "45": "Audio route with id of '$1' has already existed. New route will override old route.",
        "46": "Cannot pipe new StreamReader object when stream is loading.",
        "47": "Audio stream decoder for audio type '$1' has already existed.",
        "48": "Sample rate in stream audio must be constant.",
        "49": "Repeated patch for '$1', key: '$2'.",
        "50": "Unknown audio extension name: '$1'",
        "51": "Cannot decode sound '$1', since audio file may not supported by 2.b.",
        "52": "Cannot play sound '$1', since there is no added data named it.",
        "53": "Cannot $1 audio route '$2', since there is not added route named it.",
        "54": "Missing start tag for '$1', index: $2.",
        "55": "Unchildable tag '$1' should follow with param.",
        "56": "Method '$1' has been deprecated. Consider using '$2' instead.",
        "57": "Repeated UI controller id '$1'.",
        "58": "Fail to set ellipse round rect, since length of 'ellipse' property should only be 2, 4, 6 or 8. delivered: $1",
        "59": "Unknown icon '$1' in parsing text content.",
        "60": "Repeated Tip id: '$1'.",
        "61": "Unexpected recursive call of $1.update?$2 in render function. Please ensure you have to do this, if you do, ignore this warn.",
        "62": "Recursive fallback fonts in '$1'.",
        "63": "Uncaught promise error in waiting box component. Error reason: $1",
        "64": "Text node type and block type mismatch: '$1' vs '$2'",
        "65": "Cannot bind a weather controller twice.",
        "1001": "Item-detail extension needs 'floor-binder' and 'floor-damage' extension as dependency."
    }
}
