{
  "1-1": {
    "type": "scene",
    "ele": "$.[objects,scenes][?(@.name=='장면 1')]",
    "point": 1.7,
    "desc": "문제 1/장면 1/[배경] 이름 설정 1/이름 변경 없음",
    "sort": 11
  },
  "1-2": {
    "type": "scene",
    "ele": "$.[objects,scenes][?(@.name=='나의 방')]",
    "point": 1.7,
    "desc": "문제 1/장면 2/[배경] 이름 설정 2/이름을 '나의 방'으로 변경하기",
    "sort": 12
  },
  "1-3": {
    "type": "scene",
    "ele": "$..objects[?(@.name=='놀이동산')]",
    "point": 1.7,
    "desc": "문제 1/놀이동산(1)/[개체] 이름 설정 1/이름을 '놀이동산'으로 변경하기",
    "sort": 13
  },
  "1-4": {
    "type": "scene",
    "ele": "$..objects[?(@.name=='백화점')]",
    "point": 1.7,
    "desc": "문제 1/건물(6)/[개체] 이름 설정 2/이름을 '백화점'으로 변경하기",
    "sort": 14
  },
  "1-5": {
    "type": "scene",
    "ele": "$..objects[?(@.name=='우리집')]",
    "point": 1.7,
    "desc": "문제 1/예쁜집/[개체] 이름 설정 3/이름을 '우리집'으로 변경하기",
    "sort": 15
  },
  "1-6": {
    "type": "scene",
    "ele": "$..objects[?(@.name=='어린이')]",
    "point": 1.7,
    "desc": "문제 1/어린이(2)/[개체] 이름 설정 4/이름을 '어린이'로 변경하기",
    "sort": 16
  },
  "2-0": {
    "type": "script",
    "ele": "$.objects[?(@.name=~'놀이동산')].script",
    "blocks": [
      {
        "ele": "$[0][0].type",
        "answer": "when_run_button_click",
        "point": 1.56,
        "desc": "문제 2/놀이동산/시작/시작하기 버튼을 클릭했을 때"
      },
      {
        "ele": [
          "$[0][1].type",
          "$[0][1].params[0].params[0]"
        ],
        "answer": [
          "set_scale_size",
          "100"
        ],
        "point": 1.56,
        "desc": "문제 2/놀이동산/[시작]의 세부 동작 1/크기를 '100' 으로 정하기",
        "type": "list"
      },
      {
        "ele": [
          "$[0][2].type",
          "$[0][2].params[0].params[0]",
          "$[0][2].params[1].params[0]"
        ],
        "answer": [
          "locate_xy",
          "-25",
          "80"
        ],
        "point": 1.56,
        "desc": "문제 2/놀이동산/[시작]의 세부 동작 2/x: '-25' y: '80' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": "$[1][0].type",
        "answer": "when_object_click",
        "point": 1.56,
        "desc": "문제 2/놀이동산/오브젝트/오브젝트를 클릭했을 때"
      },
      {
        "ele": "$[1][1].params[*].params",
        "answer": [
          "여기는 놀이동산!",
          "1"
        ],
        "point": 1.56,
        "desc": "문제 2/놀이동산/[오브젝트]의 세부 동작/'여기는 놀이동산!' 을 '1' 초 동안 '말하기'"
      }
    ],
    "sortBlock": [
      "when_run_button_click",
      "when_object_click"
    ],
    "sort": 102
  },
  "3-0": {
    "type": "script",
    "ele": "$.objects[?(@.name=~'백화점|건물')].script",
    "blocks": [
      {
        "ele": "$[0][0].type",
        "answer": "when_run_button_click",
        "point": 1.56,
        "desc": "문제 2/백화점/시작/시작하기 버튼을 클릭했을 때"
      },
      {
        "ele": [
          "$[0][1].type",
          "$[0][1].params[0].params[0]"
        ],
        "answer": [
          "set_scale_size",
          "80"
        ],
        "point": 1.56,
        "desc": "문제 2/백화점/[시작]의 세부 동작 1/크기를 '80' 으로 정하기",
        "type": "list"
      },
      {
        "ele": [
          "$[0][2].type",
          "$[0][2].params[0].params[0]",
          "$[0][2].params[1].params[0]"
        ],
        "answer": [
          "locate_xy",
          "170",
          "-80"
        ],
        "point": 1.56,
        "desc": "문제 2/백화점/[시작]의 세부 동작 2/x: '170' y: '-80' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": "$[1][0].type",
        "answer": "when_object_click",
        "point": 1.56,
        "desc": "문제 2/백화점/오브젝트/오브젝트를 클릭했을 때"
      },
      {
        "ele": "$[1][1].params[*].params",
        "answer": [
          "여기는 백화점!",
          "1"
        ],
        "point": 1.56,
        "desc": "문제 2/백화점/[오브젝트]의 세부 동작/'여기는 백화점!' 을 '1' 초 동안 '말하기'"
      }
    ],
    "sortBlock": [
      "when_run_button_click",
      "when_object_click"
    ],
    "sort": 107
  },
  "11-0": {
    "ele": "$.messages[?(@.name=='놀이동산')]",
    "point": 1.56,
    "desc": "문제 2/우리집/신호 1/'놀이동산' 신호 만들기",
    "type": "scene",
    "sort": 111
  },
  "12-0": {
    "ele": "$.messages[?(@.name=='백화점')]",
    "point": 1.56,
    "desc": "문제 2/우리집/신호 1/'백화점' 신호 만들기",
    "type": "scene",
    "sort": 111
  },
  "4-0": {
    "type": "script",
    "ele": "$.objects[?(@.name=~'우리집|예쁜')].script",
    "blocks": [
      {
        "ele": "$[0][0].type",
        "answer": "when_run_button_click",
        "point": 1.56,
        "desc": "문제 2/우리집/시작/시작하기 버튼을 클릭했을 때"
      },
      {
        "ele": [
          "$[0][1].type",
          "$[0][1].params[0].params[0]"
        ],
        "answer": [
          "set_scale_size",
          "110"
        ],
        "point": 1.56,
        "desc": "문제 2/우리집/[시작]의 세부 동작 1/크기를 '110' 으로 정하기 ",
        "type": "list"
      },
      {
        "ele": [
          "$[0][2].type",
          "$[0][2].params[0].params[0]",
          "$[0][2].params[1].params[0]"
        ],
        "answer": [
          "locate_xy",
          "-170",
          "-90"
        ],
        "point": 1.56,
        "desc": "문제 2/우리집/[시작]의 세부 동작 2/x: '-170' y: '-90' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": "$[1][0].type",
        "answer": "when_object_click",
        "point": 1.56,
        "desc": "문제 2/우리집/오브젝트/오브젝트를 클릭했을 때"
      },
      {
        "ele": [
          "$[1][1].type",
          "$[1][1].params[0].params[0]"
        ],
        "answer": [
          "ask_and_wait",
          "첫 번째로 방문할 장소는?"
        ],
        "point": 1.56,
        "desc": "문제 2/우리집/[오브젝트]의 세부 동작 1/'첫 번째로 방문할 장소는?' 을 묻고 대답 기다리기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][2].type",
          "$[1][2].params[0].params[0]"
        ],
        "answer": [
          "wait_second",
          "0.5"
        ],
        "point": 1.56,
        "desc": "문제 2/우리집/[오브젝트]의 세부 동작 2/'0.5' 초 기다리기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][3].type",
          "$[1][3].params[0].type",
          "$[1][3].params[0].params[0].type",
          "$[1][3].params[0].params[1]",
          "$[1][3].params[0].params[2].params[0]"
        ],
        "answer": [
          "_if",
          "boolean_basic_operator",
          "get_canvas_input_value",
          "EQUAL",
          "놀이동산"
        ],
        "point": 1.56,
        "desc": "문제 2/우리집/만일 1/만일 '대답' = '놀이동산' 이라면 ",
        "type": "list"
      },
      {
        "ele": "$[1][3].statements[0][0].type",
        "answer": "message_cast",
        "point": 1.56,
        "desc": "문제 2/우리집/[만일 1]의 세부 동작/'놀이동산' 신호 보내기"
      },
      {
        "ele": [
          "$[1][4].type",
          "$[1][4].params[0].type",
          "$[1][4].params[0].params[0].type",
          "$[1][4].params[0].params[1]",
          "$[1][4].params[0].params[2].params[0]"
        ],
        "answer": [
          "_if",
          "boolean_basic_operator",
          "get_canvas_input_value",
          "EQUAL",
          "백화점"
        ],
        "point": 1.56,
        "desc": "문제 2/우리집/만일 2/만일 '대답' = '백화점' 이라면 ",
        "type": "list"
      },
      {
        "ele": "$[1][4].statements[0][0].type",
        "answer": "message_cast",
        "point": 1.56,
        "desc": "문제 2/우리집/[만일 2]의 세부 동작/'백화점' 신호 보내기"
      }
    ],
    "sortBlock": [
      "when_run_button_click",
      "when_object_click"
    ],
    "sort": 112
  },
  "5-0": {
    "type": "script",
    "ele": "$.objects[?(@.name=~'어린이')].script",
    "blocks": [
      {
        "ele": "$[0][0].type",
        "answer": "when_run_button_click",
        "point": 1.56,
        "desc": "문제 2/어린이/시작/시작하기 버튼을 클릭했을 때"
      },
      {
        "ele": [
          "$[0][1].type",
          "$[0][1].params[0].params[0]"
        ],
        "answer": [
          "set_scale_size",
          "40"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[시작]의 세부 동작 1/크기를 '40' 으로 정하기 ",
        "type": "list"
      },
      {
        "ele": [
          "$[0][2].type",
          "$[0][2].params[0].params[0]",
          "$[0][2].params[1].params[0]"
        ],
        "answer": [
          "locate_xy",
          "-170",
          "-100"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[시작]의 세부 동작 2/x: '-170' y: '-100' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": [
          "$[0][3].type",
          "$[0][3].params[0]"
        ],
        "answer": [
          "repeat_inf",
          null
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/반복/계속 반복하기",
        "type": "list"
      },
      {
        "ele": [
          "$[0][3].statements[0][0].type",
          "$[0][3].statements[0][0].params[0].type",
          "$[0][3].statements[0][0].params[0].params[0]"
        ],
        "answer": [
          "_if",
          "is_press_some_key",
          "39"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/만일/만일 '오른쪽 화살표' 키가 눌러져 있는가? 라면",
        "type": "list"
      },
      {
        "ele": [
          "$[0][3].statements[0][0].statements[0][0].type",
          "$[0][3].statements[0][0].statements[0][0].params[0].params[0]",
          "$[0][3].statements[0][0].statements[0][0].params[1].params[0]"
        ],
        "answer": [
          "locate_xy",
          "-90",
          "-100"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[만일]의 세부 동작/x: '-90' y: '-100' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": "$[1][0].type",
        "answer": "when_message_cast",
        "point": 1.56,
        "desc": "문제 2/어린이/신호 1/'놀이동산' 신호를 받았을 때"
      },
      {
        "ele": [
          "$[1][1].type",
          "$[1][1].params[0].params[1]",
          "$[1][1].params[0].type",
          "$[1][1].params[0].params[2].params[0]"
        ],
        "answer": [
          "repeat_while_true",
          "$..objects[?(@.name=='놀이동산')].id",
          "reach_something",
          null
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/반복 1/'놀이동산' 에 닿았는가? '이 될 때까지' 반복하기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][1].statements[0][0].type",
          "$[1][1].statements[0][0].params[0].params[0]"
        ],
        "answer": [
          "locate_object_time",
          "2"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 1]의 세부 동작 1/'2' 초 동안 '놀이동산' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][1].statements[0][1].type",
          "$[1][1].statements[0][1].params[0].params[0]"
        ],
        "answer": [
          "wait_second",
          "0.5"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 1]의 세부 동작 2/'0.5' 초 기다리기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][2].type",
          "$[1][2].params[0].params[1]",
          "$[1][2].params[0].type",
          "$[1][2].params[0].params[2].params[0]"
        ],
        "answer": [
          "repeat_while_true",
          "$..objects[?(@.name=='백화점')].id",
          "reach_something",
          null
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/반복 2/'백화점' 에 닿았는가? '이 될 때까지' 반복하기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][2].statements[0][0].type",
          "$[1][2].statements[0][0].params[0].params[0]"
        ],
        "answer": [
          "locate_object_time",
          "2"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 2]의 세부 동작 1/'2' 초 동안 '백화점' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][2].statements[0][1].type",
          "$[1][2].statements[0][1].params[0].params[0]"
        ],
        "answer": [
          "wait_second",
          "1"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 2]의 세부 동작 2/'1' 초 기다리기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][3].type",
          "$[1][3].params[0].params[0]",
          "$[1][3].params[1].params[0]",
          "$[1][3].params[2].params[0]"
        ],
        "answer": [
          "locate_xy_time",
          "2",
          "-120",
          "-100"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[신호 1]의 세부 동작 1/'2' 초 동안 x: '-120' y: '-100' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": "$[1][4].params[*].params",
        "answer": [
          "집 도착!",
          "1"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[신호 1]의 세부 동작 2/'집 도착!' 을 '1' 초 동안 '말하기'"
      },
      {
        "ele": "$[1][5].type",
        "answer": "start_neighbor_scene",
        "point": 1.56,
        "desc": "문제 2/어린이/[신호 1]의 세부 동작 3/'다음' 장면 시작하기"
      },
      {
        "ele": "$[2][0].type",
        "answer": "when_message_cast",
        "point": 1.56,
        "desc": "문제 2/어린이/신호 2/'백화점' 신호를 받았을 때"
      },
      {
        "ele": [
          "$[2][1].type",
          "$[2][1].params[0].params[1]",
          "$[2][1].params[0].type",
          "$[2][1].params[0].params[2].params[0]"
        ],
        "answer": [
          "repeat_while_true",
          "$..objects[?(@.name=='백화점')].id",
          "reach_something",
          null
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/반복 1/'백화점' 에 닿았는가? '이 될 때까지' 반복하기",
        "type": "list"
      },
      {
        "ele": [
          "$[2][1].statements[0][0].type",
          "$[2][1].statements[0][0].params[0].params[0]"
        ],
        "answer": [
          "locate_object_time",
          "2"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 1]의 세부 동작 1/'2' 초 동안 '백화점' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": [
          "$[2][1].statements[0][1].type",
          "$[2][1].statements[0][1].params[0].params[0]"
        ],
        "answer": [
          "wait_second",
          "0.5"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 1]의 세부 동작 2/'0.5' 초 기다리기",
        "type": "list"
      },
      {
        "ele": [
          "$[2][2].type",
          "$[2][2].params[0].params[1]",
          "$[2][2].params[0].type",
          "$[2][2].params[0].params[2].params[0]"
        ],
        "answer": [
          "repeat_while_true",
          "$..objects[?(@.name=='놀이동산')].id",
          "reach_something",
          null
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/반복 2/'놀이동산' 에 닿았는가? '이 될 때까지' 반복하기",
        "type": "list"
      },
      {
        "ele": [
          "$[2][2].statements[0][0].type",
          "$[2][2].statements[0][0].params[0].params[0]"
        ],
        "answer": [
          "locate_object_time",
          "2"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 2]의 세부 동작 1/'2' 초 동안 '놀이동산' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": [
          "$[2][2].statements[0][1].type",
          "$[2][2].statements[0][1].params[0].params[0]"
        ],
        "answer": [
          "wait_second",
          "1"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[반복 2]의 세부 동작 2/'1' 초 기다리기",
        "type": "list"
      },
      {
        "ele": [
          "$[2][3].type",
          "$[2][3].params[0].params[0]",
          "$[2][3].params[1].params[0]",
          "$[2][3].params[2].params[0]"
        ],
        "answer": [
          "locate_xy_time",
          "2",
          "-120",
          "-100"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[신호 1]의 세부 동작 1/'2' 초 동안 x: '-120' y: '-100' 위치로 이동하기",
        "type": "list"
      },
      {
        "ele": "$[2][4].params[*].params",
        "answer": [
          "집 도착!",
          "1"
        ],
        "point": 1.56,
        "desc": "문제 2/어린이/[신호 1]의 세부 동작 2/'집 도착!' 을 '1' 초 동안 '말하기'"
      },
      {
        "ele": "$[2][5].type",
        "answer": "start_neighbor_scene",
        "point": 1.56,
        "desc": "문제 2/어린이/[신호 1]의 세부 동작 3/'다음' 장면 시작하기"
      }
    ],
    "sortBlock": [
      "when_run_button_click",
      "when_message_cast",
      "when_message_cast"
    ],
    "sort": 124
  },
  "6-0": {
    "type": "script",
    "ele": "$.objects[?(@.name=~'나의 방|장면 ')].script",
    "blocks": [
      {
        "ele": "$[0][0].type",
        "answer": "when_scene_start",
        "point": 1.56,
        "desc": "문제 2/나의 방/장면/장면이 시작되었을 때"
      },
      {
        "ele": [
          "$[0][1].type",
          "$[0][1].params[0]"
        ],
        "answer": [
          "set_visible_answer",
          "HIDE"
        ],
        "point": 1.56,
        "desc": "문제 2/나의 방/[장면]의 세부 동작 1/대답 '숨기기'",
        "type": "list"
      },
      {
        "ele": [
          "$[0][2].type",
          "$[0][2].params[0].params[0]",
          "$[0][2].params[1]"
        ],
        "answer": [
          "dialog",
          "my room!",
          "speak"
        ],
        "point": 1.56,
        "desc": "문제 2/나의 방/[장면]의 세부 동작 2/'my room!' 을 '말하기'",
        "type": "list"
      },
      {
        "ele": "$[1][0].type",
        "answer": "when_object_click",
        "point": 2,
        "desc": "문제 3/나의 방/오브젝트/오브젝트를 클릭했을 때"
      },
      {
        "ele": [
          "$[1][1].type",
          "$[1][1].params[0]",
          "$[1][1].params[1].params[0]"
        ],
        "answer": [
          "add_effect_amount",
          "brightness",
          "10"
        ],
        "point": 2,
        "desc": "문제 3/나의 방/[오브젝트]의 세부 동작 1/'밝기' 효과를 '10' 만큼 주기",
        "type": "list"
      },
      {
        "ele": [
          "$[1][2].type",
          "$[1][2].params[0].params[0]",
          "$[1][2].params[1]"
        ],
        "answer": [
          "dialog",
          "처음부터 다시 실행합니다.",
          "speak"
        ],
        "point": 2,
        "desc": "문제 3/나의 방/[오브젝트]의 세부 동작 2/'처음부터 다시 실행합니다.' 를 '말하기'",
        "type": "list"
      },
      {
        "ele": [
          "$[1][3].type",
          "$[1][3].params[0].params[0]"
        ],
        "answer": [
          "wait_second",
          "2"
        ],
        "point": 2,
        "desc": "문제 3/나의 방/[오브젝트]의 세부 동작 3/'2' 초 기다리기",
        "type": "list"
      },
      {
        "ele": "$[1][4].type",
        "answer": "restart_project",
        "point": 2,
        "desc": "문제 3/나의 방/[오브젝트]의 세부 동작 4/처음부터 다시 실행하기"
      }
    ],
    "sortBlock": [
      "when_scene_start",
      "when_object_click"
    ],
    "sort": 150
  }
}