{
  "kind": "executed_local_stdlib_experiment",
  "date": "2026-10-23",
  "python": "3.10.12",
  "scope": "Python form-style query parsing, no browser, web server or external service tested.",
  "rows": [
    {
      "input": "C++",
      "raw_query": "q=C++",
      "raw_decoded": {
        "q": [
          "C  "
        ]
      },
      "encoded_query": "q=C%2B%2B",
      "encoded_decoded": {
        "q": [
          "C++"
        ]
      }
    },
    {
      "input": "A B",
      "raw_query": "q=A B",
      "raw_decoded": {
        "q": [
          "A B"
        ]
      },
      "encoded_query": "q=A+B",
      "encoded_decoded": {
        "q": [
          "A B"
        ]
      }
    },
    {
      "input": "서울&부산",
      "raw_query": "q=서울&부산",
      "raw_decoded": {
        "q": [
          "서울"
        ],
        "부산": [
          ""
        ]
      },
      "encoded_query": "q=%EC%84%9C%EC%9A%B8%26%EB%B6%80%EC%82%B0",
      "encoded_decoded": {
        "q": [
          "서울&부산"
        ]
      }
    },
    {
      "input": "a=b",
      "raw_query": "q=a=b",
      "raw_decoded": {
        "q": [
          "a=b"
        ]
      },
      "encoded_query": "q=a%3Db",
      "encoded_decoded": {
        "q": [
          "a=b"
        ]
      }
    },
    {
      "input": "100%",
      "raw_query": "q=100%",
      "raw_decoded": {
        "q": [
          "100%"
        ]
      },
      "encoded_query": "q=100%25",
      "encoded_decoded": {
        "q": [
          "100%"
        ]
      }
    },
    {
      "input": "",
      "raw_query": "q=",
      "raw_decoded": {
        "q": [
          ""
        ]
      },
      "encoded_query": "q=",
      "encoded_decoded": {
        "q": [
          ""
        ]
      }
    }
  ],
  "blank": {
    "default": {},
    "preserved": {
      "q": [
        ""
      ]
    },
    "zero": {
      "q": [
        "0"
      ]
    },
    "duplicate": {
      "q": [
        "C++",
        "A B"
      ]
    }
  },
  "observed_at": "2026-10-23T05:11:04+00:00",
  "environment": {
    "python": "3.10.12",
    "method": "로컬 표준 라이브러리 · 외부 요청 없음"
  },
  "method": "여섯 원본 입력을 직접 연결·urlencode한 뒤 parse_qs로 읽고 왕복 일치 단언문 실행",
  "limits": "Python form-style query parsing, no browser, web server or external service tested.",
  "tables": {
    "query": {
      "headers": [
        "원본 입력",
        "직접 붙인 쿼리",
        "원시 파싱값",
        "urlencode 쿼리",
        "되돌린 값"
      ],
      "rows": [
        [
          "'C++'",
          "q=C++",
          "{\"q\":[\"C␠␠\"]}",
          "q=C%2B%2B",
          "{\"q\":[\"C++\"]}"
        ],
        [
          "'A B'",
          "q=A B",
          "{\"q\":[\"A␠B\"]}",
          "q=A+B",
          "{\"q\":[\"A␠B\"]}"
        ],
        [
          "'서울&부산'",
          "q=서울&부산",
          "{\"q\":[\"서울\"],\"부산\":[\"\"]}",
          "q=%EC%84%9C%EC%9A%B8%26%EB%B6%80%EC%82%B0",
          "{\"q\":[\"서울&부산\"]}"
        ],
        [
          "'a=b'",
          "q=a=b",
          "{\"q\":[\"a=b\"]}",
          "q=a%3Db",
          "{\"q\":[\"a=b\"]}"
        ],
        [
          "'100%'",
          "q=100%",
          "{\"q\":[\"100%\"]}",
          "q=100%25",
          "{\"q\":[\"100%\"]}"
        ],
        [
          "''",
          "q=",
          "{\"q\":[\"\"]}",
          "q=",
          "{\"q\":[\"\"]}"
        ]
      ]
    }
  }
}
