rea/website/locales/ko/messages.po

13814 lines
555 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#
msgid ""
msgstr ""
"Project-Id-Version: REA website\n"
"Language: ko\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Initial-Translation: Machine-assisted baseline; see website/locales/README.md for review workflow\n"
#: website/public/blog/index.html:103
msgctxt "page:blog/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../">
#. {ph1}: </a>
#: website/public/blog/index.html:194
#, python-brace-format
msgctxt "page:blog/index.html"
msgid "{ph0}Home{ph1} / Blog"
msgstr "{ph0}홈{ph1} /블로그"
#: website/public/blog/index.html:195
msgctxt "page:blog/index.html"
msgid "Blog."
msgstr "블로그"
#: website/public/blog/index.html:196
msgctxt "page:blog/index.html"
msgid "Thoughts on reverse engineering."
msgstr "리버스 엔지니어링에 대한 생각."
#. {ph0}: <br />
#: website/public/blog/index.html:214
#, python-brace-format
msgctxt "page:blog/index.html"
msgid "Game reconstruction{ph0}Essay"
msgstr "게임 재구성{ph0}에세이"
#: website/public/blog/index.html:216
msgctxt "page:blog/index.html"
msgid "The industrial revolution in reverse engineering"
msgstr "리버스 엔지니어링의 산업 혁명"
#: website/public/blog/index.html:217
msgctxt "page:blog/index.html"
msgid ""
"What manual RE and reconstructing TH08, TH095 and TH04 taught me about "
"agents, verification and knowledge that compounds across projects."
msgstr "어떤 매뉴얼 다시고 재구성TH08,TH095및TH04에 대해 가르쳐 에이전트,검증 및 지는 화합물에 걸쳐 프로젝트입니다."
#: website/public/blog/index.html:207 website/public/blog/index.html:222
msgctxt "page:blog/index.html"
msgid "Read the article"
msgstr "기사 읽기"
#: website/public/blog/index.html:225
msgctxt "page:blog/index.html"
msgid "By N0zoM1z0 · 10 October 2026"
msgstr "여N0zoM1z0·10 월 2026"
#. {ph0}: <span aria-hidden="true">
#. {ph1}: </span>
#: website/public/blog/index.html:244
#: website/public/blog/reverse-engineering-models/index.html:883
#: website/public/blog/touhou-reconstruction/index.html:1080
#: website/public/examples/dino-lab/index.html:475
#: website/public/faq/index.html:573
#: website/public/first-investigation/index.html:523
#: website/public/get-started/index.html:882
#: website/public/guides/browser/index.html:507
#: website/public/guides/index.html:282
#: website/public/guides/javascript/index.html:503
#: website/public/guides/native/index.html:509 website/public/index.html:1191
#: website/public/showcase/aegis/index.html:808
#: website/public/showcase/ctf/index.html:777
#: website/public/showcase/dx-ball/index.html:785
#: website/public/showcase/index.html:317
#: website/public/showcase/notion/index.html:631
#: website/public/showcase/th04/index.html:800
#, python-brace-format
msgctxt "shared"
msgid "{ph0}↑{ph1} Top"
msgstr "{ph0}↑{ph1} 상단"
#: website/public/blog/index.html:6
msgctxt "page:blog/index.html"
msgid "REA Blog — Thoughts on Reverse Engineering"
msgstr "REA블로그—에 대한 생각을 리버스 엔지니어링"
#: website/public/blog/index.html:7
msgctxt "page:blog/index.html"
msgid ""
"Thoughts on reverse engineering, drawing on practical experience with REA "
"and AI agents."
msgstr "리버스 엔지니어링에 대한 생각,실제 경험을 바탕으로 REA 그리고 인공지능 요원들도"
#: website/public/blog/index.html:75 website/public/blog/index.html:88
#: website/public/blog/reverse-engineering-models/index.html:75
#: website/public/blog/reverse-engineering-models/index.html:88
#: website/public/blog/touhou-reconstruction/index.html:75
#: website/public/blog/touhou-reconstruction/index.html:88
#: website/public/examples/dino-lab/index.html:75
#: website/public/examples/dino-lab/index.html:88
#: website/public/faq/index.html:75 website/public/faq/index.html:88
#: website/public/first-investigation/index.html:75
#: website/public/first-investigation/index.html:88
#: website/public/get-started/index.html:75
#: website/public/get-started/index.html:88
#: website/public/guides/browser/index.html:75
#: website/public/guides/browser/index.html:88
#: website/public/guides/index.html:75 website/public/guides/index.html:88
#: website/public/guides/javascript/index.html:75
#: website/public/guides/javascript/index.html:88
#: website/public/guides/native/index.html:75
#: website/public/guides/native/index.html:88 website/public/index.html:75
#: website/public/index.html:88 website/public/showcase/aegis/index.html:75
#: website/public/showcase/aegis/index.html:88
#: website/public/showcase/ctf/index.html:75
#: website/public/showcase/ctf/index.html:88
#: website/public/showcase/dx-ball/index.html:75
#: website/public/showcase/dx-ball/index.html:88
#: website/public/showcase/index.html:75 website/public/showcase/index.html:88
#: website/public/showcase/notion/index.html:75
#: website/public/showcase/notion/index.html:88
#: website/public/showcase/th04/index.html:75
#: website/public/showcase/th04/index.html:88
msgctxt "shared"
msgid ""
"REA — Find out how software works. Reverse engineering with your coding "
"agent."
msgstr "REA -소프트웨어가 어떻게 작동하는지 알아보십시오. 코딩 에이전트로 리버스 엔지니어링."
#: website/public/blog/index.html:108
#: website/public/blog/reverse-engineering-models/index.html:108
#: website/public/blog/touhou-reconstruction/index.html:108
#: website/public/examples/dino-lab/index.html:109
#: website/public/faq/index.html:108
#: website/public/first-investigation/index.html:108
#: website/public/get-started/index.html:108
#: website/public/guides/browser/index.html:108
#: website/public/guides/index.html:108
#: website/public/guides/javascript/index.html:108
#: website/public/guides/native/index.html:108 website/public/index.html:110
#: website/public/showcase/aegis/index.html:109
#: website/public/showcase/ctf/index.html:108
#: website/public/showcase/dx-ball/index.html:108
#: website/public/showcase/index.html:108
#: website/public/showcase/notion/index.html:108
#: website/public/showcase/th04/index.html:108
msgctxt "shared"
msgid "REA home"
msgstr "REA 홈"
#: website/public/blog/index.html:112
#: website/public/blog/reverse-engineering-models/index.html:112
#: website/public/blog/touhou-reconstruction/index.html:112
#: website/public/examples/dino-lab/index.html:113
#: website/public/faq/index.html:112
#: website/public/first-investigation/index.html:112
#: website/public/get-started/index.html:112
#: website/public/guides/browser/index.html:112
#: website/public/guides/index.html:112
#: website/public/guides/javascript/index.html:112
#: website/public/guides/native/index.html:112 website/public/index.html:114
#: website/public/showcase/aegis/index.html:113
#: website/public/showcase/ctf/index.html:112
#: website/public/showcase/dx-ball/index.html:112
#: website/public/showcase/index.html:112
#: website/public/showcase/notion/index.html:112
#: website/public/showcase/th04/index.html:112
msgctxt "shared"
msgid "Main navigation"
msgstr "주 메뉴"
#: website/public/blog/index.html:130
#: website/public/blog/reverse-engineering-models/index.html:130
#: website/public/blog/touhou-reconstruction/index.html:130
#: website/public/examples/dino-lab/index.html:131
#: website/public/faq/index.html:130
#: website/public/first-investigation/index.html:130
#: website/public/get-started/index.html:130
#: website/public/guides/browser/index.html:130
#: website/public/guides/index.html:130
#: website/public/guides/javascript/index.html:130
#: website/public/guides/native/index.html:130 website/public/index.html:132
#: website/public/showcase/aegis/index.html:131
#: website/public/showcase/ctf/index.html:130
#: website/public/showcase/dx-ball/index.html:130
#: website/public/showcase/index.html:130
#: website/public/showcase/notion/index.html:130
#: website/public/showcase/th04/index.html:130
msgctxt "shared"
msgid "REA on GitHub"
msgstr "GitHub에서 REA 보기"
#: website/public/blog/index.html:150
#: website/public/blog/reverse-engineering-models/index.html:150
#: website/public/blog/touhou-reconstruction/index.html:150
#: website/public/examples/dino-lab/index.html:151
#: website/public/faq/index.html:150
#: website/public/first-investigation/index.html:150
#: website/public/get-started/index.html:150
#: website/public/guides/browser/index.html:150
#: website/public/guides/index.html:150
#: website/public/guides/javascript/index.html:150
#: website/public/guides/native/index.html:150 website/public/index.html:152
#: website/public/showcase/aegis/index.html:151
#: website/public/showcase/ctf/index.html:150
#: website/public/showcase/dx-ball/index.html:150
#: website/public/showcase/index.html:150
#: website/public/showcase/notion/index.html:150
#: website/public/showcase/th04/index.html:150
msgctxt "shared"
msgid "Join REA on Discord"
msgstr "REA Discord 참여"
#: website/public/blog/index.html:169
#: website/public/blog/reverse-engineering-models/index.html:169
#: website/public/blog/touhou-reconstruction/index.html:169
#: website/public/examples/dino-lab/index.html:170
#: website/public/faq/index.html:169
#: website/public/first-investigation/index.html:169
#: website/public/get-started/index.html:169
#: website/public/guides/browser/index.html:169
#: website/public/guides/index.html:169
#: website/public/guides/javascript/index.html:169
#: website/public/guides/native/index.html:169 website/public/index.html:171
#: website/public/showcase/aegis/index.html:170
#: website/public/showcase/ctf/index.html:169
#: website/public/showcase/dx-ball/index.html:169
#: website/public/showcase/index.html:169
#: website/public/showcase/notion/index.html:169
#: website/public/showcase/th04/index.html:169
msgctxt "shared"
msgid "Follow REA on X"
msgstr "X에서 REA 팔로우"
#: website/public/blog/index.html:244
msgctxt "page:blog/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/blog/touhou-reconstruction/index.html:103
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/blog/touhou-reconstruction/index.html:194
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}Home{ph1} / {ph2}Blog{ph3} / Touhou reconstruction"
msgstr "{ph0}홈{ph1} / {ph2}블로그{ph3} /동방 재건"
#: website/public/blog/touhou-reconstruction/index.html:198
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Essay · Touhou reconstruction"
msgstr "에세이*동방 재건"
#: website/public/blog/touhou-reconstruction/index.html:199
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "The industrial revolution in reverse engineering."
msgstr "리버스 엔지니어링의 산업 혁명."
#: website/public/blog/touhou-reconstruction/index.html:200
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "By N0zoM1z0 · 10 October 2026"
msgstr "여N0zoM1z0·10 월 2026"
#: website/public/blog/touhou-reconstruction/index.html:202
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Takeaway"
msgstr "핵심 요점"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:204
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Give agents autonomy over the investigation.{ph1} Set a clear goal and "
"acceptance criteria, then let the agent decide what to try next."
msgstr ""
"{ph0}조사에 대해 에이전트에게 자율성을 부여합니다.{ph1} 명확한 목표와 수용 기준을 설정 한 다음 에이전트가 다음에 무엇을 "
"시도할지 결정하게하십시오."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:209
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Use the repository and Git as working memory.{ph1} Keep the reasoning "
"with the code. Git checkpoints let the next session continue after the "
"conversation ends."
msgstr ""
"{ph0}저장소 및 자식을 작업 메모리로 사용하십시오.{ph1} 코드와 함께 추론을 유지. 자식 체크 포인트는 대화가 끝난 후 다음 "
"세션이 계속 할 수 있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:214
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Let evidence decide what you claim.{ph1} A confident explanation still "
"needs testing. “Unknown” is a valid answer when the evidence is incomplete."
msgstr ""
"{ph0}증거가 당신이 주장하는 것을 결정하게하십시오.{ph1} 자신감 있는 설명은 여전히 테스트가 필요합니다. \"알 수 없음\"은 "
"증거가 불완전 할 때 유효한 답변입니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:219
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Test the oracle too.{ph1} Try cases it should reject. If it misses a "
"bug, revisit the earlier results that depended on it."
msgstr ""
"{ph0}검증 참조(오라클)도 테스트하십시오.{ph1} 거부해야 할 경우를 시도하십시오. 이 버그를 놓친 경우,그것에 의존 이전 결과를 "
"다시 방문하십시오."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:224
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}We are in the early days of RE's industrial revolution.{ph1} The "
"methods are still taking shape. There is plenty left to explore."
msgstr ""
"{ph0}우리는 산업혁명의 초기 단계에 있습니다.{ph1} 그 방법들은 여전히 형성되고 있습니다. 탐험 할 것이 많이 남아 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:236
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "How experience compounds"
msgstr "어떻게 경험 화합물"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:237
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}Human direction{ph1} · Goal and acceptance criteria"
msgstr "{ph0}인간의 방향{ph1} *목표 및 수용 기준"
#: website/public/blog/touhou-reconstruction/index.html:325
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Autonomy"
msgstr "자율성"
#: website/public/blog/touhou-reconstruction/index.html:326
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Agent"
msgstr "에이전트"
#. {ph0}: <br />
#: website/public/blog/touhou-reconstruction/index.html:327
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Choose an experiment.{ph0}Propose a hypothesis."
msgstr "실험을 선택하십시오.{ph0}가설을 제안합니다."
#: website/public/blog/touhou-reconstruction/index.html:330
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Verification"
msgstr "검증"
#: website/public/blog/touhou-reconstruction/index.html:331
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Oracle"
msgstr "검증 기준"
#. {ph0}: <br />
#: website/public/blog/touhou-reconstruction/index.html:332
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Test against a{ph0}concrete reference."
msgstr "에 대한 테스트{ph0}구체적인 참조."
#: website/public/blog/touhou-reconstruction/index.html:335
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Repository"
msgstr "저장소"
#: website/public/blog/touhou-reconstruction/index.html:336
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Working memory"
msgstr "작업 기억"
#. {ph0}: <br />
#: website/public/blog/touhou-reconstruction/index.html:337
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Code, evidence,{ph0}checks and lessons."
msgstr "코드,증거,{ph0}수표 및 수업."
#. {ph0}: <br />
#. {ph1}: <strong>
#. {ph2}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:339
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Mismatch{ph0}{ph1}Revise the hypothesis{ph2}"
msgstr "불일치{ph0}{ph1}가설 수정{ph2}"
#. {ph0}: <br />
#. {ph1}: <strong>
#. {ph2}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:342
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "A better{ph0}{ph1}starting point{ph2}"
msgstr "더 나은{ph0}{ph1}시작 지점{ph2}"
#: website/public/blog/touhou-reconstruction/index.html:345
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Reuse"
msgstr "재사용"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:346
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}Pass{ph1} · Keep the result and its evidence"
msgstr "{ph0}패스{ph1} *결과 및 증거 유지"
#: website/public/blog/touhou-reconstruction/index.html:358
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Each project leaves the next with a better starting point. That includes "
"fixing the checks when we discover a gap."
msgstr "각 프로젝트는 더 나은 출발점으로 다음 프로젝트를 떠납니다. 그것은 우리가 간격을 발견할 때 체크를 고치는 포함한다."
#: website/public/blog/touhou-reconstruction/index.html:365
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "In this article"
msgstr "이 기사 에서"
#. {ph0}: <a href="#august">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:367
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}August 2026{ph1}"
msgstr "{ph0}2026 년 8 월{ph1}"
#. {ph0}: <a href="#th08">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:368
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}TH08: the continuation{ph1}"
msgstr "{ph0}TH08:계속{ph1}"
#. {ph0}: <a href="#different-approaches">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:369
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}Two approaches{ph1}"
msgstr "{ph0}두 가지 접근법{ph1}"
#. {ph0}: <a href="#th095">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:370
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}TH095: compounding{ph1}"
msgstr "{ph0}TH095:합성{ph1}"
#. {ph0}: <a href="#th04">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:371
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}TH04: across architectures{ph1}"
msgstr "{ph0}TH04:아키텍처 전반에 걸쳐{ph1}"
#. {ph0}: <a href="#semantic-reconstruction">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:372
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}From exact to readable{ph1}"
msgstr "{ph0}정확한 것부터 읽을 수있는 것까지{ph1}"
#. {ph0}: <a href="#industrial-shift">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:375
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}The industrial shift{ph1}"
msgstr "{ph0}산업 변화{ph1}"
#. {ph0}: <a href="#possibilities">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:376
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}What becomes possible{ph1}"
msgstr "{ph0}가능한 것{ph1}"
#: website/public/blog/touhou-reconstruction/index.html:381
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "What changed in August 2026"
msgstr "2026 년 8 월에 변경된 사항"
#: website/public/blog/touhou-reconstruction/index.html:382
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Before this work, I had done a lot of manual reverse engineering. I would "
"inspect a function until I had an explanation, then test that explanation "
"against the program. Getting further meant spending more of my own time on "
"the next function. It also meant keeping an increasingly large picture in my"
" head."
msgstr ""
"이 작업을하기 전에 수동 리버스 엔지니어링을 많이했습니다. 나는 설명이 될 때까지 함수를 검사 한 다음 그 설명을 프로그램에 대해 테스트"
" 할 것입니다. 더 얻는 것은 다음 기능에 내 자신의 시간을 더 많이 보내는 것을 의미했습니다. 그것은 또한 내 머리 속에 점점 더 큰 "
"그림을 유지하는 것을 의미했습니다."
#: website/public/blog/touhou-reconstruction/index.html:389
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Most of my RE work is on games. I reconstruct them so their behavior can be "
"understood and eventually carried into a port or a mod. That is the "
"experience behind this article. The method can be useful elsewhere, but each"
" field needs to establish what it can check against a reliable reference."
msgstr ""
"내 재 작업의 대부분은 게임에. 나는 그들의 행동을 이해하고 결국 소프트웨어 포트 또는 모드로 운반 할 수 있도록 재구성합니다. 즉,이 "
"문서의 뒤에 경험이다. 이 방법은 다른 곳에서 유용 할 수 있지만 각 필드는 신뢰할 수있는 참조에 대해 확인할 수있는 것을 "
"설정해야합니다."
#: website/public/blog/touhou-reconstruction/index.html:396
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"In August 2026, I started exploring agent-driven RE seriously. I wanted to "
"see how far an agent could get with access to the program and ordinary "
"development tools. Touhou reconstruction gave me a substantial project in "
"which to find out."
msgstr ""
"8 월 2026 에서 에이전트 중심의 재를 진지하게 탐구하기 시작했습니다. 나는 에이전트가 프로그램 및 일반 개발 도구에 액세스 할 "
"수있는 방법을 멀리보고 싶었다. 동방 재건은 저에게 알아낼 수 있는 상당한 프로젝트를 주었습니다."
#: website/public/blog/touhou-reconstruction/index.html:402
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The early progress was startling. An investigation could keep moving without"
" me choosing every individual step. A failed comparison might send the agent"
" to another caller. It could write a small diagnostic and use the result to "
"decide what to try next. Giving it that freedom made a difference: I could "
"spend more attention on the project's direction and on whether its checks "
"were trustworthy."
msgstr ""
"초기 진전은 놀라웠습니다. 조사는 내가 모든 개별 단계를 선택하지 않고 계속 움직일 수 있습니다. 실패한 비교는 에이전트를 다른 호출 "
"함수로 보낼 수 있습니다. 그것은 작은 진단을 작성하고 그 결과를 사용하여 다음에 무엇을 시도할지 결정할 수 있습니다. 그 자유를 주는 "
"것은 변화를 가져왔습니다.저는 프로젝트의 방향과 그 수표가 신뢰할 수 있는지에 더 많은 관심을 기울일 수 있었습니다."
#: website/public/blog/touhou-reconstruction/index.html:411
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The pace got my attention first. Then I began wondering what would survive "
"beyond the current project. Would the next game benefit from everything we "
"had just learned?"
msgstr ""
"속도는 먼저 내 관심을 얻었다. 그런 다음 현재 프로젝트를 넘어 생존 할 것이 무엇인지 궁금해하기 시작했습니다. 다음 게임은 우리가 방금"
" 배운 모든 것에서 이익을 얻을 수 있습니까?"
#: website/public/blog/touhou-reconstruction/index.html:418
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "TH08: building on human work"
msgstr "TH08:건물에서 인간의 작업"
#. {ph0}: <a href="https://github.com/N0zoM1z0/th08">
#. {ph1}: </a>
#. {ph2}: <a href="https://github.com/GensokyoClub/th08" >
#. {ph3}: </a >
#: website/public/blog/touhou-reconstruction/index.html:419
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}TH08{ph1}, Imperishable Night, began as a continuation of "
"{ph2}GensokyoClub's reconstruction{ph3}. Their public source gave me a "
"substantial foundation. It came with knowledge of the build and a history of"
" contributions that I preserved in the continuation."
msgstr ""
"{ph0}TH08{ph1},불멸의 밤,의 연속으로 시작 {ph2}GensokyoClub의 재건{ph3}. 그들의 공개 소스는 나에게 "
"상당한 기초를 주었다. 그것은 건물의 지식과 내가 계속에서 보존 한 기여의 역사와 함께 왔습니다."
#: website/public/blog/touhou-reconstruction/index.html:428
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The imported history ends at the public 10 August checkpoint. My independent"
" continuation began on 13 August. By 19 August, the ledger recorded source "
"for all 1,107 identified game functions."
msgstr ""
"수입된 역사는 8 월 10 일 공공 검문소에서 끝납니다. 나의 독립적 인 연속은 8 월 13 일에 시작되었습니다. 8 월 19 "
"일까지,원장은 1,107 개의 확인된 게임 기능에 대한 소스를 기록했습니다."
#: website/public/blog/touhou-reconstruction/index.html:433
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"A playable Linux reconstruction port was committed on 24 August, roughly "
"eleven days after the continuation began. A Web edition followed. The native"
" Linux 64-bit release arrived on 30 August."
msgstr ""
"재생 가능한 Linux 재건 항구는 계속이 시작된 지 약 11 일 후인 8 월 24 일에 착공되었다. 웹 에디션이 이어졌습니다. 원주민 "
"Linux 64 비트 릴리스는 8 월 30 일에 도착했다."
#: website/public/blog/touhou-reconstruction/index.html:438
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"What struck me was that the work had reached a program people could run. "
"Getting there required following problems beyond an individual function. "
"Even when two functions looked correct in isolation, they could accidentally"
" use separate copies of state that should have been shared."
msgstr ""
"저를 놀라게 한 것은 그 작업이 사람들이 실행할 수 있는 프로그램에 도달했다는 것입니다. 거기에 도착하는 것은 개별 기능을 넘어 다음과 "
"같은 문제가 필요했습니다. 두 함수가 분리되어 올바르게 보였을 때에도,그들은 우연히 공유되어야 할 상태의 별도의 복사본을 사용할 수 "
"있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:445
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"This made reference checks central to the work. I call them "
"{ph0}oracles{ph1}. A code comparison can tell us whether a reconstructed "
"function reproduces the original instructions. A runtime check can tell us "
"whether an exercised route reaches the expected state. The agent proposes an"
" explanation and tests it; a mismatch gives it something specific to "
"investigate."
msgstr ""
"이것은 참조 검사를 작업의 중심으로 만들었습니다. 나는 그들을 부른다 {ph0}검증 참조(오라클){ph1}. 코드 비교를 통해 재구성된 "
"함수가 원래의 명령어를 재현하는지 알 수 있습니다. 런타임 검사는 실행된 경로가 예상 상태에 도달하는지 여부를 알려줍니다. 에이전트는 "
"설명을 제안하고 테스트합니다.불일치로 인해 조사할 수 있는 특별한 것이 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:453
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "An exact match with the wrong constant"
msgstr "잘못된 상수와 정확히 일치"
#: website/public/blog/touhou-reconstruction/index.html:454
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"An oracle is software someone wrote. TH08 gave me a clear reminder of how "
"much can depend on that software."
msgstr "오라클은 누군가가 쓴 소프트웨어입니다. TH08 그 소프트웨어에 얼마나 의존 할 수 있는지에 대한 명확한 알림을주었습니다."
#. {ph0}: <code>0.0</code>
#. {ph1}: <code>128.0</code>
#: website/public/blog/touhou-reconstruction/index.html:458
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"In September, a bug reported by a downstream Switch port led back to item "
"auto-collection. The reconstructed source checked player power against "
"{ph0}. The original used {ph1}, the maximum-power threshold."
msgstr ""
"9 월,다운스트림 스위치 포트에서 보고된 버그로 인해 아이템 자동 수집이 다시 시작되었습니다. 재구성된 소스는 플레이어의 힘을 "
"{ph0}. 원래 사용 {ph1},최대 전력 임계값."
#: website/public/blog/touhou-reconstruction/index.html:464
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Normal power is non-negative, so the reconstructed power check was "
"effectively always satisfied. Above the collection line, the game could "
"attract items without requiring maximum power. The other exceptions in the "
"condition were correct. This one constant changed the behavior."
msgstr ""
"정상적인 전력은 음이 아니므로 재구성된 전력 검사는 항상 효과적으로 만족되었습니다. 수집 라인 위에,게임은 최대 전력을 필요로하지 않고 "
"아이템을 유치 할 수 있습니다. 조건의 다른 예외는 정확했습니다. 이 상수는 동작을 변경했습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:471
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}Yet the function had already passed the exact comparison.{ph1}"
msgstr "{ph0}그러나 함수는 이미 정확한 비교를 통과했습니다.{ph1}"
#: website/public/blog/touhou-reconstruction/index.html:477
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"A rebuild can put a constant at a different address. The comparison tool "
"accounted for that by adjusting addresses in the compiled instructions "
"before comparing them with the original. But it never checked the floating-"
"point value stored at the referenced address."
msgstr ""
"재구성은 다른 주소에 상수를 넣을 수 있습니다. 비교 도구는 컴파일된 명령어의 주소를 원본과 비교하기 전에 조정함으로써 이를 "
"설명했습니다. 그러나 참조 된 주소에 저장된 부동 소수점 값을 확인하지 않았습니다."
#. {ph0}: <code>128.0</code>
#. {ph1}: <code>0.0</code>
#: website/public/blog/touhou-reconstruction/index.html:484
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"That left a hole in the check. It could point the reconstructed instruction "
"at the original's {ph0} while the source still said {ph1}. The instruction "
"bytes matched. The source meant something different."
msgstr ""
"수표에 구멍이 남았어요 그것은 원래의 재구성 된 명령을 가리킬 수 있습니다 {ph0} 소식통은 여전히 {ph1}. 명령어 바이트가 "
"일치했습니다. 소스는 뭔가 다른 것을 의미했습니다."
#. {ph0}: <a href="https://github.com/N0zoM1z0/th08/pull/11" >
#. {ph1}: </a >
#. {ph2}: <a href="https://github.com/N0zoM1z0/th08/pull/13">
#. {ph3}: </a>
#: website/public/blog/touhou-reconstruction/index.html:490
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The {ph0}2 September fix{ph1} corrected the source and made the comparison "
"check the referenced constant's actual bytes. A {ph2}wider audit{ph3} then "
"examined 1,548 floating-literal references. It found another twelve "
"incorrect references across five accepted functions."
msgstr ""
"그 {ph0}9 월 2 일 수정{ph1} 소스를 수정하고 비교 확인 참조 상수의 실제 바이트를했다. A {ph2}더 넓은 감사{ph3} "
"그런 다음 1,548 개의 부동 소수점 상수 참조를 조사했습니다. 5 개의 허용된 함수에서 12 개의 잘못된 참조를 발견했습니다."
#: website/public/blog/touhou-reconstruction/index.html:501
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The comparison now checks every such floating literal. Its tests include "
"deliberately wrong values to make sure they are rejected. We also had to "
"revisit results that had passed the weaker check."
msgstr ""
"비교는 이제 모든 부동 소수점 상수를 확인합니다. 테스트에는 의도적으로 잘못된 값이 포함되어 거부되었는지 확인합니다. 우리는 또한 약한 "
"검사를 통과 한 결과를 재검토해야했습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:506
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}The oracle needed reconstructing too.{ph1} Repairing it was part of "
"repairing the game."
msgstr "{ph0}검증 참조(오라클)도 재구성해야 했습니다.{ph1} 그것을 수리하는 것은 게임 수리의 일부였습니다."
#: website/public/blog/touhou-reconstruction/index.html:510
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"That matters when the team is mostly one person working with agents. I "
"cannot personally inspect every line they produce, so much of my confidence "
"rests on their checks. A shared oracle's blind spot can affect many "
"investigations before I notice it. I have to understand what the checker "
"actually verifies and test it against cases that ought to fail."
msgstr ""
"팀이 주로 에이전트와 함께 일하는 한 사람 일 때 중요합니다. 나는 개인적으로 그들이 생산하는 모든 라인을 검사 할 수 없습니다,내 "
"자신감의 많은 자신의 검사에 달려있다. 공유 검증 참조(오라클)의 사각 지대는 내가 알아 차리기 전에 많은 조사에 영향을 줄 수 "
"있습니다. 나는 검사기가 실제로 확인하는 것을 이해하고 실패해야하는 경우에 대해 테스트해야합니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:518
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"As the work continued, those checks became part of the repository. So did "
"the reasons for source changes and notes that let a later session pick up "
"where an earlier one stopped. {ph0}The repository was becoming the project's"
" working memory.{ph1}"
msgstr ""
"작업이 계속되면서 그 수표들은 저장소의 일부가 되었습니다. 소스 변경의 이유와 나중에 세션이 이전 세션이 멈춘 곳에서 시작될 수 있는 "
"메모도 마찬가지였습니다. {ph0}소스 코드 저장소는 프로젝트의 작업 메모리가 되고 있었습니다.{ph1}"
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:527
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}A successful batch gave us both recovered code and a better environment"
" for the next batch.{ph1}"
msgstr "{ph0}성공적인 일괄 처리는 복구 된 코드와 다음 일괄 처리를위한 더 나은 환경을 모두 제공했습니다.{ph1}"
#: website/public/blog/touhou-reconstruction/index.html:535
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Two different ideas of reconstruction"
msgstr "재건에 대한 두 가지 다른 아이디어"
#. {ph0}: <a
#. href="https://web.archive.org/web/20260909051514/https://github.com/GensokyoClub/th08#important-
#. notice" >
#. {ph1}: </a >
#: website/public/blog/touhou-reconstruction/index.html:536
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"GensokyoClub's {ph0}public README{ph1} makes its disagreement with this kind"
" of work explicit. The notice announces that further development will happen"
" privately until completion. One passage reads:"
msgstr ""
"GensokyoClub의 {ph0}공개 추가 정보{ph1} 이런 종류의 작업에 대한 의견이 분분합니다. 이 통지서는 추가 개발이 완료될 "
"때까지 사적으로 이루어질 것이라고 발표합니다. 한 구절은 이렇게 말합니다.:"
#: website/public/blog/touhou-reconstruction/index.html:547
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The rise of grifters (AI decompilations and ports) in this space taking from"
" our work paints a bad image for future decompilation efforts…"
msgstr ""
"우리의 작업에서 가져온 이 공간에서의 사기꾼(인공지능 디컴파일화 및 포트)의 부상은 미래의 디컴파일화 노력에 대한 나쁜 이미지를 "
"그립니다…"
#: website/public/blog/touhou-reconstruction/index.html:553
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The notice also describes the psychological toll on the maintainers. Their "
"contribution policy excludes pull requests produced primarily with AI. They "
"have put their free time into difficult work, and that work helped make my "
"continuation possible. I respect the effort behind it. The disagreement I "
"want to discuss is about how reconstruction should proceed and how a "
"contribution should be judged."
msgstr ""
"이 통지는 또한 유지 관리자에 대한 심리적 인 피해를 설명합니다. 그들의 기여 정책은 주로 인공 지능으로 생성 된 풀 요청을 제외합니다."
" 그들은 어려운 일에 자유 시간을 투자했고,그 일은 제 계속을 가능하게 했습니다. 나는 그 뒤에 노력을 존중. 제가 논의하고 싶은 의견 "
"불일치는 재건이 어떻게 진행되어야 하는지,그리고 기여가 어떻게 판단되어야 하는지에 관한 것입니다."
#: website/public/blog/touhou-reconstruction/index.html:562
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"In the manual workflow I knew, developing an understanding of a function and"
" reconstructing it usually fell to the same person. A project relied heavily"
" on that person's expertise. Trust in the contributor mattered because so "
"much of the reasoning happened while they worked."
msgstr ""
"내가 알고 있던 수동 작업 흐름에서 함수에 대한 이해를 개발하고 재구성하는 것은 보통 같은 사람에게 떨어졌습니다. 프로젝트는 그 사람의 "
"전문성에 크게 의존했습니다. 기여자에 대한 신뢰는 중요했습니다.왜냐하면 그들이 일하는 동안 많은 추론이 일어났기 때문입니다."
#: website/public/blog/touhou-reconstruction/index.html:569
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Existing projects already preserve knowledge in their source and build "
"tools. What changed for me was that an agent could use that knowledge to "
"pursue the next investigation on its own."
msgstr ""
"기존 프로젝트는 이미 소스에 대한 지식을 보존하고 도구를 구축합니다. 나를 위해 변경 한 것은 에이전트가 그 지식을 사용하여 다음 조사를"
" 독자적으로 수행 할 수 있다는 것입니다."
#: website/public/blog/touhou-reconstruction/index.html:574
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"In my continuation, I decide the objective and the standard for accepting a "
"result. The agent has broad freedom to investigate. Its proposed "
"reconstruction then has to survive the relevant checks. I want another "
"person to be able to examine why we chose an implementation, even if an "
"agent did most of the work."
msgstr ""
"나의 계속안에,나는 결과를 받아들이기를 위해 목적 그리고 기준을 결정한다. 에이전트는 조사할 자유가 넓습니다. 제안된 재건은 관련 "
"검사에서 살아남아야 합니다. 에이전트가 대부분의 작업을 수행하더라도 다른 사람이 구현을 선택한 이유를 검토 할 수 있기를 바랍니다."
#: website/public/blog/touhou-reconstruction/index.html:581
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"This can be a difficult transition. Years of careful work may become the "
"foundation for a continuation that moves much faster. That raises real "
"questions about credit. It also changes what maintainers need to know before"
" accepting a contribution."
msgstr ""
"이것은 어려운 전환이 될 수 있습니다. 수년간의 신중한 작업이 훨씬 더 빨리 움직이는 연속의 기초가 될 수 있습니다. 즉 신용에 대한 "
"실제 질문을 제기한다. 또한 유지 관리자가 기여를 수락하기 전에 알아야 할 사항을 변경합니다."
#: website/public/blog/touhou-reconstruction/index.html:587
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The industrial analogy helps me think about this. In a craft, much of the "
"process depends on the skill of the person carrying it out. Machinery "
"changes where that skill is needed. Someone still has to design the process "
"and recognize when its output is wrong. Different communities can choose how"
" much of that change they want to take on."
msgstr ""
"산업 비유는 이것에 대해 생각하는 데 도움이됩니다. 공예에서,그 과정의 대부분은 그것을 수행하는 사람의 기술에 달려 있습니다. 기계는 그"
" 기술이 필요한 곳에서 변합니다. 누군가는 여전히 프로세스를 설계하고 출력이 잘못되었을 때 인식해야합니다. 다른 지역 사회는 그들이 "
"원하는 변화의 양을 선택할 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:595
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"My choice is to continue openly, with the inherited work credited and its "
"history preserved. I want the new work to be reviewable. That gives us a way"
" to ask how far this approach can go and to learn from what goes wrong along"
" the way."
msgstr ""
"제 선택은 공개적으로 계속하는 것입니다.상속된 작품이 인정되고 그 역사가 보존됩니다. 나는 새로운 작업이 검토 할 수 있기를 바랍니다. "
"그것은 우리에게 이 접근법이 얼마나 멀리 갈 수 있는지 물어보고 그 과정에서 무엇이 잘못되었는지 배울 수 있는 방법을 제공합니다."
#. {ph0}: <a
#. href="https://github.com/GensokyoClub/th08/blob/e874b98e210b3be1ed21c5e03d54b883eac5069c/README.md#important-
#. notice" >
#. {ph1}: </a >
#. {ph2}: <a
#. href="https://github.com/GensokyoClub/th08/blob/f345c7dee07b849f2ff93a0029ab5ede126bf12c/CODE_OF_CONDUCT.md"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th08/blob/d2a00f4acb4a13916e07a00bd13f714961714628/README.md#credits-
#. and-provenance" >
#. {ph5}: </a >
#: website/public/blog/touhou-reconstruction/index.html:601
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Source: GensokyoClub's {ph0}README notice{ph1}, checked on 10 October 2026, "
"and its {ph2}contribution policy{ph3}. The quotation is a shortened excerpt."
" TH08's {ph4}credits and provenance{ph5} record the continuation boundary."
msgstr ""
"출처: GensokyoClub의 {ph0}추가 정보 공지{ph1} 2026 년 10 월 10 일에 확인된 {ph2}기여 정책{ph3}. "
"이 인용구는 줄여진 인용구입니다. TH08의 {ph4}신용 및 출처{ph5} 연속 경계를 기록하십시오."
#: website/public/blog/touhou-reconstruction/index.html:619
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "TH095: experience starts compounding"
msgstr "TH095:경험이 시작되는 합성의"
#. {ph0}: <a href="https://github.com/N0zoM1z0/th095">
#. {ph1}: </a>
#: website/public/blog/touhou-reconstruction/index.html:620
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}TH095{ph1}, Shoot the Bullet, made the value of that experience much "
"easier to see. Its repository began on 29 August with zero confirmed game "
"functions in the ledger. We still had to learn the game. But we already knew"
" much more about how to begin a reconstruction and how to keep it moving."
msgstr ""
"{ph0}TH095{ph1} 총알을 쏘면 그 경험의 가치를 훨씬 더 쉽게 볼 수 있었습니다. 그 저장소는 8 월 29 일에 "
"시작되었으며,레저에 확인된 게임 기능이 없습니다. 우리는 여전히 게임을 배워야 했습니다. 그러나 우리는 이미 재건을 시작하는 방법과 "
"그것을 계속 움직이는 방법에 대해 훨씬 더 많이 알고 있었습니다."
#: website/public/blog/touhou-reconstruction/index.html:628
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"By 7 September, all 697 identified game functions had source. By 8 "
"September, 696 had been accepted as exact comparisons. The whole program "
"linked on 9 September. The Windows i386 reconstruction was marked playable "
"on 10 September, about twelve days after initialization."
msgstr ""
"9 월 7 일까지,모든 697 개의 확인된 게임 기능은 출처를 가지고 있었다. 9 월 8 일까지 696 건이 정확한 비교로 받아들여졌다."
" 전체 프로그램은 9 월 9 일에 연결되었습니다. 그 Windows 초기화 후 약 12 일 후인 9 월 10 일에 재생 가능한 것으로 "
"표시되었다."
#: website/public/blog/touhou-reconstruction/index.html:635
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"I found this more exciting than the first project's speed. A fresh target "
"could benefit from work done on another game. The experience was already "
"present in the tools and in the way the project was organized."
msgstr ""
"나는 이것이 첫 번째 프로젝트의 속도보다 더 흥미 진진하다고 생각했습니다. 새로운 타겟은 다른 게임에서 수행된 작업에서 이익을 얻을 수 "
"있습니다. 이 경험은 이미 도구와 프로젝트 조직 방식에 존재했습니다."
#: website/public/blog/touhou-reconstruction/index.html:641
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"For example, TH08 had taught us to pay attention to the assembled program "
"early. If several recovered functions depend on the same state, their "
"isolated comparisons leave an important question open. We need to see them "
"working together. That lesson helped shape how we approached TH095's whole-"
"program build."
msgstr ""
"예를 들어, TH08 일찍 조립 프로그램에 관심을 지불하는 우리를 가르쳤다. 여러 개의 복구된 함수가 동일한 상태에 의존한다면,그들의 "
"고립된 비교는 중요한 질문을 열어두고 있습니다. 우리는 그들이 함께 일하는 것을 볼 필요가 있습니다. 그 교훈은 우리가 어떻게 접근했는지"
" 형성하는 데 도움이되었습니다 TH095전체 프로그램 구축입니다."
#: website/public/blog/touhou-reconstruction/index.html:648
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"A lesson that stays in my head is useful while I am there. Once it becomes a"
" check that another session can run, it can keep helping after I have moved "
"on. The next agent can use the result without repeating the investigation "
"that led to it."
msgstr ""
"내 머리 속에 남아있는 교훈은 내가 거기있는 동안 유용합니다. 일단 다른 세션이 실행될 수 있는 체크가 되면,제가 이사를 한 후에도 계속"
" 도움을 줄 수 있습니다. 다음 에이전트는 결과로 이어진 조사를 반복하지 않고 결과를 사용할 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:654
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The floating-literal bug belongs in that memory too. It explains why "
"checking a reference also requires checking the data behind it. Keeping that"
" correction with the code helps later projects avoid inheriting the old "
"check's blind spot."
msgstr ""
"부동 소수점 상수 버그도 그 메모리에 속합니다. 왜 참조를 확인해야 하는지 설명합니다.또한 그 뒤에 있는 데이터를 확인해야 합니다. 그 "
"수정 사항을 코드로 유지하면 나중에 프로젝트가 이전 검사의 사각지대를 상속하는 것을 피할 수 있습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:660
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}The method becomes part of the starting material for the next "
"game.{ph1} We can spend more of the next project's effort on what is "
"actually new about its target."
msgstr ""
"{ph0}이 방법은 다음 게임의 시작 자료의 일부가됩니다.{ph1} 우리는 다음 프로젝트의 노력을 목표에 대해 실제로 새로운 것에 더 "
"많이 쓸 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:668
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The same benefit is available to people joining later. They can inspect a "
"decision and rerun its check before continuing the work. They do not have to"
" reconstruct the entire project's history to find out why the source looks "
"the way it does."
msgstr ""
"나중에 가입하는 사람들도 같은 혜택을 받을 수 있습니다. 그들은 결정을 검사하고 작업을 계속하기 전에 확인을 다시 실행할 수 있습니다. "
"그들은 프로젝트의 전체 역사를 재구성해서 왜 소스가 그렇게 보이는지 알아낼 필요가 없습니다."
#: website/public/blog/touhou-reconstruction/index.html:676
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "TH04: the workflow survives a different architecture"
msgstr "TH04:워크플로는 다른 아키텍처에서 살아남습니다."
#. {ph0}: <a href="https://github.com/N0zoM1z0/th04">
#. {ph1}: </a>
#. {ph2}: <a href="https://github.com/nmlgc/ReC98">
#. {ph3}: </a>
#: website/public/blog/touhou-reconstruction/index.html:677
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}TH04{ph1}, Lotus Land Story, took this work into the PC-98 DOS era. The"
" target was now a 16-bit environment with four cooperating programs. "
"Understanding its hardware behavior required different evidence from the "
"Windows games. Existing {ph2}ReC98 work{ph3} gave us valuable knowledge and "
"source material here too."
msgstr ""
"{ph0}TH04{ph1} 로터스 랜드 스토리,이 작품을 PC-98 도스 시대 이제 타겟은 4 개의 협력 프로그램을 가진 16 비트 "
"환경이었습니다. 하드웨어 동작을 이해하려면 Windows 게임. 기존 {ph2}레크 98 일{ph3} 여기에도 귀중한 지식과 자료를 "
"제공했습니다."
#: website/public/blog/touhou-reconstruction/index.html:686
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The DOS reconstruction is now working. In my manual testing, I played "
"complete Normal routes through their endings and checked saves. The current "
"work is a native 64-bit port. Establishing a working DOS version first gives"
" that port a reference."
msgstr ""
"이제 도스 재건이 진행되고 있습니다. 내 수동 테스트에서,나는 그들의 엔딩을 통해 완전한 정상 경로를 재생하고 저장을 확인했다. 현재 "
"작업은 네이티브 64 비트 포트입니다. 작업 도스 버전을 먼저 설정하면 해당 통신 포트에 참조가 제공됩니다."
#: website/public/blog/touhou-reconstruction/index.html:692
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The architecture changed what we needed to investigate. It also changed the "
"compiler and runtime against which we checked our work. But the agent could "
"still follow a question through to a result and let that result guide the "
"next experiment."
msgstr ""
"건축물은 우리가 조사해야 할 것을 바꾸었습니다. 그것은 또한 우리가 우리의 작업을 확인하는 컴파일러와 런타임을 변경했습니다. 그러나 "
"에이전트는 여전히 결과를 통해 질문을 따라 그 결과가 다음 실험을 안내 할 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:698
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Consider the transition from gameplay to an ending. We need to know what "
"state carries across that boundary and which program is responsible for it. "
"That is something we can investigate against the DOS product. Once the "
"evidence and checks are available, an agent can work through the question "
"much as it did on a Windows title."
msgstr ""
"게임 플레이에서 결말으로의 전환을 고려하십시오. 우리는 어떤 국가가 그 경계를 넘어서고 어떤 프로그램이 그것에 책임이 있는지 "
"알아야합니다. 그것은 우리가 도스 제품에 대해 조사 할 수있는 것입니다. 한 번의 증거이며 검사를 사용할 수 있는 에이전트를 통해 작업 "
"할 수 있습니다 질문을 많이 그랬던 것처럼에Windows제목입니다."
#: website/public/blog/touhou-reconstruction/index.html:706
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"This is why TH04 matters to the argument. A substantial platform change did "
"not force us to start over with a new way of working. The architecture "
"defined the problem; the workflow still gave us a way to solve it."
msgstr ""
"이것이 바로 TH04 인수에 문제. 상당한 플랫폼 변화는 우리가 새로운 작업 방식으로 다시 시작하도록 강요하지 않았습니다. 아키텍처가 "
"문제를 정의했고,워크플로우는 여전히 문제를 해결하는 방법을 제공했습니다."
#: website/public/blog/touhou-reconstruction/index.html:712
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"For the 64-bit port, we can now examine the new implementation against "
"behavior already recovered on DOS. The knowledge from reconstruction gives "
"the port something to build on."
msgstr ""
"64 비트 포트의 경우 이제 도스에서 이미 복구 된 동작에 대해 새 구현을 검사 할 수 있습니다. 재건에 대한 지식은 항구에 구축할 수 "
"있는 무언가를 제공합니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/bb9faca54e2eb3c0d6c757c75d59ac29d2cd5e93/docs/RE_HANDOFF.md"
#. >
#. {ph1}: </a >
#. {ph2}: <a href="https://github.com/N0zoM1z0/th04/tree/port/modern-64" >
#. {ph3}: </a >
#: website/public/blog/touhou-reconstruction/index.html:717
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Project state as of 10 October 2026: {ph0}DOS reconstruction and manual "
"testing{ph1} · {ph2}64-bit port{ph3}. The port remains in development."
msgstr ""
"2026 년 10 월 10 일 현재 프로젝트 상태: {ph0}도스 재구성 및 수동 테스트{ph1} · {ph2}64 비트 포트{ph3}."
" 항구는 개발 중입니다."
#: website/public/blog/touhou-reconstruction/index.html:730
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "From exact code to readable code"
msgstr "정확한 코드에서 읽을 수있는 코드로"
#: website/public/blog/touhou-reconstruction/index.html:731
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Once a reconstruction works, I want someone else to be able to understand "
"it."
msgstr "일단 재건이 이루어지면 다른 사람이 그것을 이해할 수 있기를 바랍니다."
#: website/public/blog/touhou-reconstruction/index.html:735
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"To me, assembly and raw offsets can feel like old friends. I realise this is"
" a slightly unusual definition of “readable.” Most people would prefer to "
"follow the game's logic without keeping the executable's memory layout in "
"their head."
msgstr ""
"나에게 조립 및 원시 오프셋은 오랜 친구처럼 느낄 수 있습니다. 나는 이것이\"읽을 수있는\"의 약간 특이한 정의라는 것을 "
"깨닫는다.\"대부분의 사람들은 실행 파일의 메모리 레이아웃을 머릿속에 유지하지 않고 게임의 논리를 따르기를 선호합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:741
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"That is where {ph0}semantic reconstruction{ph1} comes in. A recovered field "
"may still be known mainly by its offset. We follow how the game uses it "
"until we can explain its role. Then we can give it a meaningful name and a "
"type that fits the evidence. We keep the reasoning with the source so the "
"next person can see where that interpretation came from."
msgstr ""
"그게 바로 {ph0}의미 재구성{ph1} 들어옵니다. 복구된 필드는 여전히 주로 오프셋으로 알려져 있습니다. 우리는 그 역할을 설명 할 "
"수있을 때까지 게임이 그것을 사용하는 방법을 따릅니다. 그런 다음 우리는 그것을 의미있는 이름과 증거에 맞는 유형을 줄 수 있습니다. "
"다음 사람이 그 해석이 어디서 왔는지 볼 수 있도록 우리는 출처와 추론을 유지합니다."
#: website/public/blog/touhou-reconstruction/index.html:749
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"This becomes especially important for a port. An absolute address tells me "
"where something lived in the old executable. It gives a 64-bit "
"implementation little help in deciding which object should own that state. "
"To move the behavior safely, we need to recover the relationship behind the "
"old memory access."
msgstr ""
"이것은 소프트웨어 포트에 특히 중요합니다. 절대 주소는 오래된 실행 파일에 무언가가 살았던 곳을 알려줍니다. 64 비트 구현은 어떤 "
"객체가 그 상태를 소유해야 하는지 결정하는 데 거의 도움이 되지 않습니다. 동작을 안전하게 이동하려면 이전 메모리 액세스 뒤에 있는 "
"관계를 복구해야 합니다."
#: website/public/blog/touhou-reconstruction/index.html:756
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "The order I now use is:"
msgstr "내가 지금 사용하는 순서는:"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:758
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Recover an exact baseline.{ph1} Compile the reconstructed pieces with "
"the historical compiler. Compare the relevant code and data with the "
"original executable. Record unresolved differences so the next phase has a "
"clear starting point."
msgstr ""
"{ph0}정확한 기준선을 복구합니다.{ph1} 역사적인 컴파일러로 재구성된 조각을 컴파일합니다. 관련 코드 및 데이터를 원래 실행 파일과"
" 비교합니다. 다음 단계는 명확한 출발점이 있도록 기록 해결되지 않은 차이."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:765
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Build and play it on the original platform.{ph1} Link those pieces into"
" the real program using the original architecture and compiler. Exercise "
"important gameplay paths. This is where we can find problems with shared "
"state or initialization that an isolated function comparison missed."
msgstr ""
"{ph0}빌드 및 원래 플랫폼에서 재생할 수 있습니다.{ph1} 원래의 아키텍처와 컴파일러를 사용하여 실제 프로그램에 그 조각을 "
"연결합니다. 중요한 게임 플레이 경로를 연습하십시오. 여기서 격리 된 함수 비교가 놓친 공유 상태 또는 초기화 문제를 찾을 수 있습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:772
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Reconstruct the semantics against both references.{ph1} Take one "
"coherent part of the game at a time and establish what its recovered source "
"means. Improve its representation while preserving the exact comparisons and"
" the playable historical build."
msgstr ""
"{ph0}두 참조에 대한 의미를 재구성하십시오.{ph1} 한 번에 게임의 일관된 부분을 가져 와서 복구 된 소스가 무엇을 의미하는지 "
"확립하십시오. 정확한 비교 및 재생 가능한 역사적 빌드를 유지하면서 표현을 향상시킵니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:781
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Make the modern port.{ph1} Move the established behavior into the new "
"environment, such as a native 64-bit build. The reconstructed original-"
"platform game remains a reference for comparing how the port behaves."
msgstr ""
"{ph0}현대 포트를 만드십시오.{ph1} 기본 64 비트 빌드와 같은 새 환경으로 설정된 동작을 이동합니다. 재구성된 오리지널 플랫폼 "
"게임은 포트의 동작을 비교하는 데 참고 자료로 남아 있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/touhou-reconstruction/index.html:788
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The playable build from the second stage becomes a {ph0}second oracle{ph1} "
"during the third. The first oracle checks whether our changed source still "
"reproduces the relevant original code and data. The second checks that the "
"reconstructed program still builds and behaves correctly along the paths we "
"exercise."
msgstr ""
"두 번째 단계의 플레이 가능한 빌드는 {ph0}두 번째 검증 참조(오라클){ph1} 세 번째 동안. 첫 번째 검증 참조(오라클)는 변경된"
" 소스가 여전히 관련 원본 코드와 데이터를 재생하는지 확인합니다. 두 번째는 재구성된 프로그램이 우리가 실행하는 경로를 따라 여전히 "
"빌드되고 올바르게 동작하는지 확인합니다."
#: website/public/blog/touhou-reconstruction/index.html:796
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"They catch different mistakes. A type change can alter the generated "
"instructions. An ownership change can leave two parts of the game using "
"different copies of state. Keeping both checks available gives the agent a "
"concrete failure to investigate before carrying a refactor further."
msgstr ""
"그들은 다른 실수를 잡습니다. 형식 변경은 생성된 명령어를 변경할 수 있습니다. 소유권 변경은 다른 상태 복사본을 사용하여 게임의 두 "
"부분을 남길 수 있습니다. 두 검사를 모두 사용할 수 있도록 유지하면 에이전트가 리팩터를 더 수행하기 전에 조사하지 않을 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:803
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"A name needs evidence of its own. An exact comparison cannot tell us whether"
" a field really means “invulnerability time.” We have to establish that from"
" how the game writes and uses it. If the meaning remains uncertain, a "
"neutral name is more helpful to the next reader than a confident guess."
msgstr ""
"이름은 그 자체의 증거가 필요합니다. 정확한 비교를 통해 어떤 필드가 실제로\"무적 시간\"을 의미하는지 알 수 없습니다.\"우리는 "
"게임이 그것을 쓰고 사용하는 방식에서 그것을 확립해야합니다. 그 의미 가 확실 하지 않다면,중립적 인 이름 은 자신감 있는 추측 보다 "
"다음 독자 에게 더 도움 이 된다."
#. {ph0}: <a href="https://github.com/N0zoM1z0/touhou-reconstruction-
#. factory/blob/717e1b8560783ed17a39fdf159d30aa16bb307a7/docs/semantic-
#. reconstruction.md" >
#. {ph1}: </a >
#: website/public/blog/touhou-reconstruction/index.html:810
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"We learned this order through the projects. TH08 already had playable ports "
"before some of its later historical-platform audits. That made certain "
"defects harder to see. The {ph0}Factory's current workflow{ph1} puts the "
"original-platform build first, so semantic work can use it as a reference "
"before porting begins."
msgstr ""
"우리는 프로젝트를 통해 이 순서를 배웠습니다. TH08 나중에 역사적인 플랫폼 감사 전에 이미 재생 가능한 포트를 가지고있었습니다. 그 "
"때문에 어떤 결함들은 보기 어려워졌습니다. 그 {ph0}공장의 현재 워크 플로우{ph1} 원래 플랫폼 빌드를 먼저 배치하므로 시맨틱 "
"작업은 포팅이 시작되기 전에 참조로 사용할 수 있습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:821
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Exact reconstruction gives us a reference. Semantic reconstruction "
"makes the recovered knowledge usable.{ph1} A port can then build on both."
msgstr ""
"{ph0}정확한 재구성은 우리에게 참조를 제공합니다. 의미적 재구성은 회복된 지식을 사용할 수 있게 해줍니다.{ph1} 포트는 둘 다에 "
"구축 할 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:830
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "What makes this an industrial shift"
msgstr "이 산업 변화를 만드는 것"
#: website/public/blog/touhou-reconstruction/index.html:831
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"These projects changed where I spent my attention. Once agents could carry "
"much of an investigation forward, improving their working environment became"
" one of the most useful things I could do. A better tool could help with "
"every later function that needed it."
msgstr ""
"이 프로젝트들은 제가 관심을 기울인 곳에서 바뀌었습니다. 에이전트가 앞으로 조사의 대부분을 수행 할 수 있으면,자신의 작업 환경을 "
"개선하는 것은 내가 할 수있는 가장 유용한 것들 중 하나가되었다. 더 나은 도구는 나중에 필요한 모든 기능을 도울 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:838
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Autonomy matters here. The useful next step often becomes clear only after a"
" failed experiment. An agent needs enough freedom to follow that result "
"somewhere unexpected. If it has to wait for me to prescribe each step, much "
"of the work remains tied to my attention."
msgstr ""
"여기서 자율성이 중요합니다. 유용한 다음 단계는 실패한 실험 후에 만 명확 해집니다. 에이전트는 예상치 못한 곳에서 그 결과를 따라갈 수"
" 있는 충분한 자유가 필요합니다. 만약 제가 각 단계를 처방할 때까지 기다려야 한다면,많은 작업이 제 관심에 묶여 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:845
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"I expect the agent to make wrong hypotheses. What matters is whether we can "
"test them and learn from the result. A failed check should help it "
"understand the mistake well enough to try again. I still have to decide "
"whether the accumulated evidence supports a project milestone."
msgstr ""
"나는 에이전트가 잘못된 가설을 세울 것으로 기대한다. 중요한 것은 우리가 그들을 시험하고 그 결과로부터 배울 수 있는지 여부입니다. "
"실패한 검사는 다시 시도할 만큼 실수를 잘 이해하는 데 도움이 됩니다. 나는 여전히 축적 된 증거가 프로젝트 이정표를 지원하는지 여부를 "
"결정해야합니다."
#: website/public/blog/touhou-reconstruction/index.html:852
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"REA gives the agent access to analysis tools. A question about a function's "
"caller can lead straight into inspecting that caller. The reconstruction "
"project supplies the compiler and its own reference checks. The agent can "
"use those to test the source it proposes and see where its explanation holds"
" up."
msgstr ""
"REA 에이전트가 분석 도구에 액세스할 수 있도록 합니다. 함수의 호출자에 대한 질문은 바로 그 호출자를 검사 할 수 있습니다. 재구성 "
"프로젝트는 컴파일러와 자체 참조 검사를 제공합니다. 에이전트는 그것을 사용하여 제안된 출처를 테스트하고 그 설명이 어디에 있는지 볼 수 "
"있습니다."
#: website/public/blog/touhou-reconstruction/index.html:859
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The TH08 bug shows why those checks deserve engineering attention of their "
"own. When the same comparison is used across hundreds of functions, a gap in"
" it can spread much further than a mistake in one implementation. Testing "
"the checker improves the feedback available to all that later work."
msgstr ""
"그 TH08 버그는 그 검사가 자신의 엔지니어링 관심을받을 자격이 이유를 보여줍니다. 같은 비교가 수백 개의 함수에서 사용되면,그 안에 "
"있는 격차는 한 구현의 실수보다 훨씬 더 퍼질 수 있습니다. 검사기를 테스트하면 나중에 모든 작업에 사용할 수 있는 피드백이 향상됩니다."
#. {ph0}: <a
#. href="https://collection.sciencemuseumgroup.org.uk/objects/co51439/watts-
#. steam-engine-indicator" >
#. {ph1}: </a >
#: website/public/blog/touhou-reconstruction/index.html:866
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The industrial analogy has a useful historical example here. Boulton and "
"Watt introduced a {ph0}steam-engine indicator in 1796{ph1} to help adjust "
"engine valves. A recording version traced pressure through the piston "
"stroke. It made the engine's internal behavior available for inspection. Our"
" comparison tools serve a similar purpose: they let us examine what the "
"machinery is doing while we improve it."
msgstr ""
"산업적 비유는 여기서 유용한 역사적 예를 가지고 있습니다. 볼턴과 왓트는 {ph0}1796 년 증기 엔진 표시기{ph1} 엔진 밸브를 "
"조정하는 데 도움이됩니다. 녹음 버전은 피스톤 스트로크를 통해 압력을 추적했습니다. 엔진의 내부 동작을 검사할 수 있게 했습니다. 우리의"
" 비교 도구는 비슷한 목적을 제공합니다:그들은 우리가 그것을 개선하는 동안 기계가 무엇을하고 있는지 살펴 보자."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:879
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}We are in the early stages of this industrial shift.{ph1} Much of the "
"infrastructure is still immature. Agents can move faster than our checks "
"were designed to support, so the process has to develop alongside them. When"
" we find a defect in a shared tool, we have to repair it and revisit the "
"results it affected. The next project can then inherit a stronger tool."
msgstr ""
"{ph0}우리는 이 산업 변화의 초기 단계에 있습니다.{ph1} 인프라의 대부분은 아직 미숙합니다. 에이전트는 우리의 수표가 지원하도록 "
"설계된 것보다 더 빨리 이동할 수 있으므로 프로세스는 그들과 함께 개발해야합니다. 공유 도구에서 결함이 발견되면 이를 복구하고 영향을 "
"받은 결과를 다시 검토해야 합니다. 다음 프로젝트는 더 강력한 도구를 상속 할 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:889
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"There is also a practical limit to any one conversation. It will end before "
"a large reconstruction is finished. The repository has to make it possible "
"for another session to continue without losing the reason for the last "
"decision."
msgstr ""
"또한 어떤 대화에도 실질적인 제한이 있습니다. 대규모 재건이 끝나기 전에 끝날 것입니다. 소스 코드 저장소는 마지막 결정의 이유를 잃지 "
"않고 다른 세션이 계속될 수 있도록 해야 합니다."
#. {ph0}: <a href="https://github.com/N0zoM1z0/touhou-reconstruction-factory"
#. >
#. {ph1}: </a >
#: website/public/blog/touhou-reconstruction/index.html:895
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The {ph0}Touhou Reconstruction Factory{ph1} grew out of that need. It gives "
"projects a shared way to carry their checks and lessons forward. Work on one"
" game can improve the starting conditions for another."
msgstr ""
"그 {ph0}동방 재건 공장{ph1} 그 필요에서 성장했습니다. 이 프로젝트는 앞으로 자신의 검사와 교훈을 수행 할 수있는 공유 방법을 "
"제공합니다. 한 게임에 대한 작업은 다른 게임의 시작 조건을 개선 할 수 있습니다."
#: website/public/blog/touhou-reconstruction/index.html:905
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"That is what makes the industrial analogy meaningful to me. Experience "
"starts becoming part of tools that others can use. Improving those tools "
"changes how much the next person—or the next agent—can get done."
msgstr ""
"이것이 산업적 비유를 저에게 의미 있게 만드는 것입니다. 경험은 다른 사람들이 사용할 수 있는 도구의 일부가 되기 시작합니다. 이러한 "
"도구를 개선하면 다음 사람 또는 다음 에이전트가 얼마나 많은 작업을 수행 할 수 있는지 변경됩니다."
#: website/public/blog/touhou-reconstruction/index.html:913
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "The projects we can now consider"
msgstr "우리가 지금 고려할 수있는 프로젝트"
#: website/public/blog/touhou-reconstruction/index.html:914
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The pace matters because it changes the decision to begin. A game could be "
"fascinating to reverse engineer and still demand more of my own attention "
"than I could realistically give it. Many projects would stay ideas."
msgstr ""
"이 시작 결정을 변경하기 때문에 속도 문제. 게임은 리버스 엔지니어링에 매혹적 일 수 있으며 현실적으로 줄 수있는 것보다 내 자신의 "
"관심을 더 많이 요구할 수 있습니다. 많은 프로젝트가 아이디어를 유지합니다."
#: website/public/blog/touhou-reconstruction/index.html:920
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"Now I can see a way to keep such a project moving through repeated "
"investigations. Getting a working reconstruction makes a port more "
"practical. Recovering readable semantics makes it easier for someone else to"
" explore a mod. The effort put into understanding the game can keep paying "
"off after the first version runs."
msgstr ""
"이제 나는 반복적 인 조사를 통해 그러한 프로젝트를 계속 진행할 수있는 방법을 볼 수 있습니다. 작동하는 재구성을 얻는 것은 소프트웨어 "
"포트를 더 실용적으로 만듭니다. 읽을 수있는 의미를 복구하면 다른 사람이 모드를 쉽게 탐색 할 수 있습니다. 게임을 이해하는데 투입된 "
"노력은 첫 번째 버전이 실행된 후에도 계속 성과를 낼 수 있습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/touhou-reconstruction/index.html:927
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"I now look at an unfamiliar program and ask: {ph0}what access, feedback and "
"accumulated knowledge would let an agent work on this reliably?{ph1}"
msgstr ""
"나는 지금 익숙하지 않은 프로그램을보고 묻는다: {ph0}어떤 액세스,피드백 및 축적 된 지식으로 에이전트가이 작업을 안정적으로 수행 할"
" 수 있습니까?{ph1}"
#: website/public/blog/touhou-reconstruction/index.html:934
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"That question makes me consider projects I would previously have left alone."
" Each one can improve the way we approach the next. I want to keep exploring"
" how far that can take us."
msgstr ""
"그 질문은 내가 이전에 혼자 남겨 두었을 프로젝트를 고려하게합니다. 각자는 우리가 다음에 접근하는 방식을 향상시킬 수 있습니다. 나는 "
"그것이 우리를 얼마나 멀리 데려 갈 수 있는지 계속 탐구하고 싶다."
#: website/public/blog/touhou-reconstruction/index.html:942
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Project milestones and sources"
msgstr "프로젝트 이정표 및 출처"
#: website/public/blog/touhou-reconstruction/index.html:943
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"The dates describe recorded project checkpoints, checked against public "
"GitHub history on 10 October 2026. Elapsed time is calendar time between "
"commits. Source presence, exact comparisons, a build and a runtime result "
"each name a different milestone."
msgstr ""
"날짜는 기록된 프로젝트 체크포인트를 설명합니다. GitHub 2026 년 10 월 10 일 역사. 경과 시간은 커밋 사이의 일정 "
"시간입니다. 소스 존재,정확한 비교,빌드 및 런타임 결과는 각각 다른 이정표를 지정합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/001bf3e9c91cc35b79c7a0e36b3565b86f494362"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th08/blob/15caba73df6735fc44eac4783bc61b8d098ea830/docs/PROGRESS.md"
#. >
#. {ph5}: </a >
#. {ph6}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/da07b21c8cb63230142b0a66228d6aac66555f3f"
#. >
#. {ph7}: </a >
#. {ph8}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/529eb1a3afa05ae36467731eaccb12e3e50e132f"
#. >
#. {ph9}: </a >
#. {ph10}: <a
#. href="https://github.com/N0zoM1z0/th08/releases/tag/v0.2.0-linux-64bit" >
#. {ph11}: </a >
#: website/public/blog/touhou-reconstruction/index.html:951
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}TH08:{ph1} {ph2}13 August continuation{ph3}, {ph4}19 August source "
"ledger{ph5}, {ph6}24 August Linux port{ph7}, {ph8}26 August Web "
"edition{ph9}, and {ph10}30 August 64-bit Linux release{ph11}."
msgstr ""
"{ph0}TH08:{ph1} {ph2}8 월 13 일 계속{ph3}, {ph4}8 월 19 일 소스 레저{ph5}, {ph6}8 월 24"
" 일 Linux 항구{ph7}, {ph8}8 월 26 일 웹 에디션{ph9},그리고 {ph10}8 월 30 일 64 비트 Linux "
"릴리스{ph11}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th095/blob/8c31e6f892d945423b7f7b439747a2bd915f82d8/docs/PROGRESS.md"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th095/blob/0fa857fb2b2ec6237732e4d6be8d0a28069c9330/docs/PROGRESS.md"
#. >
#. {ph5}: </a >
#. {ph6}: <a
#. href="https://github.com/N0zoM1z0/th095/blob/74baddfccb712d1311a4d6e7487a63cd1100452e/docs/PROGRESS.md"
#. >
#. {ph7}: </a >
#. {ph8}: <a
#. href="https://github.com/N0zoM1z0/th095/commit/33d46a0ee48f37060d973125a1a7632a40f8d998"
#. >
#. {ph9}: </a >
#. {ph10}: <a
#. href="https://github.com/N0zoM1z0/th095/blob/3442dcf29d9e0b5bef384a49bd0c9ad32a711826/docs/WHOLE_BUILD_TODO.md"
#. >
#. {ph11}: </a >
#: website/public/blog/touhou-reconstruction/index.html:974
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}TH095:{ph1} {ph2}29 August initial ledger{ph3}, {ph4}7 September source"
" ledger{ph5}, {ph6}8 September comparisons{ph7}, {ph8}9 September "
"linkage{ph9}, and {ph10}10 September playable-build record{ph11}."
msgstr ""
"{ph0}TH095:{ph1} {ph2}8 월 29 일 초기 원장{ph3}, {ph4}9 월 7 일 원본 원장{ph5}, {ph6}9 월"
" 8 일 비교{ph7}, {ph8}9 월 9 일 연결{ph9},그리고 {ph10}9 월 10 일 플레이 가능-빌드 레코드{ph11}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/bb9faca54e2eb3c0d6c757c75d59ac29d2cd5e93/docs/RE_HANDOFF.md"
#. >
#. {ph3}: </a >
#: website/public/blog/touhou-reconstruction/index.html:997
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}TH04:{ph1} {ph2}10 October handoff{ph3} records the working DOS "
"reconstruction, the maintainer's complete Normal-route testing and the "
"current 64-bit phase."
msgstr ""
"{ph0}TH04:{ph1} {ph2}10 월 10 일 전달{ph3} 작업 도스 재구성,유지 관리자의 완전한 정상 경로 테스트 및 현재 "
"64 비트 위상을 기록합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a href="https://github.com/N0zoM1z0/th08/issues/10" >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/7148a76ba224742677895c7160807a68897957d5"
#. >
#. {ph5}: </a >
#. {ph6}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/a393f400786e4cc6cbb1000af0dad3276da12c78"
#. >
#. {ph7}: </a >
#: website/public/blog/touhou-reconstruction/index.html:1006
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}TH08 oracle correction:{ph1} {ph2}the reported auto-collection "
"bug{ph3}, {ph4}the source and comparison fix{ph5}, and {ph6}the full "
"floating-literal audit{ph7}."
msgstr ""
"{ph0}TH08 오라클 수정:{ph1} {ph2}보고된 자동 수집 버그{ph3}, {ph4}소스 및 비교 수정{ph5},그리고 "
"{ph6}전체 부동 리터럴 감사{ph7}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th08/blob/d2a00f4acb4a13916e07a00bd13f714961714628/docs/SEMANTIC_PLAYBOOK.md"
#. >
#. {ph3}: </a >
#. {ph4}: <a href="https://github.com/N0zoM1z0/touhou-reconstruction-
#. factory/blob/717e1b8560783ed17a39fdf159d30aa16bb307a7/docs/semantic-
#. reconstruction.md" >
#. {ph5}: </a >
#: website/public/blog/touhou-reconstruction/index.html:1020
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Semantic reconstruction:{ph1} {ph2}TH08's readability playbook{ph3} and"
" {ph4}the Factory's phase order and two validation paths{ph5}."
msgstr ""
"{ph0}의미 재구성:{ph1} {ph2}TH08의 가독성 플레이 북{ph3} 그리고 {ph4}팩토리의 위상 순서 및 두 가지 유효성 "
"검사 경로{ph5}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://collection.sciencemuseumgroup.org.uk/objects/co51439/watts-
#. steam-engine-indicator" >
#. {ph3}: </a >
#: website/public/blog/touhou-reconstruction/index.html:1032
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Industrial history:{ph1} {ph2}the Science Museum Group's steam-engine "
"indicator record{ph3} describes the 1796 introduction and the pressure-"
"recording mechanism."
msgstr ""
"{ph0}산업 역사:{ph1} {ph2}과학 박물관 그룹의 증기 기관 표시기 기록{ph3} 1796 년 도입과 압력 기록 메커니즘을 "
"설명합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a href="https://github.com/N0zoM1z0/touhou-reconstruction-
#. factory/blob/038b6bed51d273c8b3680553b6f43e1b97d19bd1/docs/agent-
#. autonomy.md" >
#. {ph3}: </a >
#. {ph4}: <a href="https://github.com/N0zoM1z0/touhou-reconstruction-
#. factory/blob/038b6bed51d273c8b3680553b6f43e1b97d19bd1/docs/knowledge-
#. base.md" >
#. {ph5}: </a >
#: website/public/blog/touhou-reconstruction/index.html:1041
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"{ph0}Method:{ph1} the Factory's {ph2}agent autonomy{ph3} and {ph4}cross-game"
" knowledge{ph5} documents retain the working principles and lessons."
msgstr ""
"{ph0}방법:{ph1} 공장 {ph2}에이전트 자율성{ph3} 그리고 {ph4}크로스 게임 지식{ph5} 문서는 작업 원칙과 교훈을 "
"유지합니다."
#. {ph0}: <a class="text-link" href="../">
#. {ph1}: </a>
#. {ph2}: <a class="text-link" href="../../showcase/th04/" >
#. {ph3}: </a >
#: website/public/blog/touhou-reconstruction/index.html:1056
#, python-brace-format
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "{ph0}More articles{ph1} · {ph2}Explore a TH04 investigation{ph3}"
msgstr "{ph0}더 많은 기사{ph1} · {ph2}탐색 TH04 조사{ph3}"
#: website/public/blog/touhou-reconstruction/index.html:6
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Reverse Engineering’s Industrial Revolution — REA"
msgstr "리버스 엔지니어링의 산업 혁명—REA"
#: website/public/blog/touhou-reconstruction/index.html:7
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid ""
"N0zoM1z0 reflects on manual reverse engineering, Touhou reconstruction with "
"AI agents, and how knowledge compounds across TH08, TH095 and PC-98 TH04."
msgstr ""
"N0zoM1z0 에 반영한 설명서 리버스 엔지니어링,동방으로 재건 AI 에이전트,그리고 지식이 어떻게 화합물 전 "
"TH08,TH095PC-98TH04."
#: website/public/blog/touhou-reconstruction/index.html:350
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Experience carried between projects"
msgstr "프로젝트 간 경험"
#: website/public/blog/touhou-reconstruction/index.html:364
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/blog/touhou-reconstruction/index.html:379
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Touhou reconstruction essay"
msgstr "동방 재건 에세이"
#: website/public/blog/touhou-reconstruction/index.html:1080
msgctxt "page:blog/touhou-reconstruction/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/examples/dino-lab/index.html:104
msgctxt "page:examples/dino-lab/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <span>
#. {ph3}: </span>
#: website/public/examples/dino-lab/index.html:195
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}Home{ph1}{ph2}/{ph3}Dinosaur speed lab"
msgstr "{ph0}홈{ph1}{ph2}/{ph3}공룡 속도 연구소"
#: website/public/examples/dino-lab/index.html:198
msgctxt "page:examples/dino-lab/index.html"
msgid "Inspect → rebuild → change"
msgstr "검사→다시 작성→변경"
#: website/public/examples/dino-lab/index.html:199
msgctxt "page:examples/dino-lab/index.html"
msgid "Rebuild the dinosaur’s speed rule."
msgstr "공룡의 속도 규칙을 다시 작성하십시오."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <mark class="prose-highlight">
#. {ph3}: </mark>
#: website/public/examples/dino-lab/index.html:200
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"To recreate the game’s acceleration, first find the rule that controls its "
"speed. {ph0}REA returned the running script;{ph1} we used its rule to build "
"this mini-game with {ph2}adjustable speed.{ph3}"
msgstr ""
"게임의 가속을 재현하려면 먼저 속도를 제어하는 규칙을 찾으십시오. {ph0}REA 실행 중인 스크립트를 반환했습니다;{ph1} 우리는이 "
"미니 게임을 구축하기 위해 규칙을 사용 {ph2}조정 가능한 속도.{ph3}"
#: website/public/examples/dino-lab/index.html:209
#: website/public/examples/dino-lab/index.html:208
msgctxt "page:examples/dino-lab/index.html"
msgid "On this page"
msgstr "이 페이지에"
#. {ph0}: <a href="#play">
#. {ph1}: </a>
#: website/public/examples/dino-lab/index.html:211
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}Play and change the speed{ph1}"
msgstr "{ph0}재생 및 속도 변경{ph1}"
#. {ph0}: <a href="#rule">
#. {ph1}: </a>
#: website/public/examples/dino-lab/index.html:212
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}Read the recovered rule{ph1}"
msgstr "{ph0}복구 된 규칙 읽기{ph1}"
#. {ph0}: <a href="#check">
#. {ph1}: </a>
#: website/public/examples/dino-lab/index.html:213
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}Check the reconstruction{ph1}"
msgstr "{ph0}재건 확인{ph1}"
#. {ph0}: <a href="#inspect">
#. {ph1}: </a>
#: website/public/examples/dino-lab/index.html:214
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}Try the analysis{ph1}"
msgstr "{ph0}분석 시도{ph1}"
#: website/public/examples/dino-lab/index.html:219
msgctxt "page:examples/dino-lab/index.html"
msgid "Play and change the speed"
msgstr "재생 및 속도 변경"
#: website/public/examples/dino-lab/index.html:220
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Press Play, then jump over the cactus. Move the speed slider to try a slower"
" or faster game; it switches to a fixed speed. Select the recovered rule to "
"start at 6 and gradually accelerate again."
msgstr ""
"재생을 누른 다음 선인장을 뛰어 넘습니다. 속도 슬라이더를 움직여 더 느리거나 빠른 게임을 시도하세요. 복구 된 규칙을 선택하여 6 에서"
" 시작하고 점차적으로 다시 가속하십시오."
#: website/public/examples/dino-lab/index.html:226
msgctxt "page:examples/dino-lab/index.html"
msgid "Play the reconstruction"
msgstr "재구성한 게임 플레이"
#: website/public/examples/dino-lab/index.html:258
msgctxt "page:examples/dino-lab/index.html"
msgid "Play"
msgstr "시작"
#: website/public/examples/dino-lab/index.html:261
msgctxt "page:examples/dino-lab/index.html"
msgid "Jump ↑"
msgstr "점프 ↑"
#: website/public/examples/dino-lab/index.html:262
msgctxt "page:examples/dino-lab/index.html"
msgid "Restart"
msgstr "다시 시작"
#: website/public/examples/dino-lab/index.html:265
msgctxt "page:examples/dino-lab/index.html"
msgid "Speed"
msgstr "속도"
#: website/public/examples/dino-lab/index.html:275
msgctxt "page:examples/dino-lab/index.html"
msgid "Use the recovered acceleration rule"
msgstr "복구된 가속 규칙 사용"
#: website/public/examples/dino-lab/index.html:279
msgctxt "page:examples/dino-lab/index.html"
msgid "Original rule: start at 6, then increase toward 13."
msgstr "원래 규칙:6 에서 시작한 다음 13 으로 늘립니다."
#: website/public/examples/dino-lab/index.html:282
msgctxt "page:examples/dino-lab/index.html"
msgid "Move the slider to set your own speed. Space or Jump clears a cactus."
msgstr "자신의 속도를 설정하는 슬라이더를 이동합니다. 공간 또는 점프는 선인장을 지 웁니다."
#: website/public/examples/dino-lab/index.html:287
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Enable JavaScript to play the reconstruction. The code and explanation above"
" remain readable."
msgstr "사용JavaScript을 재생하는 재건. 위의 코드와 설명은 읽을 수 있습니다."
#: website/public/examples/dino-lab/index.html:295
msgctxt "page:examples/dino-lab/index.html"
msgid "Read the script REA returned"
msgstr "스크립트 읽기 REA 반환"
#. {ph0}: <a href="https://wayou.github.io/t-rex-runner/" >
#. {ph1}: </a >
#. {ph2}: <code>index.js</code>
#: website/public/examples/dino-lab/index.html:296
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"We inspected {ph0}wayou’s Chromium-derived browser edition{ph1} with REA. It"
" returned the loaded {ph2}, including this branch in the game’s update "
"function:"
msgstr ""
"우리는 검사 {ph0}와이우의 Chromium-파생 브라우저 에디션{ph1} 함께 REA. 그것은 로드 된 반환 {ph2},게임의 "
"업데이트 기능에 이 지점을 포함:"
#. {ph0}: <code>SPEED: 6</code>
#. {ph1}: <code>ACCELERATION: 0.001</code>
#. {ph2}: <code>MAX_SPEED: 13</code>
#: website/public/examples/dino-lab/index.html:312
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"The settings are {ph0}, {ph1} and {ph2}. The game runs this branch on an "
"update without a collision."
msgstr "설정은 다음과 같습니다 {ph0}, {ph1} 그리고 {ph2}. 이 게임은 충돌 없이 업데이트에서 이 브랜치를 실행합니다."
#: website/public/examples/dino-lab/index.html:317
msgctxt "page:examples/dino-lab/index.html"
msgid "Use the same rule in the new game"
msgstr "새로운 게임에서 동일한 규칙을 사용"
#: website/public/examples/dino-lab/index.html:323
#: website/public/examples/dino-lab/index.html:422
msgctxt "page:examples/dino-lab/index.html"
msgid "Copy"
msgstr "복사"
#: website/public/examples/dino-lab/index.html:336
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"The mini-game uses this function for automatic acceleration. Moving the "
"slider supplies a fixed speed instead. Drawing, jump physics and rectangle "
"collision checks are new code for this teaching game; its simulation "
"advances at 60 updates per second."
msgstr ""
"미니 게임은 자동 가속을 위해이 기능을 사용합니다. 슬라이더를 이동하면 대신 고정 속도를 제공합니다. 그리기,점프 물리학 및 사각형 충돌"
" 검사는 이 교육 게임의 새로운 코드입니다.시뮬레이션은 초당 60 개의 업데이트로 진행됩니다."
#. {ph0}: <a href="../../assets/dino-speed.js" download >
#. {ph1}: </a >
#. {ph2}: <a href="../../assets/dino-demo.js">
#. {ph3}: </a>
#: website/public/examples/dino-lab/index.html:342
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}Download the speed rule{ph1} · {ph2}Read the game code{ph3}"
msgstr "{ph0}속도 규칙 다운로드{ph1} · {ph2}게임 코드 읽기{ph3}"
#: website/public/examples/dino-lab/index.html:350
msgctxt "page:examples/dino-lab/index.html"
msgid "Check the reconstruction"
msgstr "재건 확인"
#: website/public/examples/dino-lab/index.html:351
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"We called the original game’s update function with obstacles and automatic "
"scheduling disabled. Compare those recorded speeds with a replay of the "
"recovered rule."
msgstr ""
"우리는 장애물과 자동 예약이 비활성화 된 원래 게임의 업데이트 기능을 불렀습니다. 기록 된 속도를 복구 된 규칙의 재생과 비교하십시오."
#: website/public/examples/dino-lab/index.html:360
msgctxt "page:examples/dino-lab/index.html"
msgid "Updates"
msgstr "업데이트"
#: website/public/examples/dino-lab/index.html:361
msgctxt "page:examples/dino-lab/index.html"
msgid "Original game"
msgstr "원래 게임"
#: website/public/examples/dino-lab/index.html:362
msgctxt "page:examples/dino-lab/index.html"
msgid "Reconstructed rule"
msgstr "재구성된 규칙"
#: website/public/examples/dino-lab/index.html:389
msgctxt "page:examples/dino-lab/index.html"
msgid "Run the speed check"
msgstr "속도 검사 실행"
#: website/public/examples/dino-lab/index.html:392
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Values rounded to three decimals. The branch checks before adding, so the "
"final increment can take speed just above 13."
msgstr ""
"값은 세 개의 소수로 반올림. 분기는 더하기 전에 확인합니다.그래서 최종 인크림트는 13 을 조금 넘는 속도를 낼 수 있습니다."
#: website/public/examples/dino-lab/index.html:398
msgctxt "page:examples/dino-lab/index.html"
msgid "Try the analysis yourself"
msgstr "직접 분석해 보세요"
#. {ph0}: <a href="../../get-started/">
#. {ph1}: </a>
#: website/public/examples/dino-lab/index.html:400
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}Set up REA{ph1} with your coding agent."
msgstr "{ph0}설정 REA{ph1} 코딩 에이전트와 함께."
#. {ph0}: <a href="../../guides/browser/#prepare" >
#. {ph1}: </a >
#. {ph2}: <code>https://wayou.github.io/t-rex-runner/</code>
#: website/public/examples/dino-lab/index.html:404
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Follow the {ph0}browser connection steps{ph1}, using {ph2} as the page URL."
msgstr "따라 {ph0}브라우저 연결 단계{ph1},사용 {ph2} 페이지"
#: website/public/examples/dino-lab/index.html:411
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Give your agent the page URL and local debugging endpoint, then copy this "
"prompt."
msgstr "에이전트에 페이지 및 로컬 디버깅 끝점을 지정한 다음 이 프롬프트를 복사합니다."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/examples/dino-lab/index.html:418
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="lab-analysis-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/examples/dino-lab/index.html:431
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to inspect this dinosaur game. Why does it get "
"faster? Show the speed rule, then build a small version with an adjustable "
"speed.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 이 공룡 게임을 검사합니다. 왜 더 빨리 얻을 수 있습니까? 속도 규칙을 표시 한 다음 조정 "
"가능한 속도로 작은 버전을 만듭니다.{ph3}{ph4}{ph5}"
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/examples/dino-lab/index.html:440
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Ask a follow-up: {ph0}“Where is jump height calculated? Add a jump-height "
"control to the new version.”{ph1}"
msgstr "후속 조치 요청: {ph0}\"점프 높이는 어디에서 계산됩니까? 새 버전에 점프 높이 컨트롤을 추가합니다.”{ph1}"
#. {ph0}: <a href="https://github.com/wayou/t-rex-
#. runner/blob/5455bfa408ec6b707c7300ff194b7390733a766d/index.js#L565-L571" >
#. {ph1}: </a >
#. {ph2}: <a href="../../assets/licenses/dinosaur.txt" >
#. {ph3}: </a >
#: website/public/examples/dino-lab/index.html:447
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Source: {ph0}inspected speed code{ph1}, Chromium Authors. {ph2}Copyright and"
" BSD license{ph3}. REA 4.1.0 inspected the running HTTP edition in Chrome "
"150."
msgstr ""
"출처: {ph0}검사된 속도 코드{ph1}, Chromium 저자. {ph2}저작권 및 라이선스{ph3}. REA 4.1.0 에서 "
"실행중인 버전을 검사했습니다. Chrome 150."
#: website/public/examples/dino-lab/index.html:6
msgctxt "page:examples/dino-lab/index.html"
msgid "Chrome Dinosaur Game: Rebuild Its Speed Rule — REA"
msgstr "Chrome공룡:게임을 다시 속도 원칙—REA"
#: website/public/examples/dino-lab/index.html:7
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Read the dinosaur game’s speed rule with REA, rebuild it, then change the "
"speed and play."
msgstr "공룡 게임의 속도 규칙을 읽으십시오 REA,다시 만든 다음 속도를 바꾸고 재생하십시오."
#: website/public/examples/dino-lab/index.html:217
msgctxt "page:examples/dino-lab/index.html"
msgid "Dinosaur speed reconstruction"
msgstr "공룡 속도 재구성"
#: website/public/examples/dino-lab/index.html:248
msgctxt "page:examples/dino-lab/index.html"
msgid ""
"Dinosaur mini-game. Use the Jump button or press Space while the game is "
"focused."
msgstr "공룡 미니 게임. 게임이 집중되는 동안 점프 버튼을 누르거나 공간을 사용합니다."
#: website/public/examples/dino-lab/index.html:323
msgctxt "page:examples/dino-lab/index.html"
msgid "Copy reconstructed speed rule"
msgstr "재구성된 속도 규칙 복사"
#: website/public/examples/dino-lab/index.html:422
msgctxt "page:examples/dino-lab/index.html"
msgid "Copy dinosaur analysis prompt"
msgstr "복사 공룡 분석 프롬프트"
#: website/public/examples/dino-lab/index.html:475
msgctxt "page:examples/dino-lab/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/faq/index.html:103
msgctxt "page:faq/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../">
#. {ph1}: </a>
#: website/public/faq/index.html:194
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}Home{ph1} / FAQ"
msgstr "{ph0}홈{ph1} /자주하는 질문"
#: website/public/faq/index.html:195
msgctxt "page:faq/index.html"
msgid "REA FAQ."
msgstr "REA자주 묻는 질문에 있습니다."
#: website/public/faq/index.html:196
msgctxt "page:faq/index.html"
msgid "Setup, updates, analysis and troubleshooting."
msgstr "설정,업데이트,분석 및 문제 해결."
#: website/public/faq/index.html:200
msgctxt "page:faq/index.html"
msgid "Topics"
msgstr "주제"
#. {ph0}: <a href="#setup">
#. {ph1}: </a>
#: website/public/faq/index.html:202
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}Setup and updates{ph1}"
msgstr "{ph0}설정 및 업데이트{ph1}"
#. {ph0}: <a href="#analysis">
#. {ph1}: </a>
#: website/public/faq/index.html:203
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}Analysis{ph1}"
msgstr "{ph0}분석{ph1}"
#. {ph0}: <a href="#troubleshooting">
#. {ph1}: </a>
#: website/public/faq/index.html:204
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}Troubleshooting{ph1}"
msgstr "{ph0}문제 해결{ph1}"
#. {ph0}: <a href="#sharing">
#. {ph1}: </a>
#: website/public/faq/index.html:205
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}Data and sharing{ph1}"
msgstr "{ph0}데이터 및 공유{ph1}"
#: website/public/faq/index.html:214
msgctxt "page:faq/index.html"
msgid "Setup and updates"
msgstr "설정 및 업데이트"
#: website/public/faq/index.html:217
msgctxt "page:faq/index.html"
msgid "How do I install REA?"
msgstr "REA는 어떻게 설치하나요?"
#: website/public/faq/index.html:225
msgctxt "page:faq/index.html"
msgid "Terminal · agent setup"
msgstr "터미널*에이전트 설정"
#: website/public/faq/index.html:226 website/public/faq/index.html:267
#: website/public/faq/index.html:285 website/public/faq/index.html:369
#: website/public/faq/index.html:416 website/public/faq/index.html:456
#: website/public/faq/index.html:476
msgctxt "page:faq/index.html"
msgid "Copy"
msgstr "복사"
# Reviewed for readable setup and analysis terminology.
#. {ph0}: <a href="../get-started/">
#. {ph1}: </a>
#: website/public/faq/index.html:237
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Setup registers REA's MCP connection and installs the matching investigation"
" skill. Restart your agent when it finishes, then give it a target path and "
"a question. {ph0}Follow the setup guide{ph1} for prerequisites and your "
"first analysis."
msgstr ""
"설정 명령은 REA의 MCP 연결을 등록하고 분석 스킬을 설치합니다. 완료되면 에이전트를 다시 시작한 뒤 분석할 파일 경로와 질문을 "
"전달하세요. 필요한 환경과 첫 분석 방법은 {ph0}설정 가이드{ph1}에서 확인할 수 있습니다."
#: website/public/faq/index.html:246
msgctxt "page:faq/index.html"
msgid "Which coding agents can use REA?"
msgstr "어떤 코딩 에이전트가 사용할 수 있습니까 REA?"
# Reviewed for readable instructions and accurate software terminology.
#: website/public/faq/index.html:247
msgctxt "page:faq/index.html"
msgid ""
"Any agent that supports local MCP servers. Setup includes Claude Code, "
"Claude Desktop, Codex, Cursor, Gemini CLI, Windsurf, Devin, OpenCode, "
"Antigravity, GitHub Copilot CLI, Command Code, Grok Build, OMP, and VS Code."
" Grok Bot's connector is added from its chat."
msgstr ""
"로컬 MCP 서버를 지원하는 에이전트라면 사용할 수 있습니다. 설정은 Claude Code, Claude Desktop, Codex, "
"Cursor, Gemini CLI, Windsurf, Devin, OpenCode, Antigravity, GitHub Copilot "
"CLI, Command Code, Grok Build, OMP, VS Code를 지원합니다. Grok Bot의 커넥터는 채팅에서 "
"추가합니다."
#. {ph0}: <a href="../get-started/#agent">
#. {ph1}: </a>
#: website/public/faq/index.html:254
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}Connect your coding agent{ph1}."
msgstr "{ph0}코딩 에이전트 연결{ph1}."
#: website/public/faq/index.html:259
msgctxt "page:faq/index.html"
msgid "How do I update REA?"
msgstr "REA는 어떻게 업데이트하나요?"
#: website/public/faq/index.html:260
msgctxt "page:faq/index.html"
msgid ""
"REA releases frequently, including bug fixes. If you installed the CLI with "
"npm:"
msgstr "REA 버그 수정을 포함하여 자주 출시됩니다. 당신이 설치 한 경우 CLI 함께 npm:"
#: website/public/faq/index.html:266
msgctxt "page:faq/index.html"
msgid "Terminal · installed CLI"
msgstr "터미널·설치CLI"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <code>npx</code>
#: website/public/faq/index.html:278
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Follow the setup refresh command printed by the update. If you set up your "
"agent through {ph0}, run:"
msgstr "업데이트가 출력하는 설정 갱신 명령을 실행하세요. {ph0}로 에이전트를 설정했다면 다음 명령을 사용하세요:"
#: website/public/faq/index.html:284
msgctxt "page:faq/index.html"
msgid "Terminal · refresh agent setup"
msgstr "터미널*에이전트 설정 새로 고침"
# Reviewed for readable setup and analysis terminology.
#. {ph0}: <code>npx -y rea-agents@latest</code>
#: website/public/faq/index.html:296
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Review the changes and restart your agent. Its REA connection pins a package"
" version, so refreshing setup makes it use the new release. For one-off CLI "
"commands, use {ph0} followed by the command."
msgstr ""
"변경 내용을 확인하고 에이전트를 다시 시작하세요. REA 연결 설정은 특정 패키지 버전을 사용하므로 설정 명령을 다시 실행해야 새 버전이"
" 적용됩니다. CLI를 한 번 실행할 때는 {ph0} 뒤에 원하는 명령을 붙이세요."
#: website/public/faq/index.html:304
msgctxt "page:faq/index.html"
msgid "Is installing the skill from skills.sh enough?"
msgstr "에서 기술을 설치 skills.sh 충분히?"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="#install">
#. {ph1}: </a>
#: website/public/faq/index.html:307
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"The skill gives your agent investigation instructions. Run {ph0}REA "
"setup{ph1} to connect the MCP server and install the matching skill, then "
"restart your agent so it can call the tools."
msgstr ""
"스킬은 에이전트에게 분석 방법을 알려줍니다. {ph0}REA 설정{ph1}을 실행해 MCP 서버를 연결하고 스킬을 설치하세요. 도구를 "
"사용하려면 에이전트를 다시 시작해야 합니다."
#: website/public/faq/index.html:318
msgctxt "page:faq/index.html"
msgid "Analysis"
msgstr "분석"
#: website/public/faq/index.html:321
msgctxt "page:faq/index.html"
msgid "What can I analyze with REA?"
msgstr "무엇을 분석 할 수 있습니까 REA?"
#: website/public/faq/index.html:322
msgctxt "page:faq/index.html"
msgid "Start with the kind of software you have:"
msgstr "당신이 가지고있는 소프트웨어의 종류로 시작:"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../guides/native/" >
#. {ph1}: </a >
#: website/public/faq/index.html:324
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"{ph0}Native executables and libraries{ph1}: functions, assembly, pseudocode "
"and references."
msgstr "{ph0}네이티브 실행 파일과 라이브러리{ph1}: 함수, 어셈블리, 의사 코드, 참조."
#. {ph0}: <a href="../guides/javascript/" >
#. {ph1}: </a >
#: website/public/faq/index.html:329
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"{ph0}JavaScript and Electron apps{ph1}: modules, imports, IPC and source "
"locations."
msgstr "{ph0}JavaScript 그리고 Electron 앱{ph1}:모듈,수입,아이피씨 및 소스 위치."
#. {ph0}: <a href="../guides/browser/">
#. {ph1}: </a>
#: website/public/faq/index.html:334
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}Browser pages{ph1}: scripts, requests and runtime observations."
msgstr "{ph0}브라우저 페이지{ph1}:스크립트,요청 및 런타임 관찰."
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../showcase/">
#. {ph1}: </a>
#: website/public/faq/index.html:339
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"REA also has workflows for managed assemblies, Android APKs, firmware and "
"packaged resources. {ph0}See the case studies{ph1} for worked "
"investigations."
msgstr ""
"REA는 .NET 등의 관리형 어셈블리, Android APK, 펌웨어, 패키지 리소스도 분석합니다. 실제 분석 과정은 {ph0}사례 "
"소개{ph1}에서 확인하세요."
#: website/public/faq/index.html:347
msgctxt "page:faq/index.html"
msgid "Do I need Hopper, Ghidra or IDA?"
msgstr "내가 필요합니까 Hopper, Ghidra 또는 IDA?"
# Reviewed for readable instructions and accurate software terminology.
#: website/public/faq/index.html:348
msgctxt "page:faq/index.html"
msgid ""
"Deep native analysis uses one of them. Static JavaScript and .NET inspection"
" work with the supplied files and do not need a native analysis engine."
msgstr ""
"네이티브 프로그램을 깊이 분석할 때는 이 중 하나를 사용합니다. JavaScript와 .NET의 정적 분석은 제공된 파일로 수행하므로 "
"네이티브 분석 엔진이 필요하지 않습니다."
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../get-started/#native">
#. {ph1}: </a>
#: website/public/faq/index.html:353
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Connect your existing Ghidra or IDA installation, or let setup detect Hopper"
" and propose an installation. Your host and target determine which provider "
"can be used. {ph0}Set up native analysis{ph1}."
msgstr ""
"기존 Ghidra나 IDA를 연결하세요. 또는 설정 명령으로 Hopper를 찾아 설치 계획을 확인할 수 있습니다. 사용할 수 있는 분석 "
"도구는 운영체제와 대상에 따라 달라집니다. {ph0}네이티브 분석 설정{ph1}."
#: website/public/faq/index.html:361
msgctxt "page:faq/index.html"
msgid "Can I use REA without a coding agent?"
msgstr "내가 사용할 수 있습니까 REA 코딩 에이전트가 없다면?"
# Reviewed for readable instructions and accurate software terminology.
#: website/public/faq/index.html:362
msgctxt "page:faq/index.html"
msgid ""
"Yes. The CLI uses the same analysis workflows. For a local JavaScript or "
"Electron app:"
msgstr "네. CLI에서도 같은 분석 흐름을 사용합니다. 로컬 JavaScript 또는 Electron 앱은 다음처럼 분석합니다:"
#: website/public/faq/index.html:368
msgctxt "page:faq/index.html"
msgid "Terminal · static application analysis"
msgstr "터미널*정적 애플리케이션 분석"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../get-started/#terminal">
#. {ph1}: </a>
#: website/public/faq/index.html:381
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Replace the path with an extracted application folder or ASAR file. {ph0}Use"
" the CLI{ph1} for installation options."
msgstr "경로를 압축 해제한 앱 폴더나 ASAR 파일로 바꾸세요. 설치 방법은 {ph0}CLI 사용 안내{ph1}를 참고하세요."
# Reviewed for readable setup and analysis terminology.
#: website/public/faq/index.html:388
msgctxt "page:faq/index.html"
msgid "What code does REA return?"
msgstr "REA는 어떤 코드를 반환하나요?"
# Reviewed for readable setup and analysis terminology.
#: website/public/faq/index.html:389
msgctxt "page:faq/index.html"
msgid ""
"Native analysis returns assembly and pseudocode, with calls, references and "
"relevant constants. JavaScript analysis returns modules, their relationships"
" and source locations."
msgstr ""
"네이티브 프로그램을 분석하면 어셈블리와 의사 코드, 함수 호출, 참조, 관련 상수를 반환합니다. JavaScript를 분석하면 모듈과 "
"모듈 간 관계, 소스 위치를 반환합니다."
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../showcase/dx-ball/#sound-pan" >
#. {ph1}: </a >
#. {ph2}: <a href="../showcase/ctf/">
#. {ph3}: </a>
#: website/public/faq/index.html:394
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Your agent uses these findings to explain the behavior or write and test an "
"implementation. The {ph0}DX-Ball calculation{ph1} and {ph2}CTF flag "
"checker{ph3} show how that process works."
msgstr ""
"에이전트는 분석 결과로 동작을 설명하거나 구현을 작성하고 테스트합니다. {ph0}DX-Ball 계산{ph1}과 {ph2}CTF flag "
"검사기{ph3}에서 그 과정을 볼 수 있습니다."
#: website/public/faq/index.html:405
msgctxt "page:faq/index.html"
msgid "What should I ask my agent?"
msgstr "에이전트에게 무엇을 물어보면 되나요?"
# Reviewed for readable instructions and accurate software terminology.
#: website/public/faq/index.html:406
msgctxt "page:faq/index.html"
msgid ""
"Give it a local target and one behavior to investigate. For a JavaScript or "
"Electron app:"
msgstr "로컬 대상과 조사할 동작 하나를 알려주세요. JavaScript 또는 Electron 앱의 예:"
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/faq/index.html:412
#, python-brace-format
msgctxt "page:faq/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../guides/">
#. {ph1}: </a>
#: website/public/faq/index.html:435
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Replace the path with your target. The {ph0}guides{ph1} provide prompts for "
"native, Electron and browser examples."
msgstr ""
"경로를 분석할 대상으로 바꾸세요. {ph0}가이드{ph1}에는 네이티브 프로그램, Electron, 브라우저용 예시 프롬프트가 있습니다."
#: website/public/faq/index.html:445
msgctxt "page:faq/index.html"
msgid "Troubleshooting"
msgstr "문제 해결"
#: website/public/faq/index.html:448
msgctxt "page:faq/index.html"
msgid "Why can't my agent see the REA tools?"
msgstr "왜 내 에이전트가 볼 수 없습니까 REA 도구?"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <code>doctor</code>
#: website/public/faq/index.html:449
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Restart or reconnect your agent after setup. Check its REA registration with"
" {ph0}; for Codex:"
msgstr "설정 후 에이전트를 다시 시작하거나 다시 연결하세요. {ph0}로 REA 등록 상태를 확인할 수 있습니다. Codex의 예:"
#: website/public/faq/index.html:455
msgctxt "page:faq/index.html"
msgid "Terminal · check one client"
msgstr "터미널*하나의 클라이언트 확인"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <code>codex</code>
#. {ph1}: <code>claude_code</code>
#. {ph2}: <code>cursor</code>
#: website/public/faq/index.html:467
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Replace {ph0} with your client ID, such as {ph1} or {ph2}. If the report "
"shows a missing or stale registration, run setup for that client:"
msgstr ""
"{ph0}를 {ph1} 또는 {ph2} 같은 클라이언트 ID로 바꾸세요. 등록이 없거나 오래되었다고 나오면 해당 클라이언트의 설정을 다시"
" 실행하세요:"
#: website/public/faq/index.html:475
msgctxt "page:faq/index.html"
msgid "Terminal · repair one client's setup"
msgstr "터미널*한 클라이언트의 설정을 복구"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../get-started/#help">
#. {ph1}: </a>
#: website/public/faq/index.html:487
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Review its plan and restart the client. If registration is healthy but tools"
" remain absent, check the client's MCP connection error. {ph0}More setup "
"diagnostics{ph1}."
msgstr ""
"변경 계획을 확인하고 클라이언트를 다시 시작하세요. 등록은 정상이지만 도구가 보이지 않으면 클라이언트의 MCP 연결 오류를 확인하세요. "
"{ph0}추가 설정 진단{ph1}."
#: website/public/faq/index.html:495
msgctxt "page:faq/index.html"
msgid "Do I need to start Hopper first?"
msgstr "내가 시작해야합니까 Hopper 먼저?"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="../get-started/#native">
#. {ph1}: </a >
#: website/public/faq/index.html:496
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"REA starts Hopper when an operation needs it. On macOS, complete the first-"
"run choice of demo mode or license activation before unattended analysis. "
"{ph0}See native provider setup{ph1}."
msgstr ""
"REA는 작업에 필요할 때 Hopper를 실행합니다. macOS에서는 자동 분석 전에 첫 실행 화면에서 데모 모드나 라이선스 활성화를 "
"선택해야 합니다. {ph0}네이티브 분석 도구 설정{ph1}."
#: website/public/faq/index.html:505
msgctxt "page:faq/index.html"
msgid "What should I do if I hit a bug?"
msgstr "버그가 발생하면 어떻게 하나요?"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="#update">
#. {ph1}: </a>
#: website/public/faq/index.html:506
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"{ph0}Update REA{ph1}, restart your agent and retry the same task. A recent "
"release may already fix the problem."
msgstr ""
"{ph0}REA를 업데이트{ph1}하고 에이전트를 다시 시작한 뒤 같은 작업을 시도하세요. 최신 버전에서 이미 문제가 해결되었을 수 "
"있습니다."
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="https://github.com/morluto/rea/issues/new/choose" >
#. {ph1}: </a >
#: website/public/faq/index.html:510
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"If it persists, {ph0}open an issue{ph1} with your REA version, operating "
"system, target type, steps to reproduce and error output. Include the "
"provider name when the problem involves native analysis."
msgstr ""
"문제가 계속되면 REA 버전, 운영체제, 대상 종류, 재현 방법, 오류 출력을 포함해 {ph0}이슈를 등록하세요{ph1}. 네이티브 분석"
" 문제라면 분석 도구 이름도 알려주세요."
#: website/public/faq/index.html:524
msgctxt "page:faq/index.html"
msgid "Data and sharing"
msgstr "데이터 및 공유"
#: website/public/faq/index.html:527
msgctxt "page:faq/index.html"
msgid "Does REA upload my app?"
msgstr "않습니다 REA 내 앱을 업로드 하시겠습니까?"
# Reviewed for readable instructions and accurate software terminology.
#: website/public/faq/index.html:528
msgctxt "page:faq/index.html"
msgid ""
"REA analyzes targets on your machine. Your agent receives the results, and "
"its model provider's data policy applies to those results."
msgstr "REA는 사용자의 컴퓨터에서 대상을 분석합니다. 결과는 에이전트가 받으므로 해당 모델 제공자의 데이터 정책이 적용됩니다."
#: website/public/faq/index.html:535
msgctxt "page:faq/index.html"
msgid "How can I share an example or contribute?"
msgstr "예를 공유하거나 기여할 수 있는 방법은 무엇입니까?"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="https://github.com/morluto/rea/issues/new/choose" >
#. {ph1}: </a >
#. {ph2}: <a href="https://github.com/morluto/rea/pulls">
#. {ph3}: </a >
#: website/public/faq/index.html:536
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Have a useful REA example? We'd love to see it. Share the target, your "
"question, the findings and how you checked them in an {ph0}issue{ph1} or "
"{ph2}pull request{ph3}. Short code excerpts and figures help others follow "
"the investigation."
msgstr ""
"유용한 REA 사례가 있나요? 함께 보고 싶습니다. 대상, 질문, 발견한 내용, 검증 방법을 {ph0}이슈{ph1}나 "
"{ph2}PR{ph3}로 공유해 주세요. 짧은 코드와 그림을 곁들이면 과정을 이해하기 쉽습니다."
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <a href="https://discord.gg/GkcryMnJDM">
#. {ph1}: </a>
#: website/public/faq/index.html:548
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"Bug reports, feature requests, documentation and code improvements are "
"welcome too. You can also discuss an example in the {ph0}community{ph1}."
msgstr "버그 보고, 기능 요청, 문서와 코드 개선도 환영합니다. {ph0}커뮤니티{ph1}에서 사례를 이야기할 수도 있습니다."
#: website/public/faq/index.html:6
msgctxt "page:faq/index.html"
msgid "REA FAQ: Setup, Updates and Troubleshooting"
msgstr "REAFAQ 설치,업데이트 문제 해결"
# Reviewed for readable instructions and accurate software terminology.
#: website/public/faq/index.html:7
msgctxt "page:faq/index.html"
msgid ""
"Answers to common REA questions: installation, updates, analysis tools, "
"coding agents, troubleshooting and sharing examples."
msgstr "REA의 설치, 업데이트, 분석 도구, 코딩 에이전트, 문제 해결, 사례 공유에 관한 자주 묻는 질문."
#: website/public/faq/index.html:199
msgctxt "page:faq/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/faq/index.html:208
msgctxt "page:faq/index.html"
msgid "Frequently asked questions about REA"
msgstr "자주 묻는 질문들에 대한REA"
#: website/public/faq/index.html:226
msgctxt "page:faq/index.html"
msgid "Copy REA setup command"
msgstr "복사REA설정 명령"
#: website/public/faq/index.html:267
msgctxt "page:faq/index.html"
msgid "Copy REA update command"
msgstr "복사REAupdate 명령"
#: website/public/faq/index.html:285
msgctxt "page:faq/index.html"
msgid "Copy agent setup refresh command"
msgstr "에이전트 설치 복사 새로 고침 명령"
#: website/public/faq/index.html:369
msgctxt "page:faq/index.html"
msgid "Copy REA CLI analysis command"
msgstr "복사REACLI분석 명령"
#: website/public/faq/index.html:416
msgctxt "page:faq/index.html"
msgid "Copy example analysis prompt"
msgstr "예제 분석 프롬프트 복사"
#: website/public/faq/index.html:456
msgctxt "page:faq/index.html"
msgid "Copy client diagnosis command"
msgstr "클라이언트 진단 복사 명령"
#: website/public/faq/index.html:476
msgctxt "page:faq/index.html"
msgid "Copy scoped setup command"
msgstr "범위 설정 복사 명령"
#: website/public/faq/index.html:573
msgctxt "page:faq/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/first-investigation/index.html:103
msgctxt "page:first-investigation/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../">
#. {ph1}: </a>
#: website/public/first-investigation/index.html:194
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}Home{ph1} / Your first investigation"
msgstr "{ph0}홈{ph1} /첫 번째 조사"
#. {ph0}: <br />
#: website/public/first-investigation/index.html:197
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "Find out where{ph0}exported notes go."
msgstr "어디 찾기{ph0}내 보낸 노트는 이동합니다."
#: website/public/first-investigation/index.html:198
msgctxt "page:first-investigation/index.html"
msgid ""
"Use REA to inspect a small app, follow its Export notes button and check one"
" detail yourself."
msgstr "사용 REA 작은 응용 프로그램을 검사하려면 내보내기 노트 버튼을 따라 하나의 세부 사항을 직접 확인하십시오."
#: website/public/first-investigation/index.html:209
msgctxt "page:first-investigation/index.html"
msgid "In this exercise"
msgstr "이 연습에서"
#. {ph0}: <a href="#setup">
#. {ph1}: </a>
#: website/public/first-investigation/index.html:211
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}1. Set up{ph1}"
msgstr "{ph0}1. 설정{ph1}"
#. {ph0}: <a href="#ask">
#. {ph1}: </a>
#: website/public/first-investigation/index.html:212
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}2. Ask about export{ph1}"
msgstr "{ph0}2. 수출에 대해 문의{ph1}"
#. {ph0}: <a href="#answer">
#. {ph1}: </a>
#: website/public/first-investigation/index.html:213
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}3. Follow the answer{ph1}"
msgstr "{ph0}3. 답을 따라{ph1}"
#. {ph0}: <a href="#check">
#. {ph1}: </a>
#: website/public/first-investigation/index.html:214
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}4. Check a prediction{ph1}"
msgstr "{ph0}4. 예측 확인{ph1}"
#. {ph0}: <a href="#next">
#. {ph1}: </a>
#: website/public/first-investigation/index.html:215
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}5. Ask another question{ph1}"
msgstr "{ph0}5. 다른 질문{ph1}"
#: website/public/first-investigation/index.html:220
msgctxt "page:first-investigation/index.html"
msgid "1. Connect your agent to REA"
msgstr "1. 에이전트에 연결 REA"
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/first-investigation/index.html:229
#: website/public/first-investigation/index.html:279
#: website/public/first-investigation/index.html:401
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/first-investigation/index.html:234
#: website/public/first-investigation/index.html:256
#: website/public/first-investigation/index.html:284
#: website/public/first-investigation/index.html:406
#: website/public/first-investigation/index.html:448
msgctxt "page:first-investigation/index.html"
msgid "Copy"
msgstr "복사"
#: website/public/first-investigation/index.html:253
msgctxt "page:first-investigation/index.html"
msgid "Or run this command in your terminal:"
msgstr "또는 터미널에서 이 명령을 실행하십시오:"
#: website/public/first-investigation/index.html:265
msgctxt "page:first-investigation/index.html"
msgid ""
"Review the plan, approve the setup, then restart your agent. Already "
"connected? Continue below."
msgstr "계획을 검토하고 설정을 승인한 다음 에이전트를 다시 시작하십시오. 이미 연결되어 있습니까? 아래 계속."
#: website/public/first-investigation/index.html:271
msgctxt "page:first-investigation/index.html"
msgid "2. Ask where the CSV is written"
msgstr "2. 해CSV기록"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/first-investigation/index.html:272
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"The example is a six-file Electron app with an {ph0}Export notes{ph1} "
"button. Your agent can inspect its code without installing or launching "
"Electron."
msgstr ""
"예는 6 개의 파일입니다. Electron 와 응용 프로그램 {ph0}노트 내보내기{ph1} 버튼. 에이전트는 설치 또는 실행 없이 해당"
" 코드를 검사할 수 있습니다 Electron."
#: website/public/first-investigation/index.html:307
msgctxt "page:first-investigation/index.html"
msgid ""
"Your agent downloads the files and gives the unpacked folder to REA for "
"inspection."
msgstr "에이전트가 파일을 다운로드하고 압축을 푼 폴더를 REA 검사를 위해."
#. {ph0}: <a class="button" href="../examples/notes-example.zip"
#. download="notes-example.zip" >
#. {ph1}: </a >
#: website/public/first-investigation/index.html:311
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}Download example ZIP{ph1}"
msgstr "{ph0}다운로드 예제 우편 번호{ph1}"
#. {ph0}: <code>notes-example</code>
#: website/public/first-investigation/index.html:319
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"If your agent can’t download files, unzip this archive yourself. Give it the"
" path to the {ph0} folder and the same export question."
msgstr ""
"에이전트가 파일을 다운로드할 수 없는 경우 이 아카이브의 압축을 직접 풉니다. 그 길을 {ph0} 폴더 및 동일한 내보내기 질문."
#: website/public/first-investigation/index.html:326
msgctxt "page:first-investigation/index.html"
msgid "3. Follow the answer back to the code"
msgstr "3. 답을 따라 코드로 돌아갑니다"
#: website/public/first-investigation/index.html:327
msgctxt "page:first-investigation/index.html"
msgid "Look for a short explanation with file and line references:"
msgstr "파일 및 줄 참조와 함께 간단한 설명을 찾으십시오:"
#. {ph0}: <code>notes:export</code>
#. {ph1}: <code>notes.csv</code>
#. {ph2}: <code>id</code>
#. {ph3}: <code>title</code>
#: website/public/first-investigation/index.html:329
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"The button sends a {ph0} message. The main process formats the notes as CSV "
"and writes {ph1} in the user’s Downloads folder. The columns are {ph2} and "
"{ph3}."
msgstr ""
"이 버튼은 {ph0} 메시지 주요 프로세스는 노트를 다음과 같이 포맷합니다. CSV 그리고 글을 쓰죠. {ph1} 사용자의 다운로드 "
"폴더에 있습니다. 열은 {ph2} 그리고 {ph3}."
#: website/public/first-investigation/index.html:337
msgctxt "page:first-investigation/index.html"
msgid "From the button to the file writer"
msgstr "버튼에서 파일 작성기로"
#: website/public/first-investigation/index.html:366
msgctxt "page:first-investigation/index.html"
msgid ""
"REA’s static analysis pairs the message with its handler. The destination is"
" read from code."
msgstr "REA정적 분석은 메시지와 핸들러를 결합합니다. 대상은 코드에서 읽습니다."
#: website/public/first-investigation/index.html:382
msgctxt "page:first-investigation/index.html"
msgid ""
"The file path, formatter and write call are together in this handler. Ask "
"your agent to show these lines if its answer leaves them out."
msgstr ""
"파일 경로,포맷터 및 쓰기 호출이 이 핸들러에 함께 있습니다. 그것의 응답이 그(것)들을 밖으로 떠나는 경우에 이 선을 보여주기 위하여 "
"당신의 대리인을 요구하십시오."
#. {ph0}: <a href="../guides/javascript/#follow" >
#. {ph1}: </a >
#: website/public/first-investigation/index.html:387
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}See the full code trace and recorded REA result{ph1}."
msgstr "{ph0}전체 코드 추적 및 기록보기 REA 결과{ph1}."
#: website/public/first-investigation/index.html:394
msgctxt "page:first-investigation/index.html"
msgid "4. Check a prediction"
msgstr "4. 예측 확인"
#: website/public/first-investigation/index.html:395
msgctxt "page:first-investigation/index.html"
msgid ""
"A comma separates CSV columns. What happens when a note title itself "
"contains a comma or quotation marks?"
msgstr "쉼표로 구분 CSV 열. 메모 제목 자체에 쉼표나 따옴표가 있으면 어떻게 됩니까?"
#: website/public/first-investigation/index.html:439
msgctxt "page:first-investigation/index.html"
msgid "Run the check yourself"
msgstr "직접 확인 실행"
#. {ph0}: <code>notes-example</code>
#: website/public/first-investigation/index.html:440
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "Open a terminal in the unpacked {ph0} folder:"
msgstr "압축을 푼 터미널을 엽니 다 {ph0} 폴더:"
#: website/public/first-investigation/index.html:462
msgctxt "page:first-investigation/index.html"
msgid ""
"This command uses a shell with here-document support, such as Bash or Zsh. "
"Your agent can run the same JavaScript in your platform’s shell."
msgstr ""
"이 명령은 여기 문서 지원 셸을 사용합니다. 귀하의 에이전트는 동일한 실행할 수 있습니다 JavaScript 플랫폼의 쉘에서."
#: website/public/first-investigation/index.html:470
msgctxt "page:first-investigation/index.html"
msgid "5. Ask another question"
msgstr "5. 다른 질문"
#: website/public/first-investigation/index.html:471
msgctxt "page:first-investigation/index.html"
msgid "Try a follow-up in the same conversation:"
msgstr "동일한 대화에서 후속 조치를 시도하십시오:"
#: website/public/first-investigation/index.html:473
msgctxt "page:first-investigation/index.html"
msgid ""
"What happens if the file can’t be written? Follow the error back to the "
"page."
msgstr "파일을 작성할 수 없는 경우 어떻게 됩니까? 오류를 따라 페이지로 돌아갑니다."
#: website/public/first-investigation/index.html:478
msgctxt "page:first-investigation/index.html"
msgid ""
"Or give your agent an app of your own and ask about one button, file or "
"behavior."
msgstr "또는 에이전트에게 자신의 앱을 제공하고 하나의 버튼,파일 또는 행동에 대해 물어보십시오."
#. {ph0}: <a href="../showcase/notion/">
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/first-investigation/index.html:483
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}How Notion copies text and HTML{ph1}{ph2}Follow a clipboard feature in "
"a packaged Electron app.{ph3}"
msgstr "{ph0}어떻게 Notion 텍스트 복사{ph1}{ph2}패키지에서 클립보드 기능 따르기 Electron 앱{ph3}"
#. {ph0}: <a href="../showcase/dx-ball/" >
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/first-investigation/index.html:489
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}How DX-Ball calculates sound panning{ph1}{ph2}Read the original "
"instructions and the reconstruction’s checks.{ph3}"
msgstr "{ph0}어떻게 DX-Ball 사운드 패닝 계산{ph1}{ph2}원래 지침과 재건 수표를 읽으십시오.{ph3}"
#. {ph0}: <a href="../faq/#troubleshooting" >
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/first-investigation/index.html:497
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}Troubleshoot setup or analysis{ph1}{ph2}Update REA and check the "
"connection if you get stuck.{ph3}"
msgstr "{ph0}설정 또는 분석 문제 해결{ph1}{ph2}업데이트 REA 문제가 발생할 경우 연결을 확인합니다.{ph3}"
#: website/public/first-investigation/index.html:6
msgctxt "page:first-investigation/index.html"
msgid "Your First Reverse Engineering Investigation — REA"
msgstr "당신의 첫번째 리버스 엔지니어링 조사—REA"
#: website/public/first-investigation/index.html:7
msgctxt "page:first-investigation/index.html"
msgid ""
"Try REA on a small Notes app. Set up your agent, ask where exported notes "
"go, and check the CSV formatter with a sample title."
msgstr "시도해봐 REA 작은 메모 앱에. 당신의 에이전트를 설정,내 보낸 노트가 어디로 물어,그리고 확인 CSV 샘플 제목 포맷터."
#: website/public/first-investigation/index.html:208
msgctxt "page:first-investigation/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/first-investigation/index.html:218
msgctxt "page:first-investigation/index.html"
msgid "Your first REA investigation"
msgstr "귀하의 첫 번째REA조사"
#: website/public/first-investigation/index.html:234
msgctxt "page:first-investigation/index.html"
msgid "Copy REA installation prompt"
msgstr "복사REA설치 프롬프트"
#: website/public/first-investigation/index.html:256
msgctxt "page:first-investigation/index.html"
msgid "Copy setup command"
msgstr "설치 명령 복사"
#: website/public/first-investigation/index.html:284
msgctxt "page:first-investigation/index.html"
msgid "Copy Notes investigation prompt"
msgstr "복사 노트 조사 프롬프트"
#: website/public/first-investigation/index.html:406
msgctxt "page:first-investigation/index.html"
msgid "Copy CSV check prompt"
msgstr "복사 CSV 확인 프롬프트"
#: website/public/first-investigation/index.html:448
msgctxt "page:first-investigation/index.html"
msgid "Copy formatter check command"
msgstr "복사 포맷터 검사 명령"
#: website/public/first-investigation/index.html:523
msgctxt "page:first-investigation/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/get-started/index.html:103
msgctxt "page:get-started/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../">
#. {ph1}: </a>
#: website/public/get-started/index.html:194
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Home{ph1} / Get started"
msgstr "{ph0}홈{ph1} /시작"
#: website/public/get-started/index.html:195
msgctxt "page:get-started/index.html"
msgid "Set up REA."
msgstr "설정REA."
#: website/public/get-started/index.html:196
msgctxt "page:get-started/index.html"
msgid ""
"Connect REA to your coding agent, or inspect a local app from your terminal."
msgstr "연결 REA 코딩 에이전트에,또는 터미널에서 로컬 응용 프로그램을 검사합니다."
#: website/public/get-started/index.html:208
msgctxt "page:get-started/index.html"
msgid "Open a terminal and check:"
msgstr "터미널을 열고 확인:"
#: website/public/get-started/index.html:211
#: website/public/get-started/index.html:468
msgctxt "page:get-started/index.html"
msgid "Terminal"
msgstr "터미널"
#: website/public/get-started/index.html:212
#: website/public/get-started/index.html:233
#: website/public/get-started/index.html:256
#: website/public/get-started/index.html:272
#: website/public/get-started/index.html:287
#: website/public/get-started/index.html:302
#: website/public/get-started/index.html:318
#: website/public/get-started/index.html:337
#: website/public/get-started/index.html:423
#: website/public/get-started/index.html:469
#: website/public/get-started/index.html:545
#: website/public/get-started/index.html:604
#: website/public/get-started/index.html:645
#: website/public/get-started/index.html:677
#: website/public/get-started/index.html:734
#: website/public/get-started/index.html:775
#: website/public/get-started/index.html:815
#: website/public/get-started/index.html:831
msgctxt "page:get-started/index.html"
msgid "Copy"
msgstr "복사"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/get-started/index.html:229
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Windows (PowerShell){ph1}"
msgstr "{ph0}Windows (PowerShell){ph1}"
#. {ph0}: <code>node -v</code>
#: website/public/get-started/index.html:244
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Type Y if asked to accept the terms. Close PowerShell, open it again, then "
"run {ph0}."
msgstr "약관 동의를 요청하면 Y를 입력하세요. PowerShell을 닫았다가 다시 열고 {ph0}을 실행하세요."
#. {ph0}: <em>
#. {ph1}: </em>
#. {ph2}: <code>npx</code>
#: website/public/get-started/index.html:248
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"If PowerShell later says {ph0}\"running scripts is disabled on this "
"system\"{ph1} when you run {ph2}, run this once and try again:"
msgstr ""
"나중에 {ph2}을 실행할 때 PowerShell에 {ph0}\"running scripts is disabled on this "
"system\"{ph1}(스크립트 실행이 비활성화됨) 메시지가 나오면, 다음 명령을 한 번 실행하고 다시 시도하세요."
#: website/public/get-started/index.html:268
msgctxt "page:get-started/index.html"
msgid "If you use Homebrew:"
msgstr "당신이 사용하는 경우 Homebrew:"
#: website/public/get-started/index.html:283
msgctxt "page:get-started/index.html"
msgid "Otherwise:"
msgstr "그렇지 않으면:"
#: website/public/get-started/index.html:298
msgctxt "page:get-started/index.html"
msgid "Close Terminal, open it again, then:"
msgstr "터미널을 닫고 다시 연 다음:"
#. {ph0}: <code>curl</code>
#. {ph1}: <code>unzip</code>
#. {ph2}: <code>sudo apt install curl unzip</code>
#: website/public/get-started/index.html:329
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"The installer needs {ph0} and {ph1} (on Debian/Ubuntu: {ph2}). Close the "
"terminal, open it again, then:"
msgstr "설치 프로그램 요구 사항 {ph0} 그리고 {ph1} (데비안/우분투에서: {ph2}). 터미널을 닫고 다시 연 다음:"
#. {ph0}: <code>nodejs</code>
#. {ph1}: <code>node -v</code>
#: website/public/get-started/index.html:349
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Your distribution's own {ph0} package is often older than 22.19, so check "
"{ph1} if you use it instead."
msgstr "배포판 자체 {ph0} 패키지는 종종 22.19 보다 오래된,그래서 확인 {ph1} 당신은 대신 그것을 사용하는 경우."
#. {ph0}: <a href="https://nodejs.org/en/download">
#. {ph1}: </a>
#: website/public/get-started/index.html:353
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Prefer a regular installer? Download the LTS version from "
"{ph0}nodejs.org{ph1}."
msgstr "일반 설치 프로그램을 선호? 다운로드 {ph0}nodejs.org{ph1}."
#: website/public/get-started/index.html:361
msgctxt "page:get-started/index.html"
msgid "Setup options"
msgstr "설정 옵션"
#. {ph0}: <a href="#agent">
#. {ph1}: </a>
#: website/public/get-started/index.html:363
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Connect your coding agent{ph1}"
msgstr "{ph0}코딩 에이전트 연결{ph1}"
#. {ph0}: <a href="#terminal">
#. {ph1}: </a>
#: website/public/get-started/index.html:364
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Use the CLI{ph1}"
msgstr "{ph0}사용 CLI{ph1}"
#. {ph0}: <a href="#native">
#. {ph1}: </a>
#: website/public/get-started/index.html:365
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Set up native analysis{ph1}"
msgstr "{ph0}기계 코드 프로그램 분석 설정{ph1}"
#. {ph0}: <a href="#help">
#. {ph1}: </a>
#: website/public/get-started/index.html:366
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Getting help{ph1}"
msgstr "{ph0}도움 받기{ph1}"
#: website/public/get-started/index.html:371
msgctxt "page:get-started/index.html"
msgid "Connect your coding agent"
msgstr "코딩 에이전트 연결"
#: website/public/get-started/index.html:372
msgctxt "page:get-started/index.html"
msgid ""
"Run setup to connect REA to your coding agent. Client choices include Claude"
" Code, Codex, Cursor, Gemini CLI, Windsurf, Grok Build, and other supported "
"MCP clients. Grok Bot's connector is added from its chat."
msgstr ""
"설치 프로그램을 실행하여 연결 REA 코딩 에이전트에. 고객 선택은 Claude Code, Codex, Cursor, Gemini "
"CLI, Windsurf, Grok Build,및 기타 지원 MCP 고객. Grok Bot의 커넥터는 채팅에서 추가됩니다."
#: website/public/get-started/index.html:379
msgctxt "page:get-started/index.html"
msgid "New to coding agents?"
msgstr "코딩 에이전트에 새로운?"
#: website/public/get-started/index.html:380
msgctxt "page:get-started/index.html"
msgid ""
"A coding agent is an AI assistant that works on your computer instead of in "
"a browser tab. It can read files and run commands, and it asks before making"
" changes. REA gives it reverse-engineering tools."
msgstr ""
"코딩 에이전트는 브라우저 탭이 아닌 컴퓨터에서 작동하는 인공지능 보조자입니다. 파일을 읽고 명령을 실행할 수 있으며 변경하기 전에 "
"묻습니다. REA그것을 리버스 엔지니어링 도구입니다."
#: website/public/get-started/index.html:386
msgctxt "page:get-started/index.html"
msgid ""
"If you don't have one yet, pick one, follow its install page and sign in:"
msgstr "당신은 아직 하나가없는 경우,하나를 선택,그 설치 페이지를 따라 로그인:"
#. {ph0}: <strong >
#. {ph1}: <a href="https://code.claude.com/docs/en/setup" >
#. {ph2}: </a >
#. {ph3}: </strong >
#: website/public/get-started/index.html:391
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}{ph1}Claude Code{ph2}{ph3} by Anthropic. Needs a paid Claude plan."
msgstr "{ph0}{ph1}Claude Code{ph2}{ph3} 에 의해 Anthropic. 유료 필요 Claude 계획."
#. {ph0}: <strong >
#. {ph1}: <a href="https://github.com/openai/codex">
#. {ph2}: </a>
#. {ph3}: </strong >
#: website/public/get-started/index.html:399
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}{ph1}Codex{ph2}{ph3} by OpenAI. Sign in with your ChatGPT account."
msgstr "{ph0}{ph1}Codex{ph2}{ph3} 에 의해 OpenAI. 귀하의 계정으로 로그인하십시오."
#. {ph0}: <strong >
#. {ph1}: <a href="https://opencode.ai/docs">
#. {ph2}: </a>
#. {ph3}: </strong >
#: website/public/get-started/index.html:405
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}{ph1}OpenCode{ph2}{ph3}, open source. Connect the model provider of "
"your choice."
msgstr "{ph0}{ph1}OpenCode{ph2}{ph3},오픈 소스. 원하는 모델 공급자를 연결합니다."
#: website/public/get-started/index.html:411
msgctxt "page:get-started/index.html"
msgid ""
"Then open it and copy the prompt below into it. The agent runs REA's setup "
"and shows you the plan before changing anything."
msgstr ""
"그런 다음 그것을 열고 아래 프롬프트를 복사하십시오. 에이전트 실행 REA의 설치 및 아무것도 변경하기 전에 당신에게 계획을 보여줍니다."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/get-started/index.html:418
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/get-started/index.html:443
msgctxt "page:get-started/index.html"
msgid "Or run setup yourself"
msgstr "또는 직접 설치 실행"
#: website/public/get-started/index.html:445
msgctxt "page:get-started/index.html"
msgid "How do I open a terminal?"
msgstr "터미널은 어떻게 열 수 있나요?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <em>
#. {ph3}: </em>
#: website/public/get-started/index.html:447
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}Windows:{ph1} open the Start menu, type {ph2}PowerShell{ph3} and press "
"Enter."
msgstr "{ph0}Windows:{ph1} 시작 메뉴를 열고 {ph2}PowerShell{ph3}을 입력한 뒤 Enter를 누르세요."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <kbd>⌘</kbd>
#. {ph3}: <kbd>Space</kbd>
#. {ph4}: <em>
#. {ph5}: </em>
#: website/public/get-started/index.html:451
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}macOS:{ph1} press {ph2} {ph3}, type {ph4}Terminal{ph5} and press Enter."
msgstr "{ph0}macOS:{ph1} 프레스 {ph2} {ph3},유형 {ph4}터미널{ph5} 를 눌러 입력합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <kbd>Ctrl</kbd>
#. {ph3}: <kbd>Alt</kbd>
#. {ph4}: <kbd>T</kbd>
#: website/public/get-started/index.html:455
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Linux:{ph1} press {ph2} {ph3} {ph4} on most desktops."
msgstr "{ph0}Linux:{ph1} 프레스 {ph2} {ph3} {ph4} 대부분의 데스크톱에서."
#. {ph0}: <kbd>Ctrl</kbd>
#. {ph1}: <kbd>V</kbd>
#. {ph2}: <kbd>⌘</kbd>
#. {ph3}: <kbd>V</kbd>
#. {ph4}: <kbd>Ctrl</kbd>
#. {ph5}: <kbd>Shift</kbd>
#. {ph6}: <kbd>V</kbd>
#: website/public/get-started/index.html:460
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Paste a command with {ph0} {ph1} (macOS: {ph2} {ph3}; Linux terminals: {ph4}"
" {ph5} {ph6}), then press Enter."
msgstr ""
"명령 붙여넣기 {ph0} {ph1} (macOS: {ph2} {ph3}; Linux 터미널: {ph4} {ph5} {ph6})를 누른 "
"다음 엔터를 누릅니다."
#: website/public/get-started/index.html:481
msgctxt "page:get-started/index.html"
msgid ""
"Choose your client and review the setup plan. REA adds its MCP connection "
"and the matching investigation skill, keeping a backup of existing "
"configuration. It asks before applying the changes."
msgstr ""
"클라이언트를 선택하고 설치 계획을 검토합니다. REA추가MCP연결와 일치하는 조사 기술,유지 백업 기존의 구성이 있습니다. 변경 사항을 "
"적용하기 전에 묻습니다."
#: website/public/get-started/index.html:486
msgctxt "page:get-started/index.html"
msgid "Restart your client when setup finishes."
msgstr "설치가 완료되면 클라이언트를 다시 시작합니다."
#: website/public/get-started/index.html:488
msgctxt "page:get-started/index.html"
msgid "How do I restart my client?"
msgstr "내 클라이언트를 다시 시작하려면 어떻게 합니까?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <kbd>⌘</kbd>
#. {ph3}: <kbd>Q</kbd>
#: website/public/get-started/index.html:489
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}Desktop apps{ph1} (Claude Desktop, Cursor, Windsurf, VS Code): quit the"
" app completely, then open it again. Closing the window isn't enough. On "
"macOS press {ph2} {ph3}; on Windows, also quit from the tray icon if there "
"is one."
msgstr ""
"{ph0}데스크톱 앱{ph1} (Claude 데스크톱, Cursor, Windsurf, VS Code):앱을 완전히 종료 한 다음 다시 "
"엽니 다. 창문을 닫는 것만으로는 충분하지 않습니다. 시작 macOS 프레스 {ph2} {ph3};에 Windows,또한 트레이 아이콘이"
" 있는 경우 트레이 아이콘을 종료합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/get-started/index.html:496
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}Terminal agents{ph1} (Claude Code, Codex, Gemini CLI): exit the session"
" and start it again."
msgstr ""
"{ph0}터미널 에이전트{ph1} (Claude Code, Codex, Gemini CLI):세션을 종료하고 다시 시작합니다."
#: website/public/get-started/index.html:501
msgctxt "page:get-started/index.html"
msgid ""
"Give your agent a target path and a specific question. For a JavaScript or "
"Electron app, you might start with:"
msgstr ""
"에이전트에 대상 경로 및 특정 질문을 제공합니다. 에 대한 JavaScript 또는 Electron 응용 프로그램,당신은 시작할 수 "
"있습니다:"
#. {ph0}: <code>/absolute/path/to/app</code>
#: website/public/get-started/index.html:506
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Look at {ph0} and find how it exports data. Show the entry points, calls and"
" dependencies involved, with the source locations for your findings."
msgstr ""
"봐 {ph0} 그리고 데이터를 내보내는 방법을 찾으십시오. 검색 결과에 대한 소스 위치와 관련된 진입 점,통화 및 종속성을 표시합니다."
#: website/public/get-started/index.html:512
msgctxt "page:get-started/index.html"
msgid "Replace the path with your local target."
msgstr "경로를 로컬 대상으로 바꿉니다."
#: website/public/get-started/index.html:514
msgctxt "page:get-started/index.html"
msgid "How do I get a folder's full path?"
msgstr "폴더의 전체 경로를 어떻게 얻을 수 있습니까?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <em>
#. {ph3}: </em>
#: website/public/get-started/index.html:516
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}Windows:{ph1} in File Explorer, right-click the folder and choose "
"{ph2}Copy as path{ph3}. On Windows 10, hold Shift while right-clicking."
msgstr ""
"{ph0}Windows:{ph1} 파일 탐색기에서 폴더를 마우스 오른쪽 단추로 클릭하고 다음을 선택합니다 {ph2}경로로 복사{ph3}."
" 시작 Windows 10,마우스 오른쪽 버튼을 클릭하는 동안 이동을 누르고 있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <em>
#. {ph3}: </em>
#: website/public/get-started/index.html:521
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}macOS:{ph1} in Finder, right-click the folder, hold Option and choose "
"{ph2}Copy \"…\" as Pathname{ph3}."
msgstr ""
"{ph0}macOS:{ph1} 파인더에서 폴더를 마우스 오른쪽 버튼으로 클릭하고 옵션을 누르고 다음을 선택합니다 {ph2}경로 "
"이름으로\"...\"복사{ph3}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/get-started/index.html:525
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}Any system:{ph1} drag the folder into a terminal window and its path "
"appears."
msgstr "{ph0}모든 시스템:{ph1} 폴더를 터미널 창으로 드래그하면 해당 경로가 나타납니다."
#: website/public/get-started/index.html:530
msgctxt "page:get-started/index.html"
msgid "In a terminal, put quotes around a path that contains spaces."
msgstr "터미널에서 공백이 포함된 경로 주위에 따옴표를 넣습니다."
#: website/public/get-started/index.html:537
msgctxt "page:get-started/index.html"
msgid "Use the CLI"
msgstr "사용CLI"
#: website/public/get-started/index.html:538
msgctxt "page:get-started/index.html"
msgid ""
"Analyze a JavaScript or Electron application folder or ASAR archive without "
"running the app:"
msgstr "분석JavaScript또는Electron응용 프로그램 폴더 또는ASAR보관없이 응용 프로그램을 실행:"
#: website/public/get-started/index.html:544
msgctxt "page:get-started/index.html"
msgid "Static application analysis"
msgstr "정적 애플리케이션 분석"
#. {ph0}: <code>.asar</code>
#. {ph1}: <code>"D:/apps/example"</code>
#: website/public/get-started/index.html:557
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Replace the path with your extracted app directory or {ph0} file. On "
"Windows, a path such as {ph1} works here."
msgstr "경로를 추출된 앱 디렉터리로 바꾸거나 {ph0} 파일 시작 Windows,같은 경로 {ph1} 여기서 작동합니다."
#: website/public/get-started/index.html:563
msgctxt "page:get-started/index.html"
msgid "Where do I find an app's .asar file?"
msgstr "어디 응용 프로그램의 찾을 수 있습니까.아사르 파일?"
#. {ph0}: <code>resources</code>
#: website/public/get-started/index.html:564
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "Electron apps usually keep it in a {ph0} folder:"
msgstr "Electron 응용 프로그램은 일반적으로 그것을 유지 {ph0} 폴더:"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code
#. >C:\Users\&lt;you&gt;\AppData\Local\Programs\&lt;App&gt;\resources\app.asar</code
#. >
#: website/public/get-started/index.html:569
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Windows:{ph1} {ph2}"
msgstr "{ph0}Windows:{ph1} {ph2}"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code
#. >/Applications/&lt;App&gt;.app/Contents/Resources/app.asar</code >
#. {ph3}: <em>
#. {ph4}: </em>
#: website/public/get-started/index.html:575
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}macOS:{ph1} {ph2} (right-click the app and choose {ph3}Show Package "
"Contents{ph4})"
msgstr "{ph0}macOS:{ph1} {ph2} (앱을 마우스 오른쪽 버튼으로 클릭하고 선택 {ph3}패키지 내용 표시{ph4})"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>/opt/&lt;App&gt;/resources/app.asar</code>
#: website/public/get-started/index.html:583
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Linux:{ph1} often {ph2}"
msgstr "{ph0}Linux:{ph1} 종종 {ph2}"
#. {ph0}: <code>app.asar</code>
#: website/public/get-started/index.html:588
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "Some apps install elsewhere. Search the app's folder for {ph0}."
msgstr "일부 앱은 다른 곳에 설치됩니다. 에 대한 응용 프로그램의 폴더를 검색 {ph0}."
#: website/public/get-started/index.html:593
msgctxt "page:get-started/index.html"
msgid ""
"The result identifies the app, shows connections between modules and gives "
"their source locations. Connections REA cannot resolve are marked in the "
"result."
msgstr "결과는 앱을 식별하고 모듈 간의 연결을 표시하며 소스 위치를 제공합니다. 연결 REA 확인할 수 없습니다 결과에 표시됩니다."
#. {ph0}: <code>rea</code>
#: website/public/get-started/index.html:598
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "If you'd like a permanent {ph0} command in your shell:"
msgstr "만약 당신이 영구 {ph0} 쉘의 명령:"
#: website/public/get-started/index.html:603
msgctxt "page:get-started/index.html"
msgid "Install the CLI"
msgstr "설치CLI"
#. {ph0}: <a href="../guides/javascript/" >
#. {ph1}: </a >
#: website/public/get-started/index.html:615
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "{ph0}Continue with the JavaScript application guide{ph1}"
msgstr "{ph0}계속 JavaScript 신청 가이드{ph1}"
#: website/public/get-started/index.html:623
msgctxt "page:get-started/index.html"
msgid "Set up native analysis"
msgstr "기계 코드 프로그램 분석 설정"
#: website/public/get-started/index.html:624
msgctxt "page:get-started/index.html"
msgid ""
"Native binaries need a local analysis tool. Choose and configure one below, "
"then give REA your executable or library."
msgstr "네이티브 바이너리에는 로컬 분석 도구가 필요합니다. 선택하고 아래 하나를 구성,다음 제공 REA 실행 파일 또는 라이브러리."
#: website/public/get-started/index.html:629
msgctxt "page:get-started/index.html"
msgid "Choose a tool: Ghidra, Hopper or IDA"
msgstr "도구 선택: Ghidra, Hopper 또는 IDA"
#: website/public/get-started/index.html:634
msgctxt "page:get-started/index.html"
msgid ""
"Use an existing Ghidra 12.1.x installation and a 64-bit JDK 21 or newer on "
"Linux or macOS, on x64 or arm64. Your Ghidra installation needs a native "
"decompiler for your host architecture. Set the paths before running setup:"
msgstr ""
"기존 사용 Ghidra 12.1.64 비트 설치 및 64 비트 설치 및 64 비트 설치 및 64 비트 설치 및 64 비트 설치 및 64 "
"비트 설치 및 64 비트 설치 Linux 또는 macOS,64 또는 팔 64 에. 당신의 Ghidra 설치에는 호스트 아키텍처를 위한 "
"기본 디컴파일러가 필요합니다. 설치 프로그램을 실행하기 전에 경로 설정:"
#: website/public/get-started/index.html:641
msgctxt "page:get-started/index.html"
msgid "Connect your Ghidra installation"
msgstr "당신의 연결 Ghidra 설치"
#: website/public/get-started/index.html:644
msgctxt "page:get-started/index.html"
msgid "Ghidra connection · macOS / Linux"
msgstr "Ghidra연결·macOS/Linux"
#: website/public/get-started/index.html:659
msgctxt "page:get-started/index.html"
msgid ""
"Replace both paths with your existing installations. Setup checks them and "
"records valid settings for your selected client. On Linux arm64, you may "
"need to build Ghidra's native decompiler separately."
msgstr ""
"두 경로를 기존 설치로 바꿉니다. 설치 프로그램은 이를 확인하고 선택한 클라이언트에 대한 유효한 설정을 기록합니다. 시작 Linux 팔 "
"64,당신은 구축해야 할 수도 있습니다 Ghidra네이티브 디컴파일러입니다."
#: website/public/get-started/index.html:667
msgctxt "page:get-started/index.html"
msgid "Connect Ghidra on Windows"
msgstr "연결 Ghidra 시작 Windows"
#: website/public/get-started/index.html:668
msgctxt "page:get-started/index.html"
msgid ""
"Windows x64 has experimental, read-only support for native x86 and x64 PE "
"applications and DLLs on fixed local NTFS drives. Use an existing Ghidra "
"12.1.x installation and a 64-bit JDK 21 or newer:"
msgstr ""
"Windows 1000 개 이상의 웹 사이트에서 다운로드 할 수 있습니다. 기존 사용 Ghidra 12.1.64 비트 설치 및 64 비트"
" 설치 및 64 비트 설치 및 64 비트 설치 및 64 비트 설치 및 64 비트 설치:"
#: website/public/get-started/index.html:676
msgctxt "page:get-started/index.html"
msgid "Ghidra connection · Windows PowerShell"
msgstr "Ghidra연결·WindowsPowerShell"
#: website/public/get-started/index.html:691
msgctxt "page:get-started/index.html"
msgid ""
"Replace the two paths with your installations, then review setup's plan."
msgstr "두 경로를 설치로 바꾼 다음 설치 계획을 검토합니다."
#: website/public/get-started/index.html:701
msgctxt "page:get-started/index.html"
msgid ""
"Connect Hopper on macOS or Linux. Run the setup command above; it detects an"
" existing installation or offers an installation plan for your approval."
msgstr ""
"에 연결Hopper에macOS또는Linux. 위의 설치 명령을 실행;그것은 기존의 설치를 감지하거나 승인을 위해 설치 계획을 제공합니다."
#: website/public/get-started/index.html:706
msgctxt "page:get-started/index.html"
msgid ""
"On macOS, complete Hopper's first-run choice of demo mode or license "
"activation before an unattended analysis."
msgstr "에macOS,완전한Hopper's first-실행 선택의 데모 모드 또는 라이센스를 활성화하기 전에 무인 분석이다."
#: website/public/get-started/index.html:715
msgctxt "page:get-started/index.html"
msgid ""
"The verified IDA setups use Windows, with an existing MCP registration for "
"an attached GUI or a headless database. Linux and macOS headless analysis "
"remains unverified."
msgstr ""
"검증된 IDA 설정 사용 Windows,기존의 MCP 첨부 된 데이터베이스 또는 헤드리스 데이터베이스에 대한 등록. Linux 그리고 "
"macOS 헤드리스 분석은 아직 확인되지 않았습니다."
#: website/public/get-started/index.html:721
msgctxt "page:get-started/index.html"
msgid "Connect an existing IDA MCP registration"
msgstr "기존 연결 IDA MCP 등록"
#. {ph0}: <code>command</code>
#. {ph1}: <code>args</code>
#. {ph2}: <code>env</code>
#. {ph3}: <code>mcpServers</code>
#. {ph4}: <code>ida-pro-mcp</code>
#: website/public/get-started/index.html:724
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Keep the upstream server's working {ph0}, {ph1} and optional {ph2} in a JSON"
" file. An existing {ph3} object with an {ph4} entry is also accepted. Point "
"REA at that file before setup:"
msgstr ""
"업스트림 서버의 작동 유지 {ph0}, {ph1} 그리고 선택 {ph2} 제슨 파일에 기존 {ph3} 객체 {ph4} 입장도 허용됩니다."
" 포인트 REA 설정 전에 해당 파일에서:"
#: website/public/get-started/index.html:733
msgctxt "page:get-started/index.html"
msgid "IDA connection · Windows PowerShell"
msgstr "IDA 연결 · Windows PowerShell"
#. {ph0}: <code>"mode": "headless"</code>
#: website/public/get-started/index.html:748
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"The attached profile uses upstream legacy 1.4.0 tools with the original "
"binary already open in IDA. The headless profile uses the upstream database-"
"supervisor API and a registration with {ph0}; real verification covers an "
"IDA 9.3 Windows x64 supervisor. Doctor checks the registration without "
"starting IDA."
msgstr ""
"첨부된 프로필은 원래 바이너리가 이미 열려 있는 업스트림 레거시 1.4.0 도구를 사용합니다 IDA. 헤드리스 프로파일은 업스트림 "
"데이터베이스를 사용합니다. {ph0};실제 검증은 IDA 9.3 Windows 64 감독자. 의사는 시작하지 않고 등록을 확인합니다 "
"IDA."
#. {ph0}: <code>--provider ida</code>
#. {ph1}: <code>REA_IDA_MCP_CONFIG</code>
#: website/public/get-started/index.html:757
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Give REA the original executable path, with {ph0} in a CLI query. For an "
"agent, include {ph1} in the REA registration's environment and select IDA "
"when opening the binary."
msgstr ""
"줘 REA 원래 실행 경로, {ph0} 에 CLI 쿼리 에이전트의 경우 다음을 포함합니다 {ph1} 그 안에 REA 등록 환경 및 선택 "
"IDA 바이너리를 열 때."
#: website/public/get-started/index.html:769
msgctxt "page:get-started/index.html"
msgid "For an existing Ghidra setup, inspect a function with:"
msgstr "기존의 Ghidra 설치,기능 검사:"
#: website/public/get-started/index.html:774
msgctxt "page:get-started/index.html"
msgid "Function analysis"
msgstr "기능 분석"
#. {ph0}: <code>main</code>
#: website/public/get-started/index.html:787
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "Replace {ph0} with the function name or address you want to inspect."
msgstr "교체 {ph0} 검사할 함수 이름 또는 주소를 사용합니다."
#: website/public/get-started/index.html:792
msgctxt "page:get-started/index.html"
msgid "How native analysis sessions work"
msgstr "기계 코드 프로그램 세션의 분석 작동 방식"
#: website/public/get-started/index.html:793
msgctxt "page:get-started/index.html"
msgid ""
"Each CLI command imports and analyzes the binary, then closes its session. "
"Your agent's MCP queries reuse the imported binary while that session is "
"open."
msgstr ""
"각 CLI 명령은 바이너리를 가져오고 분석 한 다음 세션을 닫습니다. 귀하의 에이전트의 MCP 쿼리는 해당 세션이 열려 있는 동안 가져온"
" 바이너리를 다시 사용합니다."
#. {ph0}: <a href="../guides/native/">
#. {ph1}: </a>
#: website/public/get-started/index.html:799
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}Follow a native analysis example{ph1} to see how the function result "
"leads to a recovered calculation."
msgstr "{ph0}기계 코드 프로그램 분석 예제를 따르십시오{ph1} 함수 결과가 어떻게 복구된 계산으로 이어지는지 확인합니다."
#: website/public/get-started/index.html:806
msgctxt "page:get-started/index.html"
msgid "Getting help"
msgstr "도움 받기"
#: website/public/get-started/index.html:807
msgctxt "page:get-started/index.html"
msgid "If your agent doesn't see REA"
msgstr "에이전트가 표시되지 않는 경우 REA"
#. {ph0}: <code>doctor</code>
#: website/public/get-started/index.html:808
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"Restart or reconnect the client after setup. Check its REA connection with "
"{ph0}; for Codex:"
msgstr "설치 후 클라이언트를 다시 시작하거나 다시 연결합니다. 그 확인 REA 연결 {ph0};를 위해 Codex:"
#: website/public/get-started/index.html:814
msgctxt "page:get-started/index.html"
msgid "Check one client"
msgstr "한 클라이언트 확인"
#: website/public/get-started/index.html:826
msgctxt "page:get-started/index.html"
msgid "If a provider needs attention"
msgstr "공급자가 주의를 필요로 하는 경우"
#: website/public/get-started/index.html:827
msgctxt "page:get-started/index.html"
msgid "Check the provider you're using. For Ghidra:"
msgstr "사용 중인 공급자를 확인하십시오. 에 대한Ghidra:"
#: website/public/get-started/index.html:830
msgctxt "page:get-started/index.html"
msgid "Check one provider"
msgstr "하나의 공급자 확인"
#: website/public/get-started/index.html:842
msgctxt "page:get-started/index.html"
msgid "The report gives the failed check and a suggested next step."
msgstr "이 보고서는 실패한 확인 및 제안 된 다음 단계를 제공합니다."
#. {ph0}: <a href="../faq/">
#. {ph1}: </a >
#. {ph2}: <span>
#. {ph3}: </span>
#: website/public/get-started/index.html:844
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}REA FAQ{ph1}{ph2}Quick answers on updates, agents and analysis.{ph3}"
msgstr "{ph0}REA 제품소개{ph1}{ph2}업데이트,에이전트 및 분석에 대한 빠른 답변.{ph3}"
#. {ph0}: <a href="../guides/">
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/get-started/index.html:848
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}Choose an investigation guide{ph1}{ph2}Worked examples for a binary, an"
" Electron app and a browser.{ph3}"
msgstr "{ph0}조사 가이드 선택{ph1}{ph2}바이너리에 대한 작업 예제, Electron 앱 및 브라우저.{ph3}"
#. {ph0}: <a href="https://github.com/morluto/rea/issues">
#. {ph1}: </a >
#. {ph2}: <span>
#. {ph3}: </span>
#: website/public/get-started/index.html:855
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}GitHub issues{ph1}{ph2}Report a problem with the command and "
"diagnostics.{ph3}"
msgstr "{ph0}GitHub 문제{ph1}{ph2}명령 및 진단 문제를 보고합니다.{ph3}"
#. {ph0}: <a href="https://discord.gg/GkcryMnJDM">
#. {ph1}: </a >
#. {ph2}: <span>
#. {ph3}: </span>
#: website/public/get-started/index.html:859
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}REA community{ph1}{ph2}Questions, investigations and work in "
"progress.{ph3}"
msgstr "{ph0}REA 커뮤니티{ph1}{ph2}질문,조사 및 진행중인 작업.{ph3}"
#: website/public/get-started/index.html:6
msgctxt "page:get-started/index.html"
msgid "Install REA and Set Up Your Coding Agent"
msgstr "설치 REA 그리고 코딩 에이전트 설정"
#: website/public/get-started/index.html:7
msgctxt "page:get-started/index.html"
msgid ""
"Connect REA to your coding agent or inspect a local JavaScript or Electron "
"app from the terminal. Setup, first questions and native provider guides."
msgstr ""
"에 연결REA를 코딩의 에이전트 또는 검사 지역JavaScript또는Electron에서 응용 프로그램 터미널도 있습니다. 설정,첫 번째 "
"질문 및 기본 공급자 가이드."
#: website/public/get-started/index.html:212
msgctxt "page:get-started/index.html"
msgid "Copy Node.js version check"
msgstr "복사Node.js버전을 확인"
#: website/public/get-started/index.html:233
msgctxt "page:get-started/index.html"
msgid "Copy Node.js installation command for Windows"
msgstr "복사 Node.js 설치 명령 Windows"
#: website/public/get-started/index.html:256
msgctxt "page:get-started/index.html"
msgid "Copy PowerShell execution policy command"
msgstr "복사 PowerShell 실행 정책 명령"
#: website/public/get-started/index.html:272
msgctxt "page:get-started/index.html"
msgid "Copy Homebrew Node.js installation command"
msgstr "복사 Homebrew Node.js 설치 명령"
#: website/public/get-started/index.html:287
msgctxt "page:get-started/index.html"
msgid "Copy fnm installation command for macOS"
msgstr "설치 명령 복사 macOS"
#: website/public/get-started/index.html:302
msgctxt "page:get-started/index.html"
msgid "Copy Node.js 24 commands for macOS"
msgstr "복사 Node.js 24 에 대한 명령 macOS"
#: website/public/get-started/index.html:318
msgctxt "page:get-started/index.html"
msgid "Copy fnm installation command for Linux"
msgstr "설치 명령 복사 Linux"
#: website/public/get-started/index.html:337
msgctxt "page:get-started/index.html"
msgid "Copy Node.js 24 commands for Linux"
msgstr "복사 Node.js 24 에 대한 명령 Linux"
#: website/public/get-started/index.html:360
msgctxt "page:get-started/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/get-started/index.html:369
msgctxt "page:get-started/index.html"
msgid "REA getting started guide"
msgstr "REA시작 안내"
#: website/public/get-started/index.html:423
msgctxt "page:get-started/index.html"
msgid "Copy REA installation prompt"
msgstr "복사REA설치 프롬프트"
#: website/public/get-started/index.html:469
msgctxt "page:get-started/index.html"
msgid "Copy agent setup command"
msgstr "에이전트 설정 복사 명령"
#: website/public/get-started/index.html:545
msgctxt "page:get-started/index.html"
msgid "Copy JavaScript analysis command"
msgstr "복사JavaScript분석 명령"
#: website/public/get-started/index.html:604
msgctxt "page:get-started/index.html"
msgid "Copy CLI installation command"
msgstr "복사CLI설치 명령"
#: website/public/get-started/index.html:645
msgctxt "page:get-started/index.html"
msgid "Copy Ghidra connection for macOS and Linux"
msgstr "macOS 및 Linux용 Ghidra 연결 명령 복사"
#: website/public/get-started/index.html:677
msgctxt "page:get-started/index.html"
msgid "Copy Ghidra connection for Windows PowerShell"
msgstr "복사Ghidra연결WindowsPowerShell"
#: website/public/get-started/index.html:734
msgctxt "page:get-started/index.html"
msgid "Copy IDA connection for Windows PowerShell"
msgstr "복사 IDA 에 대한 연결 Windows PowerShell"
#: website/public/get-started/index.html:775
msgctxt "page:get-started/index.html"
msgid "Copy native function analysis command"
msgstr "기본 함수 분석 복사 명령"
#: website/public/get-started/index.html:815
msgctxt "page:get-started/index.html"
msgid "Copy client diagnosis command"
msgstr "클라이언트 진단 복사 명령"
#: website/public/get-started/index.html:831
msgctxt "page:get-started/index.html"
msgid "Copy provider diagnosis command"
msgstr "공급자 진단 복사 명령"
#: website/public/get-started/index.html:882
msgctxt "page:get-started/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/guides/browser/index.html:103
msgctxt "page:guides/browser/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/guides/browser/index.html:194
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0}Home{ph1} / {ph2}Guides{ph3} / Browser observation"
msgstr "{ph0}홈{ph1} / {ph2}가이드{ph3} /브라우저 관찰"
#. {ph0}: <br />
#: website/public/guides/browser/index.html:198
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "See what happens{ph0}when you click."
msgstr "무슨 일이 일어나는지 봐{ph0}당신이 클릭 할 때."
#: website/public/guides/browser/index.html:199
msgctxt "page:guides/browser/index.html"
msgid ""
"Use a small browser app to connect an action, its network request and the "
"JavaScript that builds a download."
msgstr "작은 브라우저 앱을 사용하여 작업,네트워크 요청 및 JavaScript 즉,다운로드를 빌드합니다."
#: website/public/guides/browser/index.html:206
msgctxt "page:guides/browser/index.html"
msgid "In this guide"
msgstr "이 가이드에서"
#. {ph0}: <a href="#example">
#. {ph1}: </a>
#: website/public/guides/browser/index.html:208
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0}The example{ph1}"
msgstr "{ph0}예{ph1}"
#. {ph0}: <a href="#prepare">
#. {ph1}: </a>
#: website/public/guides/browser/index.html:209
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0}Open the browser{ph1}"
msgstr "{ph0}브라우저 열기{ph1}"
#. {ph0}: <a href="#ask">
#. {ph1}: </a>
#: website/public/guides/browser/index.html:210
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0}Ask your agent{ph1}"
msgstr "{ph0}당신의 에이전트를 물어{ph1}"
#. {ph0}: <a href="#capture">
#. {ph1}: </a>
#: website/public/guides/browser/index.html:211
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0}Capture from CLI{ph1}"
msgstr "{ph0}에서 캡처 CLI{ph1}"
#. {ph0}: <a href="#result">
#. {ph1}: </a>
#: website/public/guides/browser/index.html:212
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0}Read the request and script{ph1}"
msgstr "{ph0}요청 및 스크립트 읽기{ph1}"
#: website/public/guides/browser/index.html:217
msgctxt "page:guides/browser/index.html"
msgid "What happens when you click Export?"
msgstr "내보내기를 클릭하면 어떻게 되나요?"
#. {ph0}: <a href="../../examples/notes-web/">
#. {ph1}: </a>
#. {ph2}: <strong>
#. {ph3}: </strong>
#. {ph4}: <code>notes.json</code>
#: website/public/guides/browser/index.html:218
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"The {ph0}Notes browser example{ph1} has an {ph2}Export notes{ph3} button. "
"Clicking it loads {ph4}, formats the two notes as CSV, and starts a "
"download."
msgstr ""
"그 {ph0}참고 브라우저 예{ph1} 이 {ph2}노트 내보내기{ph3} 버튼. 그것을 클릭하면 로드 {ph4},두 음을 다음과 같이 "
"포맷합니다. CSV,그리고 다운로드를 시작합니다."
#: website/public/guides/browser/index.html:226
msgctxt "page:guides/browser/index.html"
msgid "From the click to the CSV download"
msgstr "에서 클릭하CSV다운로드"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/guides/browser/index.html:228
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"{ph0}01 · You{ph1}{ph2}Click Export notes{ph3}{ph4}Perform the action in "
"your browser while the capture is running.{ph5}"
msgstr ""
"{ph0}01*당신{ph1}{ph2}메모 내보내기를 클릭합니다{ph3}{ph4}캡처를 실행하는 동안 브라우저에서 작업을 "
"수행합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/guides/browser/index.html:236
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"{ph0}02 · REA{ph1}{ph2}Record the request{ph3}{ph4}Capture the request URL, "
"response status and JSON structure from the selected page.{ph5}"
msgstr ""
"{ph0}02 · REA{ph1}{ph2}요청 기록{ph3}{ph4}선택한 페이지에서 요청 상태 및 응답 상태를 캡처합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: <code>fetch("./notes.json")</code>
#. {ph6}: <code>export.js</code>
#. {ph7}: </span >
#: website/public/guides/browser/index.html:244
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"{ph0}03 · Your agent{ph1}{ph2}Read the export code{ph3}{ph4}Connect the "
"observed request to {ph5} in {ph6}.{ph7}"
msgstr ""
"{ph0}03*귀하의 에이전트{ph1}{ph2}내보내기 코드 읽기{ph3}{ph4}관찰된 요청에 연결 {ph5} 그 안에 "
"{ph6}.{ph7}"
#: website/public/guides/browser/index.html:257
msgctxt "page:guides/browser/index.html"
msgid "Start the capture before clicking Export notes."
msgstr "메모 내보내기를 클릭하기 전에 캡처를 시작합니다."
#: website/public/guides/browser/index.html:263
msgctxt "page:guides/browser/index.html"
msgid "Open Chrome with remote debugging"
msgstr "오픈 Chrome 원격 디버깅"
#: website/public/guides/browser/index.html:264
msgctxt "page:guides/browser/index.html"
msgid ""
"Open the hosted Notes example with a separate browser profile and a local "
"debugging port. On Linux:"
msgstr "별도의 브라우저 프로필과 로컬 디버깅 포트를 사용하여 호스팅 노트 예제를 엽니다. 시작 Linux:"
#: website/public/guides/browser/index.html:270
msgctxt "page:guides/browser/index.html"
msgid "Start the example browser"
msgstr "예제 브라우저 시작"
#: website/public/guides/browser/index.html:271
#: website/public/guides/browser/index.html:303
#: website/public/guides/browser/index.html:337
#: website/public/guides/browser/index.html:356
#: website/public/guides/browser/index.html:421
msgctxt "page:guides/browser/index.html"
msgid "Copy"
msgstr "복사"
#: website/public/guides/browser/index.html:285
msgctxt "page:guides/browser/index.html"
msgid ""
"Use your installed browser's executable path on macOS or Windows. You can "
"replace the page URL with another page you want to inspect."
msgstr "사용된 브라우저의 실행 파일 경로에macOS또는Windows. 페이지를 검사할 다른 페이지로 바꿀 수 있습니다."
#: website/public/guides/browser/index.html:290
msgctxt "page:guides/browser/index.html"
msgid ""
"REA connects to this existing browser. You keep control of the page, perform"
" the action, and close the browser when finished."
msgstr "REA연결하는 이러한 기존 브라우저입니다. 당신은 페이지의 제어를 유지 작업을 수행하고 완료되면 브라우저를 닫습니다."
#: website/public/guides/browser/index.html:296
msgctxt "page:guides/browser/index.html"
msgid "Ask your agent to watch one action"
msgstr "에이전트에게 한 가지 작업을 시청하도록 요청"
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/guides/browser/index.html:299
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="browser-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/guides/browser/index.html:312
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to inspect this page while I click Export notes. "
"What request does it make, and how is the CSV built?{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 내가 수출 노트를 클릭하는 동안이 페이지를 검사합니다. 그것은 어떤 요청을하고,어떻게 CSV "
"내장?{ph3}{ph4}{ph5}"
#. {ph0}: <code>http://127.0.0.1:9222</code>
#: website/public/guides/browser/index.html:320
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"Example prompt. Give your agent the debugging endpoint, {ph0}, and the page "
"URL. Let it start the capture before you click."
msgstr "예 프롬프트. 에이전트에 디버깅 끝점 제공, {ph0} 그리고 페이지 당신이 클릭하기 전에 캡처를 시작하자."
#: website/public/guides/browser/index.html:325
msgctxt "page:guides/browser/index.html"
msgid ""
"Your agent discovers the page target, starts an observation window, and "
"reads the resulting evidence. It can then inspect the script behind the "
"export."
msgstr ""
"에이전트가 페이지 대상을 검색하고 관찰 창을 시작한 다음 결과 증거를 읽습니다. 그런 다음 내보내기 뒤에 스크립트를 검사 할 수 "
"있습니다."
#: website/public/guides/browser/index.html:332
msgctxt "page:guides/browser/index.html"
msgid "Or capture from the terminal"
msgstr "또는 터미널에서 캡처"
#: website/public/guides/browser/index.html:333
msgctxt "page:guides/browser/index.html"
msgid "Find the page's target ID:"
msgstr "페이지의 대상 아이디 찾기:"
#: website/public/guides/browser/index.html:336
msgctxt "page:guides/browser/index.html"
msgid "Find the page"
msgstr "페이지 찾기"
#. {ph0}: <code>TARGET_ID</code>
#: website/public/guides/browser/index.html:349
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"Choose the target with the Notes example URL. Replace {ph0} below with its "
"ID, then run:"
msgstr "참고 예제와 함께 대상을 선택합니다. 교체 {ph0} 그 아이디 아래,다음 실행:"
#: website/public/guides/browser/index.html:355
msgctxt "page:guides/browser/index.html"
msgid "Capture the next ten seconds"
msgstr "다음 10 초 캡처"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/browser/index.html:371
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"Let the command connect for a few seconds, then click {ph0}Export notes{ph1}"
" in that browser. The result arrives after the observation window ends."
msgstr ""
"명령을 몇 초 동안 연결한 다음 을 클릭합니다 {ph0}노트 내보내기{ph1} 그 브라우저에서. 결과는 관찰 창이 끝난 후에 도착합니다."
#: website/public/guides/browser/index.html:376
msgctxt "page:guides/browser/index.html"
msgid ""
"The captured result includes the selected page, network activity during that"
" window, and the shape of the JSON response. Earlier requests are outside "
"this capture."
msgstr "캡처된 결과에는 선택한 페이지,해당 창 중 네트워크 활동 및 응답 모양이 포함됩니다. 이전 요청은 이 캡처 외부에 있습니다."
#: website/public/guides/browser/index.html:383
msgctxt "page:guides/browser/index.html"
msgid "Read the request and export script"
msgstr "요청 및 내보내기 스크립트 읽기"
#: website/public/guides/browser/index.html:386
msgctxt "page:guides/browser/index.html"
msgid "Recorded with REA 4.1.0 on the local Notes example"
msgstr "녹음된 REA 4.1.0 로컬 노트 예제"
#: website/public/guides/browser/index.html:391
msgctxt "page:guides/browser/index.html"
msgid "Captured fact"
msgstr "캡처 된 사실"
#: website/public/guides/browser/index.html:392
msgctxt "page:guides/browser/index.html"
msgid "Value"
msgstr "값"
#: website/public/guides/browser/index.html:397
msgctxt "page:guides/browser/index.html"
msgid "Request"
msgstr "요청"
#: website/public/guides/browser/index.html:401
msgctxt "page:guides/browser/index.html"
msgid "Response"
msgstr "응답"
#: website/public/guides/browser/index.html:405
msgctxt "page:guides/browser/index.html"
msgid "Request initiator"
msgstr "요청 시작자"
#. {ph0}: <code>export.js</code>
#: website/public/guides/browser/index.html:406
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0} · script"
msgstr "{ph0} *스크립트"
#: website/public/guides/browser/index.html:409
msgctxt "page:guides/browser/index.html"
msgid "Response structure"
msgstr "응답 구조"
#. {ph0}: <code>notes[]</code>
#. {ph1}: <code>id</code>
#. {ph2}: <code>title</code>
#: website/public/guides/browser/index.html:410
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0} with {ph1} and {ph2} fields"
msgstr "{ph0} 함께 {ph1} 그리고 {ph2} 필드"
#: website/public/guides/browser/index.html:420
msgctxt "page:guides/browser/index.html"
msgid "Read the loaded scripts"
msgstr "로드된 스크립트 읽기"
#. {ph0}: <code>export.js</code>
#: website/public/guides/browser/index.html:434
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"The request identifies the data source, and REA records {ph0} as its "
"initiator. Read the captured script source to see how the data is used:"
msgstr ""
"요청은 데이터 원본을 식별하고 REA 기록 {ph0} 그 시작자로서 캡처된 스크립트 원본을 읽고 데이터 사용 방법을 확인합니다:"
#. {ph0}: <code>notes.json</code>
#: website/public/guides/browser/index.html:454
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"The download is constructed in the page using the JSON response. The CSV "
"formatting step comes from the script; the network capture establishes that "
"this click requested {ph0}."
msgstr ""
"다운로드는 <URL> 응답을 사용하여 페이지에 구성됩니다. 그 CSV 포맷 단계는 스크립트에서 온다;네트워크 캡처는이 클릭이 요청 된 "
"것을 설정합니다 {ph0}."
#. {ph0}: <code>notes.json</code>
#: website/public/guides/browser/index.html:470
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"Find the script that requests {ph0}. How does it escape titles containing "
"commas or quotation marks?"
msgstr "요청하는 스크립트 찾기 {ph0}. 쉼표 또는 따옴표가 포함 된 제목은 어떻게 이스케이프합니까?"
#. {ph0}: <a href="../javascript/">
#. {ph1}: </a>
#: website/public/guides/browser/index.html:475
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"For an installed JavaScript or Electron app, continue with the "
"{ph0}application workflow{ph1} to follow files and process boundaries."
msgstr ""
"설치된 JavaScript 또는 Electron 앱,계속 {ph0}응용 프로그램 워크플로{ph1} 파일 및 프로세스 경계를 따르십시오."
#: website/public/guides/browser/index.html:6
msgctxt "page:guides/browser/index.html"
msgid "Browser and Network Analysis — REA"
msgstr "브라우저와 네트워크 분석—REA"
#: website/public/guides/browser/index.html:7
msgctxt "page:guides/browser/index.html"
msgid ""
"Observe a Notes export with REA: select a browser page, capture a click, "
"inspect the request and follow the export script."
msgstr "함께 노트 내보내기 관찰 REA:브라우저 페이지를 선택,클릭을 캡처,요청을 검사하고 내보내기 스크립트를 따르십시오."
#: website/public/guides/browser/index.html:205
msgctxt "page:guides/browser/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/guides/browser/index.html:215
msgctxt "page:guides/browser/index.html"
msgid "Browser observation"
msgstr "브라우저 관찰"
#: website/public/guides/browser/index.html:271
msgctxt "page:guides/browser/index.html"
msgid "Copy start the example browser"
msgstr "복사 예제 브라우저 시작"
#: website/public/guides/browser/index.html:303
msgctxt "page:guides/browser/index.html"
msgid "Copy example prompt"
msgstr "예제 프롬프트 복사"
#: website/public/guides/browser/index.html:337
msgctxt "page:guides/browser/index.html"
msgid "Copy find the page"
msgstr "복사 페이지 찾기"
#: website/public/guides/browser/index.html:356
msgctxt "page:guides/browser/index.html"
msgid "Copy capture the next ten seconds"
msgstr "다음 10 초 캡처 복사"
#: website/public/guides/browser/index.html:421
msgctxt "page:guides/browser/index.html"
msgid "Copy read the loaded scripts"
msgstr "로드 된 스크립트 읽기 복사"
#: website/public/guides/browser/index.html:507
msgctxt "page:guides/browser/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/guides/index.html:103
msgctxt "page:guides/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../">
#. {ph1}: </a>
#: website/public/guides/index.html:194
#, python-brace-format
msgctxt "page:guides/index.html"
msgid "{ph0}Home{ph1} / Guides"
msgstr "{ph0}홈{ph1} /가이드"
#: website/public/guides/index.html:195
msgctxt "page:guides/index.html"
msgid "REA guides."
msgstr "REA가이드에 있습니다."
#: website/public/guides/index.html:196
msgctxt "page:guides/index.html"
msgid ""
"Analyze a native function, an Electron export or a browser request. Each "
"guide includes a prompt, code and results."
msgstr "네이티브 함수를 분석하면 Electron 내보내기 또는 브라우저 요청. 각 가이드에는 프롬프트,코드 및 결과가 포함됩니다."
#: website/public/guides/index.html:203
msgctxt "page:guides/index.html"
msgid "First investigation"
msgstr "첫 번째 조사"
#: website/public/guides/index.html:205
msgctxt "page:guides/index.html"
msgid "Set up REA"
msgstr "설정REA"
#: website/public/guides/index.html:206
msgctxt "page:guides/index.html"
msgid "Connect your coding agent or use REA from the terminal."
msgstr "코딩 에이전트 연결 또는 사용 REA 터미널에서"
#: website/public/guides/index.html:207
msgctxt "page:guides/index.html"
msgid "Get started with REA"
msgstr "시작 REA"
#: website/public/guides/index.html:211
msgctxt "page:guides/index.html"
msgid "Native binaries"
msgstr "기계 코드 프로그램"
#: website/public/guides/index.html:213
msgctxt "page:guides/index.html"
msgid "Recover a sound-pan calculation"
msgstr "왼쪽/오른쪽 사운드 위치 계산 복구"
#: website/public/guides/index.html:214
msgctxt "page:guides/index.html"
msgid ""
"Start with a Windows game executable. Inspect instructions, follow a caller,"
" read numeric constants and check the recovered C."
msgstr ""
"로 시작 Windows 게임 실행 파일. 지시 사항을 검사하고,호출하는 함수를 따르고,숫자 상수를 읽고 복구 된 것을 확인하십시오."
#: website/public/guides/index.html:224
msgctxt "page:guides/index.html"
msgid "Native analysis guide"
msgstr "기계 코드 프로그램 분석 가이드"
#: website/public/guides/index.html:228
msgctxt "page:guides/index.html"
msgid "JavaScript & Electron"
msgstr "JavaScript & Electron"
#: website/public/guides/index.html:230
msgctxt "page:guides/index.html"
msgid "Follow a CSV export"
msgstr "따라CSV내보내기"
#: website/public/guides/index.html:231
msgctxt "page:guides/index.html"
msgid ""
"A small Notes app spreads one feature across the renderer, preload and main "
"process. Use REA to connect the API, IPC channel and file writer."
msgstr ""
"작은 노트 앱은 렌더러,프리로드 및 메인 프로세스에 하나의 기능을 분산시킵니다. 사용REA연결하 API,IPC 채널 파일 작가입니다."
#: website/public/guides/index.html:241
msgctxt "page:guides/index.html"
msgid "JavaScript & Electron guide"
msgstr "JavaScript&Electron가이드"
#. {ph0}: <a href="../showcase/notion/">
#. {ph1}: </a>
#: website/public/guides/index.html:244
#, python-brace-format
msgctxt "page:guides/index.html"
msgid "For a larger packaged app, follow {ph0}Notion's clipboard bridge{ph1}."
msgstr "더 큰 패키지 앱의 경우 다음을 수행합니다 {ph0}Notion클립보드 브리지의{ph1}."
#: website/public/guides/index.html:251
msgctxt "page:guides/index.html"
msgid "Browser behavior"
msgstr "브라우저 동작"
#: website/public/guides/index.html:253
msgctxt "page:guides/index.html"
msgid "Observe a click"
msgstr "클릭 관찰"
#: website/public/guides/index.html:254
msgctxt "page:guides/index.html"
msgid ""
"Open a working Notes example, capture an export request and find the code "
"that turns its response into a download."
msgstr "작업 노트 예제를 열고 내보내기 요청을 캡처한 다음 응답을 다운로드로 전환하는 코드를 찾습니다."
#: website/public/guides/index.html:263
msgctxt "page:guides/index.html"
msgid "Browser observation guide"
msgstr "브라우저 관찰 가이드"
#: website/public/guides/index.html:6
msgctxt "page:guides/index.html"
msgid "Reverse Engineering Guides — REA"
msgstr "리버스 엔지니어링 가이드 — REA"
#: website/public/guides/index.html:7
msgctxt "page:guides/index.html"
msgid ""
"Learn REA through short worked examples: a native calculation, an Electron "
"CSV export and a browser request."
msgstr "학습 REA 짧은 작업 예제를 통해:네이티브 계산, Electron CSV 내보내기 및 브라우저 요청."
#: website/public/guides/index.html:282
msgctxt "page:guides/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/guides/javascript/index.html:103
msgctxt "page:guides/javascript/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/guides/javascript/index.html:194
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}Home{ph1} / {ph2}Guides{ph3} / JavaScript & Electron"
msgstr "{ph0}홈{ph1} / {ph2}가이드{ph3} / JavaScript & Electron"
#. {ph0}: <br />
#: website/public/guides/javascript/index.html:198
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "Trace an Electron{ph0}CSV export."
msgstr "추적 Electron{ph0}CSV 수출."
#: website/public/guides/javascript/index.html:199
msgctxt "page:guides/javascript/index.html"
msgid ""
"Follow a button click from the page API, through Electron IPC, to the CSV "
"file writer."
msgstr "따라 버튼을 클릭에서 페이지의 API 를 통해ElectronIPC 을CSV파일 작가입니다."
#: website/public/guides/javascript/index.html:206
msgctxt "page:guides/javascript/index.html"
msgid "In this guide"
msgstr "이 가이드에서"
#. {ph0}: <a href="#example">
#. {ph1}: </a>
#: website/public/guides/javascript/index.html:208
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}The example{ph1}"
msgstr "{ph0}예{ph1}"
#. {ph0}: <a href="#ask">
#. {ph1}: </a>
#: website/public/guides/javascript/index.html:209
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}Ask your agent{ph1}"
msgstr "{ph0}당신의 에이전트를 물어{ph1}"
#. {ph0}: <a href="#follow">
#. {ph1}: </a>
#: website/public/guides/javascript/index.html:210
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}Trace the export code{ph1}"
msgstr "{ph0}내보내기 코드 추적{ph1}"
#. {ph0}: <a href="#try">
#. {ph1}: </a>
#: website/public/guides/javascript/index.html:211
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}Try the example{ph1}"
msgstr "{ph0}예제 시도{ph1}"
#. {ph0}: <a href="#next">
#. {ph1}: </a>
#: website/public/guides/javascript/index.html:212
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}Inspect the CSV writer{ph1}"
msgstr "{ph0}검사 CSV 작가{ph1}"
#: website/public/guides/javascript/index.html:217
msgctxt "page:guides/javascript/index.html"
msgid "Where does “Export notes” go?"
msgstr "\"노트 내보내기\"는 어디로 갑니까?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/javascript/index.html:218
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"This guide uses a small Electron app. Clicking {ph0}Export notes{ph1} calls "
"an API in the page, crosses into the main process, and writes a CSV. The "
"behavior is spread across several files."
msgstr ""
"이 가이드는 작은 Electron 앱 클릭 {ph0}노트 내보내기{ph1} 이 페이지에서는 기본 프로세스로 넘어가면서 이 페이지에서는 "
"기본 프로세스로 넘어가면서 이 페이지에서는 기본 프로세스로 넘어가면서 이 페이지에서는 기본 프로세스로 넘어가면서 CSV. 이 동작은 여러"
" 파일에 분산되어 있습니다."
#: website/public/guides/javascript/index.html:225
msgctxt "page:guides/javascript/index.html"
msgid "The CSV export across Electron processes"
msgstr "이CSV내보내기 전Electron프로세스"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: <code>notes.exportCsv()</code>
#. {ph4}: </span >
#. {ph5}: <span class="flow-note" >
#. {ph6}: <code>renderer.js</code>
#. {ph7}: <code>preload.js</code>
#. {ph8}: </span >
#: website/public/guides/javascript/index.html:229
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}Renderer → preload{ph1}{ph2}{ph3}{ph4}{ph5}{ph6} calls the API exposed "
"by {ph7}.{ph8}"
msgstr "{ph0}렌더러→프리로드{ph1}{ph2}{ph3}{ph4}{ph5}{ph6} 에 의해 노출 된 호출 {ph7}.{ph8}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: <code>notes:export</code>
#. {ph4}: </span >
#. {ph5}: <span class="flow-note" >
#. {ph6}: </span >
#: website/public/guides/javascript/index.html:237
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}Between processes{ph1}{ph2}{ph3}{ph4}{ph5}The preload invokes an IPC "
"channel: a named message to the main process.{ph6}"
msgstr "{ph0}프로세스 간{ph1}{ph2}{ph3}{ph4}{ph5}기본 프로세스에 대한 명명된 메시지입니다.{ph6}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: <code>main.js</code>
#. {ph6}: </span >
#: website/public/guides/javascript/index.html:245
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}Main process{ph1}{ph2}An export handler{ph3}{ph4}{ph5} handles that "
"channel and calls the CSV writer.{ph6}"
msgstr "{ph0}주요 과정{ph1}{ph2}내보내기 처리기{ph3}{ph4}{ph5} 그 채널을 처리하고 CSV 작가{ph6}"
#. {ph0}: <code>csv.js</code>
#. {ph1}: <code>main.js</code>
#. {ph2}: <code>downloads/notes.csv</code>
#: website/public/guides/javascript/index.html:254
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0} formats the notes → {ph1} writes {ph2}."
msgstr "{ph0} 메모의 형식을 지정합니다. {ph1} 글쓰기 {ph2}."
#: website/public/guides/javascript/index.html:258
msgctxt "page:guides/javascript/index.html"
msgid ""
"REA matches the literal IPC call to its handler and identifies the exposed "
"API. The path is inferred from code; a runtime capture can check what "
"executes."
msgstr ""
"REA치 리터럴 IPC 함수 호출 핸들러를 식별하고 노출된 API 를 사용합니다. 경로는 코드에서 추론됩니다.런타임 캡처는 실행되는 것을"
" 확인할 수 있습니다."
#: website/public/guides/javascript/index.html:266
msgctxt "page:guides/javascript/index.html"
msgid "Ask about the CSV export"
msgstr "에 대해 물어 CSV 수출"
#. {ph0}: <a href="../../get-started/#agent">
#. {ph1}: </a>
#: website/public/guides/javascript/index.html:267
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}Connect your agent to REA{ph1} and give it the app directory or ASAR "
"file:"
msgstr "{ph0}에이전트에 연결 REA{ph1} 그리고 그것을 응용 프로그램 디렉토리 또는 제공 ASAR 파일:"
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/guides/javascript/index.html:273
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/guides/javascript/index.html:277
#: website/public/guides/javascript/index.html:426
msgctxt "page:guides/javascript/index.html"
msgid "Copy"
msgstr "복사"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="javascript-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/guides/javascript/index.html:286
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to find what happens when I export notes in this "
"app. Where is the CSV created?{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 이 응용 프로그램에 메모를 내보낼 때 어떻게되는지 찾을 수 있습니다. 어디 CSV "
"생성?{ph3}{ph4}{ph5}"
#. {ph0}: <code>app.asar</code>
#: website/public/guides/javascript/index.html:294
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"Example prompt. Include the absolute path to the application folder or "
"{ph0}."
msgstr "예 프롬프트. 응용 프로그램 폴더에 대한 절대 경로를 포함하거나 {ph0}."
#: website/public/guides/javascript/index.html:298
msgctxt "page:guides/javascript/index.html"
msgid ""
"REA reads the application files and builds a map of entrypoints, modules and"
" process boundaries. Your agent uses that map to narrow the investigation to"
" the export feature."
msgstr ""
"REA 응용 프로그램 파일을 읽고 엔트리 포인트,모듈 및 프로세스 경계의 맵을 작성합니다. 에이전트가 해당 맵을 사용하여 조사 범위를 "
"내보내기 기능으로 좁힙니다."
#: website/public/guides/javascript/index.html:305
msgctxt "page:guides/javascript/index.html"
msgid "Trace the export code"
msgstr "내보내기 코드 추적"
#: website/public/guides/javascript/index.html:306
msgctxt "page:guides/javascript/index.html"
msgid "The page calls a small API"
msgstr "이 페이지는 작은 파일을 호출합니다."
#: website/public/guides/javascript/index.html:319
msgctxt "page:guides/javascript/index.html"
msgid ""
"The page knows the method name. The implementation lives in the preload, "
"which exposes it to the renderer."
msgstr "페이지는 메소드 이름을 알고 있습니다. 구현은 사전 로드에 존재하며,이는 렌더러에 노출됩니다."
#. {ph0}: <code>notes.exportCsv</code>
#. {ph1}: <code>notes:export</code>
#: website/public/guides/javascript/index.html:333
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"REA records {ph0} and the literal channel {ph1}. It pairs that invocation "
"with the single matching handler in the main process."
msgstr "REA 기록 {ph0} 그리고 문자 그대로의 채널 {ph1}. 이 호출은 주 프로세스의 단일 일치 핸들러와 쌍을 이룹니다."
#. {ph0}: <code>csv.js</code>
#. {ph1}: <code>notes.csv</code>
#: website/public/guides/javascript/index.html:350
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"Reading the handler answers the original question: {ph0} formats the notes, "
"and the main process writes {ph1} into the user's Downloads folder."
msgstr ""
"핸들러를 읽으면 원래 질문에 답합니다: {ph0} 메모의 형식을 지정하고 주요 프로세스는 씁니다 {ph1} 사용자의 다운로드 폴더에 "
"넣습니다."
#: website/public/guides/javascript/index.html:367
msgctxt "page:guides/javascript/index.html"
msgid ""
"Recorded by REA 4.1.0 on the downloadable example below. Source locations "
"accompany the API, channel and handler findings."
msgstr "녹음된 REA 4.1.0 아래 다운로드 가능한 예제에서. 소스 위치는 채널 및 핸들러 검색 결과와 함께 제공됩니다."
#: website/public/guides/javascript/index.html:373
msgctxt "page:guides/javascript/index.html"
msgid "Analyze the example yourself"
msgstr "예제를 직접 분석하십시오"
#. {ph0}: <a class="button" href="../../examples/notes-example.zip"
#. download="notes-example.zip" >
#. {ph1}: </a >
#: website/public/guides/javascript/index.html:380
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0}Download example ZIP{ph1}"
msgstr "{ph0}다운로드 예제 우편 번호{ph1}"
#: website/public/guides/javascript/index.html:389
msgctxt "page:guides/javascript/index.html"
msgid "Browse the six source files"
msgstr "여섯 소스 파일을 찾아"
#: website/public/guides/javascript/index.html:425
msgctxt "page:guides/javascript/index.html"
msgid "Static application analysis"
msgstr "정적 애플리케이션 분석"
#. {ph0}: <code>normalized_result.summary.ipc</code>
#. {ph1}: <code>normalized_result.graph</code>
#: website/public/guides/javascript/index.html:438
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"Replace the path with the folder you unzipped. You should find one IPC "
"channel and one matching handler in {ph0}. Source locations are in {ph1}."
msgstr ""
"경로를 압축을 푼 폴더로 바꿉니다. 하나의 채널 및 하나의 일치하는 핸들러를 찾아야합니다. {ph0}. 소스 위치는 {ph1}."
#: website/public/guides/javascript/index.html:444
msgctxt "page:guides/javascript/index.html"
msgid ""
"For your own app, use the same command with its directory or ASAR path. An "
"agent can follow a literal string, API name or IPC channel with REA's "
"feature tracing tools."
msgstr ""
"자신의 앱의 경우 디렉터리와 동일한 명령을 사용하거나 ASAR 경로. 에이전트는 다음과 같이 리터럴 문자열,이름 또는 채널을 따를 수 "
"있습니다 REA기능 추적 도구입니다."
#: website/public/guides/javascript/index.html:451
msgctxt "page:guides/javascript/index.html"
msgid "Inspect the CSV writer"
msgstr "검사CSVwriter"
#. {ph0}: <code>notes:export</code>
#: website/public/guides/javascript/index.html:453
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"Follow {ph0} to its handler. Which inputs reach the CSV writer, and what "
"happens if writing the file fails?"
msgstr "팔로우 {ph0} 그 담당자에게 어떤 입력들이 CSV 작성자,그리고 파일 작성이 실패하면 어떻게됩니까?"
#: website/public/guides/javascript/index.html:459
msgctxt "page:guides/javascript/index.html"
msgid ""
"Use the source locations to inspect those details. Computed channel names "
"and ambiguous handlers can remain unresolved; runtime observations give you "
"another way to investigate them."
msgstr ""
"원본 위치를 사용하여 해당 세부 정보를 검사합니다. 계산된 채널 이름 및 모호한 처리기는 해결되지 않은 상태로 유지될 수 있으며 런타임 "
"관찰을 통해 이를 조사하는 또 다른 방법을 제공합니다."
#. {ph0}: <a href="../../showcase/notion/" >
#. {ph1}: </a >
#. {ph2}: <span>
#. {ph3}: </span>
#: website/public/guides/javascript/index.html:465
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}Follow Notion's clipboard bridge{ph1} {ph2}Apply the same approach to a"
" packaged Electron app.{ph3}"
msgstr ""
"{ph0}팔로우 Notion클립보드 브리지의{ph1} {ph2}패키지된 제품에 동일한 접근 방식을 적용합니다. Electron "
"앱{ph3}"
#. {ph0}: <a href="../browser/">
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/guides/javascript/index.html:471
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}Observe a browser export{ph1}{ph2}Capture a real click and see which "
"request it makes.{ph3}"
msgstr "{ph0}브라우저 내보내기 관찰{ph1}{ph2}실제 클릭을 캡처하고 만드는 요청을 참조하십시오.{ph3}"
#. {ph0}: <a href="../native/">
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/guides/javascript/index.html:477
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"{ph0}Follow a native function{ph1}{ph2}Continue into a binary when a feature"
" depends on native code.{ph3}"
msgstr "{ph0}기본 함수 따르기{ph1}{ph2}기능이 네이티브 코드에 의존 할 때 바이너리로 계속 진행하십시오.{ph3}"
#: website/public/guides/javascript/index.html:6
msgctxt "page:guides/javascript/index.html"
msgid "JavaScript and Electron Analysis — REA"
msgstr "JavaScript및Electron분석—REA"
#: website/public/guides/javascript/index.html:7
msgctxt "page:guides/javascript/index.html"
msgid ""
"Trace a Notes CSV export through a renderer API, preload and IPC handler "
"with REA. Includes downloadable example files and a verified analysis "
"result."
msgstr ""
"추적 NotesCSV수출을 통해 렌더러 API,미리 로드하고 IPC 처리기REA. 다운로드 가능한 예제 파일과 검증 된 분석 결과를 "
"포함합니다."
#: website/public/guides/javascript/index.html:205
msgctxt "page:guides/javascript/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/guides/javascript/index.html:215
msgctxt "page:guides/javascript/index.html"
msgid "JavaScript & Electron"
msgstr "JavaScript & Electron"
#: website/public/guides/javascript/index.html:277
msgctxt "page:guides/javascript/index.html"
msgid "Copy example prompt"
msgstr "예제 프롬프트 복사"
#: website/public/guides/javascript/index.html:426
msgctxt "page:guides/javascript/index.html"
msgid "Copy static application analysis"
msgstr "정적 애플리케이션 분석 복사"
#: website/public/guides/javascript/index.html:503
msgctxt "page:guides/javascript/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/guides/native/index.html:103
msgctxt "page:guides/native/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/guides/native/index.html:194
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}Home{ph1} / {ph2}Guides{ph3} / Native analysis"
msgstr "{ph0}홈{ph1} / {ph2}가이드{ph3} /기계 코드 프로그램 분석"
#. {ph0}: <br />
#: website/public/guides/native/index.html:197
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "Recover DX-Ball's{ph0}sound-pan calculation."
msgstr "복구 DX-Ball의{ph0}사운드 팬 계산."
#: website/public/guides/native/index.html:198
msgctxt "page:guides/native/index.html"
msgid ""
"Inspect the original instructions, identify the input and constants, then "
"check the recovered C."
msgstr "원래 명령어를 검사하고 입력 및 상수를 식별 한 다음 복구 된 C을 확인하십시오."
#: website/public/guides/native/index.html:205
msgctxt "page:guides/native/index.html"
msgid "In this guide"
msgstr "이 가이드에서"
#. {ph0}: <a href="#example">
#. {ph1}: </a>
#: website/public/guides/native/index.html:207
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}The example{ph1}"
msgstr "{ph0}예{ph1}"
#. {ph0}: <a href="#ask">
#. {ph1}: </a>
#: website/public/guides/native/index.html:208
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}Ask your agent{ph1}"
msgstr "{ph0}당신의 에이전트를 물어{ph1}"
#. {ph0}: <a href="#follow">
#. {ph1}: </a>
#: website/public/guides/native/index.html:209
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}Read the REA results{ph1}"
msgstr "{ph0}읽기 REA 결과{ph1}"
#. {ph0}: <a href="#result">
#. {ph1}: </a>
#: website/public/guides/native/index.html:210
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}Recover and check{ph1}"
msgstr "{ph0}복구 및 확인{ph1}"
#. {ph0}: <a href="#try">
#. {ph1}: </a>
#: website/public/guides/native/index.html:211
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}Use your own binary{ph1}"
msgstr "{ph0}자신의 바이너리 사용{ph1}"
#: website/public/guides/native/index.html:216
msgctxt "page:guides/native/index.html"
msgid "Calculate left/right sound panning"
msgstr "왼쪽/오른쪽 스테레오 사운드 위치 계산"
#: website/public/guides/native/index.html:217
msgctxt "page:guides/native/index.html"
msgid ""
"In DX-Ball, a brick hit supplies a horizontal screen position. The sound "
"code turns it into a left/right panning value."
msgstr "그 안에 DX-Ball,벽돌 타격은 수평 화면 위치를 제공합니다. 사운드 코드는 왼쪽/오른쪽 패닝 값으로 바뀝니다."
#. {ph0}: <code>0x00406400</code>
#. {ph1}: <code>__ftol()</code>
#: website/public/guides/native/index.html:221
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"The starting function, {ph0}, has a short decompiler result: a call to "
"{ph1}. REA also returns its instructions and callers, which give the agent a"
" way to investigate the missing arithmetic."
msgstr ""
"시작 기능, {ph0},짧은 디컴파일러 결과가 있습니다. {ph1}. REA 또한 지시 사항과 호출자를 반환합니다.이는 에이전트에게 "
"누락된 계산을 조사하는 방법을 제공합니다."
#: website/public/guides/native/index.html:228
msgctxt "page:guides/native/index.html"
msgid "New to these terms?"
msgstr "이 약관에 새로운?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>MOV</code>
#. {ph3}: <code>ADD</code>
#: website/public/guides/native/index.html:230
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Instructions:{ph1} the steps the processor runs, shown in readable form"
" such as {ph2} or {ph3}."
msgstr ""
"{ph0}지침:{ph1} 프로세서가 실행하는 단계는 다음과 같이 읽을 수 있는 형태로 표시됩니다. {ph2} 또는 {ph3}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/native/index.html:235
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Decompiler result / pseudocode:{ph1} an analysis tool's attempt to turn"
" instructions back into C-like code. It can miss parts, as in this example."
msgstr ""
"{ph0}디 컴파일러 결과/의사 코드:{ph1} 명령어를 다시 씨와 같은 코드로 바꾸려는 분석 도구의 시도. 이 예제에서와 같이 부품을 "
"놓칠 수 있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/native/index.html:240
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Caller:{ph1} a function that calls this one. It shows which values are "
"passed in."
msgstr "{ph0}호출자:{ph1} 이 함수를 호출하는 함수입니다. 어떤 값이 전달되는지 보여줍니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>0x00406400</code>
#: website/public/guides/native/index.html:244
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Address:{ph1} a location in the program, written in hexadecimal, such "
"as {ph2}."
msgstr "{ph0}주소:{ph1} 프로그램에서 16 진수로 작성된 위치 {ph2}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/native/index.html:248
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Constants:{ph1} fixed numbers stored in the program, read as raw bytes "
"and decoded."
msgstr "{ph0}상수:{ph1} 프로그램에 저장된 고정 번호는 원시 바이트로 읽고 디코딩."
#: website/public/guides/native/index.html:255
msgctxt "page:guides/native/index.html"
msgid "Three pieces of evidence, one calculation"
msgstr "세 가지 증거,하나의 계산"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/guides/native/index.html:259
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}01 · Instructions{ph1}{ph2}An integer input{ph3}{ph4}A stack read "
"supplies the value used by the floating-point instructions.{ph5}"
msgstr ""
"{ph0}01*지침{ph1}{ph2}정수 입력{ph3}{ph4}스택 읽기는 부동 소수점 명령에 사용되는 값을 제공합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: <code>20 + 30 × tile_x</code>
#. {ph6}: </span >
#: website/public/guides/native/index.html:267
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}02 · Caller{ph1}{ph2}A screen coordinate{ph3}{ph4}The brick-hit caller "
"passes {ph5}.{ph6}"
msgstr ""
"{ph0}02*호출하는 함수{ph1}{ph2}스크린 좌표{ph3}{ph4}이 함수를 호출하는 브릭 히트 함수는 {ph5}.{ph6}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: <code>1.5625</code>
#. {ph6}: <code>500.0</code>
#. {ph7}: </span >
#: website/public/guides/native/index.html:275
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}03 · Data bytes{ph1}{ph2}The numeric constants{ph3}{ph4}Referenced "
"bytes decode to {ph5}, {ph6} and a scale value.{ph7}"
msgstr ""
"{ph0}03*데이터 바이트{ph1}{ph2}숫자 상수{ph3}{ph4}참조된 바이트는 {ph5}, {ph6} 그리고 스케일 "
"값.{ph7}"
#: website/public/guides/native/index.html:287
msgctxt "page:guides/native/index.html"
msgid ""
"REA supplies the instructions, call relationship and bytes. The agent "
"interprets them together."
msgstr "REA 명령어,호출 관계 및 바이트를 제공합니다. 에이전트는 그들을 함께 해석합니다."
#: website/public/guides/native/index.html:294
msgctxt "page:guides/native/index.html"
msgid "Ask about the behavior"
msgstr "행동에 대해 물어보십시오"
#. {ph0}: <a href="../../get-started/#agent" >
#. {ph1}: </a >
#. {ph2}: <a href="../../get-started/#native" >
#. {ph3}: </a >
#: website/public/guides/native/index.html:295
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"After {ph0}connecting REA to your agent{ph1} and {ph2}setting up a native "
"analysis tool{ph3}, provide the local executable and a question:"
msgstr ""
"그 후 {ph0}연결 REA 당신의 대리인에게{ph1} 그리고 {ph2}기본 분석 도구 설정{ph3},로컬 실행 파일 및 질문을 "
"제공합니다:"
#: website/public/guides/native/index.html:306
msgctxt "page:guides/native/index.html"
msgid "Which analysis tool should I use?"
msgstr "어떤 분석 도구를 사용해야합니까?"
#: website/public/guides/native/index.html:307
msgctxt "page:guides/native/index.html"
msgid "REA needs one of these to read native programs:"
msgstr "REA 기본 프로그램을 읽기 위해 이들 중 하나가 필요합니다:"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/native/index.html:309
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Hopper{ph1} (macOS or Linux): REA's setup detects it or offers to "
"install it. On macOS, open Hopper once and choose demo mode or activate a "
"license before your first analysis."
msgstr ""
"{ph0}Hopper{ph1} (macOS 또는 Linux): REA설치 프로그램에서 감지하거나 설치하도록 제안합니다. 시작 "
"macOS,오픈 Hopper 한 번 데모 모드를 선택하거나 첫 번째 분석 전에 라이센스를 활성화하십시오."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/native/index.html:315
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Ghidra{ph1} (macOS or Linux; experimental on Windows): free, but needs "
"an existing Ghidra 12.1.x installation and a 64-bit JDK 21 or newer."
msgstr ""
"{ph0}Ghidra{ph1} (macOS 또는 Linux;실험적 Windows):무료,하지만 기존의 필요 Ghidra 12.1.64 "
"비트 또는 그 이상."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/native/index.html:320
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}IDA{ph1} (Windows): for an existing IDA setup with an MCP registration."
msgstr "{ph0}IDA{ph1} (Windows):기존의 IDA 설치 MCP 등록."
#. {ph0}: <a href="../../get-started/#native">
#. {ph1}: </a>
#: website/public/guides/native/index.html:325
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "See {ph0}Set up native analysis{ph1} for the steps."
msgstr "보시다시피 {ph0}기계 코드 프로그램 분석 설정{ph1} 단계를 위해."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/guides/native/index.html:333
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/guides/native/index.html:337
#: website/public/guides/native/index.html:468
msgctxt "page:guides/native/index.html"
msgid "Copy"
msgstr "복사"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="native-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/guides/native/index.html:346
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to find how DX-Ball calculates sound panning. "
"Explain the calculation and show the code.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 방법을 찾으려면 DX-Ball 사운드 패닝을 계산합니다. 계산을 설명하고 코드를 "
"보여줍니다.{ph3}{ph4}{ph5}"
#: website/public/guides/native/index.html:354
msgctxt "page:guides/native/index.html"
msgid ""
"Example prompt. Give your agent the path to your local DX-Ball 1.07 "
"executable. REA doesn't include DX-Ball, so use your own copy, or ask the "
"same kind of question about another small Windows program you have."
msgstr ""
"예 프롬프트. 너의 대리인에게 너의 지방 주민에 경로를 주십시요 DX-Ball 1.07 실행 파일. REA 포함하지 않습니다 DX-"
"Ball,그래서 당신 신 사,또는 다른 대 문 같 류 Windows 당신이 가진 프로그램."
#: website/public/guides/native/index.html:361
msgctxt "page:guides/native/index.html"
msgid "How do I get a file's full path?"
msgstr "파일의 전체 경로를 어떻게 얻을 수 있습니까?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <em>
#. {ph3}: </em>
#: website/public/guides/native/index.html:363
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Windows:{ph1} in File Explorer, right-click the file and choose "
"{ph2}Copy as path{ph3}. On Windows 10, hold Shift while right-clicking."
msgstr ""
"{ph0}Windows:{ph1} 파일 탐색기에서 파일을 마우스 오른쪽 단추로 클릭하고 다음을 선택합니다 {ph2}경로로 복사{ph3}."
" 시작 Windows 10,마우스 오른쪽 버튼을 클릭하는 동안 이동을 누르고 있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <em>
#. {ph3}: </em>
#: website/public/guides/native/index.html:368
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}macOS:{ph1} in Finder, right-click the file, hold Option and choose "
"{ph2}Copy \"…\" as Pathname{ph3}."
msgstr ""
"{ph0}macOS:{ph1} 파인더에서 파일을 마우스 오른쪽 단추로 클릭하고 옵션을 누른 다음 선택합니다 {ph2}경로 "
"이름으로\"...\"복사{ph3}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/guides/native/index.html:372
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Any system:{ph1} drag the file into a terminal window and its path "
"appears."
msgstr "{ph0}모든 시스템:{ph1} 파일을 터미널 창으로 드래그하면 해당 경로가 나타납니다."
#: website/public/guides/native/index.html:380
msgctxt "page:guides/native/index.html"
msgid "Read the REA results"
msgstr "읽REA결과"
#: website/public/guides/native/index.html:381
msgctxt "page:guides/native/index.html"
msgid "Read the input"
msgstr "입력 읽기"
#: website/public/guides/native/index.html:390
msgctxt "page:guides/native/index.html"
msgid ""
"The instructions load an integer argument and convert it for floating-point "
"arithmetic. This is the input absent from the first pseudocode view."
msgstr "명령은 정수 인수를 로드하고 부동 소수점 계산으로 변환합니다. 이것은 첫 번째 유사 코드 뷰에서 없는 입력입니다."
#: website/public/guides/native/index.html:395
msgctxt "page:guides/native/index.html"
msgid "Follow the caller"
msgstr "호출하는 함수 팔로우"
#. {ph0}: <code>0x14</code>
#: website/public/guides/native/index.html:404
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"REA identifies the brick-hit caller. Its earlier instructions multiply the "
"tile coordinate by 30; adding {ph0} (20) gives the brick's screen position."
msgstr ""
"REA 브릭 히트 호출자를 식별합니다. 이전 명령은 타일 좌표에 30 을 곱합니다. {ph0} (20)벽돌의 화면 위치를 제공합니다."
#: website/public/guides/native/index.html:409
msgctxt "page:guides/native/index.html"
msgid "Read the referenced constants"
msgstr "참조된 상수 읽기"
#: website/public/guides/native/index.html:420
msgctxt "page:guides/native/index.html"
msgid ""
"The arithmetic references these addresses. Reading the bytes supplies the "
"actual values; the instruction order tells the agent how they are used."
msgstr "산술은 이러한 주소를 참조합니다. 바이트를 읽으면 실제 값이 제공되며,명령 순서는 에이전트에 어떻게 사용되는지 알려줍니다."
#: website/public/guides/native/index.html:427
msgctxt "page:guides/native/index.html"
msgid "Write and check the recovered function"
msgstr "복구 된 기능 작성 및 확인"
#: website/public/guides/native/index.html:436
msgctxt "page:guides/native/index.html"
msgid ""
"With a scale of 1.0, screen positions 0, 320 and 640 map to −500, 0 and 500 "
"before integer conversion. The calculation puts the center of the screen at "
"the center of the stereo field."
msgstr ""
"눈금이 1.0 인 경우 화면 위치 0,320 및 640 은 정수 변환 전에 -500,0 및 500 으로 매핑됩니다. 계산은 화면의 중심을"
" 스테레오 필드의 중앙에 놓습니다."
#: website/public/guides/native/index.html:441
msgctxt "page:guides/native/index.html"
msgid ""
"The agent used REA's findings to write the C. Separate checks compared 3,205"
" inputs against the original x86 function and reproduced all 63 compiled "
"bytes of the complete function."
msgstr ""
"사용 된 에이전트 REA3,205 개의 입력을 원래의 86 함수와 비교하고 전체 함수의 63 개의 컴파일된 바이트를 모두 재현했습니다."
#. {ph0}: <a href="../../showcase/dx-ball/#sound-pan" >
#. {ph1}: </a >
#: website/public/guides/native/index.html:446
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid "{ph0}See the full investigation and assembly-to-C comparison{ph1}"
msgstr "{ph0}전체 조사 및 어셈블리 간 비교를 참조하십시오{ph1}"
#: website/public/guides/native/index.html:453
msgctxt "page:guides/native/index.html"
msgid "Try it with your own binary"
msgstr "자신의 바이너리 그것을 시도"
#. {ph0}: <a href="../../get-started/#native" >
#. {ph1}: </a >
#: website/public/guides/native/index.html:454
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"{ph0}Connect a native analysis provider{ph1}, then give your agent a local "
"executable or library and a feature to investigate. Useful starting "
"questions include “How is this file parsed?” or “Which function handles this"
" menu action?”"
msgstr ""
"{ph0}기계 코드 프로그램 공급자의 분석을 연결{ph1},그런 다음 에이전트에 로컬 실행 파일 또는 라이브러리와 조사 할 기능을 "
"제공하십시오. 유용한 시작 질문에는\"이 파일은 어떻게 분석됩니까?\"또는\"이 메뉴 동작을 처리하는 기능은 무엇입니까?”"
#: website/public/guides/native/index.html:461
msgctxt "page:guides/native/index.html"
msgid ""
"If you already know a function name or address, you can query it from the "
"terminal. For a configured Ghidra installation:"
msgstr "함수 이름 또는 주소를 이미 알고 있는 경우 터미널에서 쿼리할 수 있습니다. 구성된 Ghidra 설치:"
#: website/public/guides/native/index.html:467
msgctxt "page:guides/native/index.html"
msgid "Function analysis"
msgstr "기능 분석"
#. {ph0}: <code>main</code>
#: website/public/guides/native/index.html:480
#, python-brace-format
msgctxt "page:guides/native/index.html"
msgid ""
"Replace the target path and {ph0} with your own function name or address. "
"Each CLI invocation imports and analyzes the binary, then closes its "
"session. Your agent's MCP queries reuse the imported binary while that "
"session is open."
msgstr ""
"대상 경로를 대체하고 {ph0} 자신의 함수 이름 또는 주소로. 각 CLI 호출은 바이너리를 가져오고 분석 한 다음 세션을 닫습니다. "
"귀하의 에이전트의 MCP 쿼리는 해당 세션이 열려 있는 동안 가져온 바이너리를 다시 사용합니다."
#: website/public/guides/native/index.html:486
msgctxt "page:guides/native/index.html"
msgid ""
"Read the pseudocode alongside instructions and references. When a result "
"leaves a call or value unresolved, use that location as the next question."
msgstr ""
"지침 및 참조와 함께 의사 코드를 읽으십시오. 결과에서 호출 또는 값이 해결되지 않으면 해당 위치를 다음 질문으로 사용합니다."
#: website/public/guides/native/index.html:6
msgctxt "page:guides/native/index.html"
msgid "Native Binary Analysis — REA"
msgstr "네이티브 바이너리 분석 — REA"
#: website/public/guides/native/index.html:7
msgctxt "page:guides/native/index.html"
msgid ""
"Recover a native calculation with REA: inspect instructions, follow a "
"caller, read constants and check reconstructed C."
msgstr "기본 계산 복구 REA:지시 사항을 검사하고,호출하는 함수를 따르고,상수를 읽고 재구성 된 것을 확인하십시오."
#: website/public/guides/native/index.html:204
msgctxt "page:guides/native/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/guides/native/index.html:214
msgctxt "page:guides/native/index.html"
msgid "Native analysis"
msgstr "기계 코드 프로그램 분석"
#: website/public/guides/native/index.html:337
msgctxt "page:guides/native/index.html"
msgid "Copy example prompt"
msgstr "예제 프롬프트 복사"
#: website/public/guides/native/index.html:468
msgctxt "page:guides/native/index.html"
msgid "Copy function analysis"
msgstr "복사 함수 분석"
#: website/public/guides/native/index.html:509
msgctxt "page:guides/native/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/index.html:105
msgctxt "page:index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#: website/public/index.html:196 website/public/index.html:206
#: website/public/index.html:204
msgctxt "page:index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/index.html:197 website/public/index.html:251
msgctxt "page:index.html"
msgid "Set up REA"
msgstr "설정REA"
#. {ph0}: <a href="#setup" aria-current="location">
#. {ph1}: </a>
#: website/public/index.html:208
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Set up REA{ph1}"
msgstr "{ph0}설정 REA{ph1}"
#. {ph0}: <a href="#what-is-re">
#. {ph1}: </a>
#: website/public/index.html:209
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}What is RE?{ph1}"
msgstr "{ph0}다시 무엇입니까?{ph1}"
#. {ph0}: <a href="#how-rea-helps">
#. {ph1}: </a>
#: website/public/index.html:210
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}How REA helps{ph1}"
msgstr "{ph0}REA가 돕는 방법{ph1}"
#. {ph0}: <a href="#dinosaur">
#. {ph1}: </a>
#: website/public/index.html:211
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Dinosaur game{ph1}"
msgstr "{ph0}공룡 게임{ph1}"
#. {ph0}: <a href="#calculator">
#. {ph1}: </a>
#: website/public/index.html:212
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Calculator{ph1}"
msgstr "{ph0}계산기{ph1}"
#. {ph0}: <a href="#try-rea">
#. {ph1}: </a>
#: website/public/index.html:213
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Try REA{ph1}"
msgstr "{ph0}시도해봐 REA{ph1}"
#. {ph0}: <a href="#analyze">
#. {ph1}: </a>
#: website/public/index.html:214
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Go deeper{ph1}"
msgstr "{ph0}더 깊이 알아보기{ph1}"
#. {ph0}: <a href="#questions">
#. {ph1}: </a>
#: website/public/index.html:215
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Help & feedback{ph1}"
msgstr "{ph0}도움말 및 피드백{ph1}"
#. {ph0}: <a href="#community">
#. {ph1}: </a>
#: website/public/index.html:216
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Community{ph1}"
msgstr "{ph0}커뮤니티{ph1}"
#: website/public/index.html:225
msgctxt "page:index.html"
msgid "Reverse engineering, with your coding agent"
msgstr "코딩 에이전트와 함께 리버스 엔지니어링"
#. {ph0}: <br />
#: website/public/index.html:226
#, python-brace-format
msgctxt "page:index.html"
msgid "Find out how{ph0}software works."
msgstr "소프트웨어가{ph0}어떻게 작동하는지 알아보세요."
#: website/public/index.html:227
msgctxt "page:index.html"
msgid ""
"REA gives your agent the tools to inspect a program and explain what it "
"does."
msgstr "REA는 코딩 에이전트가 프로그램을 조사하고 동작을 설명할 수 있도록 분석 도구를 제공합니다."
#. {ph0}: <a href="#analysis-guides">
#. {ph1}: </a>
#: website/public/index.html:241
#, python-brace-format
msgctxt "page:index.html"
msgid "Already know RE? {ph0}Skip to analysis guides →{ph1}"
msgstr "이미 다시 알고? {ph0}분석 가이드로 건너뛰기.{ph1}"
#. {ph0}: <a href="blog/">
#. {ph1}: </a>
#: website/public/index.html:245
#, python-brace-format
msgctxt "page:index.html"
msgid "Want to go deeper? {ph0}Read the Blog →{ph1}"
msgstr "더 깊이 가고 싶습니까? {ph0}블로그 읽기→{ph1}"
#: website/public/index.html:252
msgctxt "page:index.html"
msgid "Copy this into your coding agent:"
msgstr "이 프롬프트를 코딩 에이전트에 붙여 넣으세요:"
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/index.html:255
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/index.html:260 website/public/index.html:282
#: website/public/index.html:497 website/public/index.html:665
#: website/public/index.html:901 website/public/index.html:1063
#: website/public/index.html:1091
msgctxt "page:index.html"
msgid "Copy"
msgstr "복사"
#: website/public/index.html:279
msgctxt "page:index.html"
msgid "Or run this in your terminal:"
msgstr "터미널에서 직접 실행할 수도 있습니다:"
#: website/public/index.html:291
msgctxt "page:index.html"
msgid "Approve the setup plan, then restart your agent."
msgstr "설정 변경 계획을 확인하고 승인한 뒤 에이전트를 다시 시작하세요."
#: website/public/index.html:306
msgctxt "page:index.html"
msgid "What is reverse engineering?"
msgstr "리버스 엔지니어링이란?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:307
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"Finding out how software works by {ph0}examining the program itself.{ph1}"
msgstr "{ph0}프로그램 자체를 조사해서{ph1} 소프트웨어의 작동 방식을 알아내는 것입니다."
#. {ph0}: <mark class="prose-highlight">
#. {ph1}: </mark>
#. {ph2}: <mark class="prose-highlight">
#. {ph3}: </mark>
#. {ph4}: <mark class="prose-highlight">
#. {ph5}: </mark>
#: website/public/index.html:312
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"The goal: understand a feature well enough to {ph0}explain it{ph1}, "
"{ph2}change it{ph3} or {ph4}rebuild it.{ph5}"
msgstr "목표:충분히 기능을 이해 {ph0}그것을 설명{ph1}, {ph2}변경{ph3} 또는 {ph4}그것을 재건하십시오.{ph5}"
#. {ph0}: <strong class="prose-highlight">
#. {ph1}: </strong>
#: website/public/index.html:330
#, python-brace-format
msgctxt "page:index.html"
msgid "Before REA · You investigate it {ph0}yourself{ph1}"
msgstr "REA 사용 전 · {ph0}직접{ph1} 조사합니다"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/index.html:339
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}01{ph1} Decode branches"
msgstr "{ph0}01{ph1} 분기 디코딩"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/index.html:347
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}02{ph1} Trace calls"
msgstr "{ph0}02{ph1} 추적 호출"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/index.html:355
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}03{ph1} Recover the rule"
msgstr "{ph0}03{ph1} 규칙 복구"
#. {ph0}: <span>
#. {ph1}: </span>
#. {ph2}: <span class="assembly-disclosure" aria-hidden="true">
#. {ph3}: </span>
#: website/public/index.html:370
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Original x64 · selected instructions{ph1} {ph2}{ph3}"
msgstr "{ph0}원본 64*선택한 지침{ph1} {ph2}{ph3}"
#: website/public/index.html:409
msgctxt "page:index.html"
msgid "01 · Which branch?"
msgstr "01*어떤 지점?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:410
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"“{ph0}0x5b? 0x5c?{ph1} Two jumps to the same place. Which operators are "
"these?”"
msgstr "“{ph0}? -그래?{ph1} 같은 장소에 두 점프. 이들은 어떤 연산자입니까?”"
#: website/public/index.html:414
msgctxt "page:index.html"
msgid "Look up the command IDs, then label the branch."
msgstr "명령 아이디를 조회 한 다음 브랜치에 레이블을 지정하십시오."
#: website/public/index.html:420
msgctxt "page:index.html"
msgid "Divide ÷"
msgstr "분÷"
#: website/public/index.html:424
msgctxt "page:index.html"
msgid "Multiply ×"
msgstr "곱하기×"
#: website/public/index.html:429
msgctxt "page:index.html"
msgid "02 · What do the calls do?"
msgstr "02 · 호출된 함수는 무엇을 하나요?"
#. {ph0}: <strong>
#. {ph1}: </strong >
#: website/public/index.html:430
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"“100 is clear. The calls are just addresses. {ph0}Which one divides? Which "
"value goes in?{ph1}”"
msgstr "100 은 분명하다. 전화는 단지 주소 일뿐입니다. {ph0}어느 쪽이 나눌까요? 어떤 값이 들어가나요?{ph1}”"
#: website/public/index.html:435
msgctxt "page:index.html"
msgid "Inspect the helpers and trace the stored values."
msgstr "도우미 함수를 검사하고 저장된 값을 추적합니다."
#: website/public/index.html:445
msgctxt "page:index.html"
msgid "Divide"
msgstr "나누기"
#: website/public/index.html:450
msgctxt "page:index.html"
msgid "03 · What is the rule?"
msgstr "03*규칙은 무엇입니까?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:451
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"“This path multiplies by the other input. So {ph0}10% means 10% of 200{ph1} "
"after +.”"
msgstr "\"이 경로는 다른 입력으로 곱합니다. 그래서 {ph0}10%는 200 의 10%를 의미합니다.{ph1} +후”"
#: website/public/index.html:455
msgctxt "page:index.html"
msgid "Name the operands and check both operator paths."
msgstr "피연산자의 이름을 지정하고 두 연산자 경로를 모두 확인하십시오."
#: website/public/index.html:471 website/public/index.html:399
msgctxt "page:index.html"
msgid "Illustrative expert reasoning"
msgstr "예시 전문가 추론"
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/index.html:474
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}You decode the instructions, follow the calls and reconstruct the "
"calculation.{ph1}"
msgstr "{ph0}당신은 명령을 디코딩 함수 호출을 따라 계산을 재구성.{ph1}"
#. {ph0}: <strong class="prose-highlight">
#. {ph1}: </strong>
#: website/public/index.html:482
#, python-brace-format
msgctxt "page:index.html"
msgid "With REA · You ask {ph0}your agent{ph1}"
msgstr "REA 사용 시 · {ph0}에이전트{ph1}에게 묻습니다"
#: website/public/index.html:486
msgctxt "page:index.html"
msgid "One prompt."
msgstr "프롬프트 하나면 됩니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:487
#, python-brace-format
msgctxt "page:index.html"
msgid "Ask your agent {ph0}in plain English.{ph1}"
msgstr "에이전트에게 {ph0}일상적인 말로{ph1} 질문하세요."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/index.html:492
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Example prompt · Calculator"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}예제 프롬프트*계산기"
#: website/public/index.html:514
msgctxt "page:index.html"
msgid "Example answer · based on the findings"
msgstr "예제 답변·결과에 따라"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:517
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"After +, the % button takes {ph0}a percentage of the first number.{ph1}"
msgstr "+후,%버튼이 걸립니다 {ph0}첫 번째 숫자의 백분율.{ph1}"
#: website/public/index.html:529
msgctxt "page:index.html"
msgid "REA supplies"
msgstr "REA가 제공하는 정보"
#: website/public/index.html:530
msgctxt "page:index.html"
msgid "The handler’s instructions, decompiled code and calls."
msgstr "핸들러의 명령,디 컴파일 된 코드 및 호출."
#: website/public/index.html:535
msgctxt "page:index.html"
msgid "Your agent explains"
msgstr "에이전트가 설명하는 내용"
#: website/public/index.html:536
msgctxt "page:index.html"
msgid "Which branch applies, what it calculates and how to rebuild it."
msgstr "어떤 분기가 적용되는지,무엇을 계산하고 다시 작성하는 방법."
#. {ph0}: <a href="#calculator">
#. {ph1}: </a>
#: website/public/index.html:543
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"Selected assembly from the installed Calculator DLL. The thoughts and reply "
"illustrate the findings. {ph0}Continue with the Calculator example ↓{ph1}"
msgstr "설치된 계산기에서 선택한 어셈블리. 생각과 대답은 그 결과를 보여줍니다. {ph0}계산기 예제를 계속 진행하십시오.{ph1}"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:554
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}Let's try two examples.{ph1} Change a game's speed, then return to "
"Calculator and rebuild its % button."
msgstr "{ph0}두 가지 예를 들어 보겠습니다.{ph1} 게임의 속도를 변경 한 다음 계산기로 돌아가서%버튼을 다시 작성하십시오."
#: website/public/index.html:560
msgctxt "page:index.html"
msgid "Example 01 · Chrome’s dinosaur game"
msgstr "예 01·Chrome's 룡 게임"
#: website/public/index.html:561
msgctxt "page:index.html"
msgid "Why does the dinosaur get faster?"
msgstr "공룡은 왜 점점 빨라질까요?"
#: website/public/index.html:565 website/public/index.html:803
msgctxt "page:index.html"
msgid "Goal"
msgstr "목표"
#. {ph0}: <mark class="prose-highlight">
#. {ph1}: </mark>
#: website/public/index.html:566
#, python-brace-format
msgctxt "page:index.html"
msgid "Rebuild the game with {ph0}adjustable speed.{ph1}"
msgstr "와 게임을 다시 {ph0}조정 가능한 속도.{ph1}"
#: website/public/index.html:572 website/public/index.html:810
msgctxt "page:index.html"
msgid "Why reverse engineer it?"
msgstr "왜 그것을 리버스 엔지니어링합니까?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:573
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"To reproduce its acceleration, we need {ph0}the rule in the running "
"game{ph1}: how fast it starts, how much it increases and when it stops."
msgstr "가속도를 재현하려면 {ph0}실행중인 게임의 규칙{ph1}:얼마나 빨리 시작,얼마나 증가하고 멈출 때."
#: website/public/index.html:582
msgctxt "page:index.html"
msgid "Play the reconstruction"
msgstr "재구성한 게임 플레이"
#: website/public/index.html:614
msgctxt "page:index.html"
msgid "Play"
msgstr "시작"
#: website/public/index.html:617
msgctxt "page:index.html"
msgid "Jump ↑"
msgstr "점프 ↑"
#: website/public/index.html:618
msgctxt "page:index.html"
msgid "Restart"
msgstr "다시 시작"
#: website/public/index.html:621
msgctxt "page:index.html"
msgid "Speed"
msgstr "속도"
#: website/public/index.html:631
msgctxt "page:index.html"
msgid "Use the recovered acceleration rule"
msgstr "복구된 가속 규칙 사용"
#: website/public/index.html:635
msgctxt "page:index.html"
msgid "Original rule: start at 6, then increase toward 13."
msgstr "원래 규칙:6 에서 시작한 다음 13 으로 늘립니다."
#: website/public/index.html:638
msgctxt "page:index.html"
msgid "Move the slider to set your own speed. Space or Jump clears a cactus."
msgstr "자신의 속도를 설정하는 슬라이더를 이동합니다. 공간 또는 점프는 선인장을 지 웁니다."
#: website/public/index.html:643
msgctxt "page:index.html"
msgid ""
"Enable JavaScript to play the reconstruction. The code and explanation above"
" remain readable."
msgstr "사용JavaScript을 재생하는 재건. 위의 코드와 설명은 읽을 수 있습니다."
#: website/public/index.html:651 website/public/index.html:881
msgctxt "page:index.html"
msgid "REA returned"
msgstr "REA가 반환한 결과"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:652
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}The script actually running in the page.{ph1} The agent reads its "
"update function and speed settings, then uses that rule in a new game."
msgstr ""
"{ph0}스크립트는 실제로 페이지에서 실행.{ph1} 에이전트는 업데이트 기능 및 속도 설정을 읽은 다음 새 게임에서 해당 규칙을 "
"사용합니다."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/index.html:660
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Example prompt · Dinosaur game"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}예제 프롬프트*공룡 게임"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="dino-analysis-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/index.html:674
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to inspect this dinosaur game. Why does it get "
"faster? Show the speed rule, then build a small version with an adjustable "
"speed.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 이 공룡 게임을 검사합니다. 왜 더 빨리 얻을 수 있습니까? 속도 규칙을 표시 한 다음 조정 "
"가능한 속도로 작은 버전을 만듭니다.{ph3}{ph4}{ph5}"
#. {ph0}: <a href="https://wayou.github.io/t-rex-runner/" >
#. {ph1}: </a >
#: website/public/index.html:683
#, python-brace-format
msgctxt "page:index.html"
msgid "Inspected target: {ph0}wayou’s Chromium-derived browser edition{ph1}."
msgstr "검사 대상: {ph0}와이우의 Chromium-파생 브라우저 에디션{ph1}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <strong>
#. {ph3}: </strong>
#. {ph4}: <strong>
#. {ph5}: </strong>
#: website/public/index.html:700
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}Start at 6.{ph1} Add {ph2}0.001{ph3} each update without a collision, "
"while speed is below {ph4}13{ph5}."
msgstr ""
"{ph0}시작 6.{ph1} 추가 {ph2}0.001{ph3} 충돌없이 각 업데이트,속도가 아래에있는 동안 {ph4}13{ph5}."
#: website/public/index.html:705
msgctxt "page:index.html"
msgid "Open the speed lab →"
msgstr "스피드 랩을 엽니다."
#: website/public/index.html:711
msgctxt "page:index.html"
msgid "What each part does"
msgstr "각 부분이 하는 일"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/index.html:713
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}01 · REA{ph1}{ph2}Read the running game’s script{ph3}{ph4}Return its "
"actual code and settings to the agent.{ph5}"
msgstr ""
"{ph0}01 · REA{ph1}{ph2}실행중인 게임의 스크립트 읽기{ph3}{ph4}실제 코드와 설정을 에이전트에 "
"반환합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/index.html:720
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}02 · Your agent{ph1}{ph2}Rebuild the rule, add a control{ph3}{ph4}Use "
"the recovered acceleration in a small game with a speed slider.{ph5}"
msgstr ""
"{ph0}02*귀하의 에이전트{ph1}{ph2}규칙 다시 작성,컨트롤 추가{ph3}{ph4}속도 슬라이더와 작은 게임에서 복구 가속을 "
"사용합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/index.html:728
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}03 · You{ph1}{ph2}Change the speed and play{ph3}{ph4}Try the original "
"acceleration, then choose your own pace.{ph5}"
msgstr ""
"{ph0}03*당신{ph1}{ph2}속도 변경 및 재생{ph3}{ph4}원래 가속을 시도한 다음 자신의 페이스를 선택하십시오.{ph5}"
#: website/public/index.html:739
msgctxt "page:index.html"
msgid "See the script, checks and how to try the analysis"
msgstr "스크립트,검사 및 분석 시도 방법을 참조하십시오"
#. {ph0}: <code>index.js</code>
#: website/public/index.html:742
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"REA inspected the HTTP browser edition through a local debugging connection "
"and returned the loaded {ph0}, including its source and digest."
msgstr ""
"REA 로컬 디버깅 연결을 통해 <URL> 브라우저 버전을 검사하고 로드된 버전을 반환했습니다. {ph0},그 원천과 다이제스트를 "
"포함합니다."
#: website/public/index.html:755
msgctxt "page:index.html"
msgid ""
"We called the original game’s update function in a controlled browser check,"
" with obstacles and automatic scheduling disabled. After 4,000 updates, "
"speed was 10.0; after 10,000, it was 13.0, rounded to one decimal."
msgstr ""
"우리는 장애물과 자동 스케줄링이 비활성화 된 제어 된 브라우저 검사에서 원래 게임의 업데이트 기능을 호출했습니다. 4,000 개의 "
"업데이트 후,속도는 10.0 이었고,10,000 개의 업데이트 후,13.0 이 되었고,10 진수로 반올림되었습니다."
#. {ph0}: <a href="examples/dino-lab/">
#. {ph1}: </a>
#: website/public/index.html:761
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"The new mini-game keeps that speed rule. Its drawing, jumping and collision "
"code are a small teaching implementation. {ph0}Open the lab{ph1} to see the "
"new code and run the same speed check."
msgstr ""
"새로운 미니 게임은 그 속도 규칙을 유지합니다. 그리기,점프 및 충돌 코드는 작은 교육 구현입니다. {ph0}실험실 열기{ph1} 새 "
"코드를 확인하고 동일한 속도 검사를 실행합니다."
#. {ph0}: <a href="guides/browser/#prepare">
#. {ph1}: </a>
#. {ph2}: <a href="https://wayou.github.io/t-rex-runner/" >
#. {ph3}: </a >
#: website/public/index.html:767
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"To inspect the target yourself, follow the {ph0}browser connection "
"steps{ph1} using {ph2}the dinosaur page{ph3}. Give your agent that page URL "
"and your local debugging endpoint, then copy the prompt above."
msgstr ""
"대상을 직접 검사하려면 다음을 수행하십시오 {ph0}브라우저 연결 단계{ph1} 사용 {ph2}공룡 페이지{ph3}. 에이전트에 해당 "
"페이지 및 로컬 디버깅 끝점을 지정한 다음 위의 프롬프트를 복사합니다."
#. {ph0}: <a href="https://github.com/wayou/t-rex-
#. runner/blob/5455bfa408ec6b707c7300ff194b7390733a766d/index.js#L565-L571" >
#. {ph1}: </a >
#. {ph2}: <a href="assets/licenses/dinosaur.txt" >
#. {ph3}: </a >
#: website/public/index.html:776
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}Inspected speed code{ph1} · {ph2}Chromium Authors · BSD license{ph3}"
msgstr "{ph0}검사된 속도 코드{ph1} · {ph2}Chromium 저자*비스 디 라이센스{ph3}"
#: website/public/index.html:793
msgctxt "page:index.html"
msgid "Example 02 · Windows Calculator"
msgstr "예 02·Windows계산기"
#: website/public/index.html:794
msgctxt "page:index.html"
msgid "Rebuild Calculator’s % button."
msgstr "계산기의 % 버튼을 재현해 봅니다."
#. {ph0}: <mark class="prose-highlight">
#. {ph1}: </mark>
#: website/public/index.html:804
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"Build a small calculator that handles {ph0}both + and × correctly.{ph1}"
msgstr "처리하는 작은 계산기를 구축 {ph0}+및 2018 년 11 월 13 일.{ph1}"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/index.html:811
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"The same button uses {ph0}different rules after + and ×.{ph1} We inspect the"
" installed app to find which number the percentage is applied to."
msgstr ""
"같은 버튼 사용 {ph0}+및 2019 년 이후의 다른 규칙.{ph1} 우리는 비율이 적용되는 번호를 찾기 위해 설치된 응용 프로그램을 "
"검사합니다."
#: website/public/index.html:820
msgctxt "page:index.html"
msgid "Try the calculation"
msgstr "계산 시도"
#: website/public/index.html:864
msgctxt "page:index.html"
msgid "Reset"
msgstr "초기화"
#: website/public/index.html:872
msgctxt "page:index.html"
msgid "10% of 200 = 20. Then 200 + 20 = 220."
msgstr "10%의 200=20. 그런 다음 200+20=220."
#: website/public/index.html:875
msgctxt "page:index.html"
msgid "Interactive illustration of the inspected percentage rule."
msgstr "검사된 백분율 규칙의 대화형 그림입니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/index.html:882
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}One branch divides by 100. The other also multiplies by the first "
"number.{ph1} The agent uses both to recreate the % button."
msgstr ""
"{ph0}한 가지가 100 으로 나뉩니다. 다른 하나는 또한 첫 번째 숫자를 곱합니다.{ph1} 에이전트는 둘 다 사용하여%단추를 다시 "
"만듭니다."
#. {ph0}: <code>previous = 200</code>
#. {ph1}: <code>current = 10</code>
#: website/public/index.html:890
#, python-brace-format
msgctxt "page:index.html"
msgid "For this example, {ph0} and {ph1}."
msgstr "이 예제에서는, {ph0} 그리고 {ph1}."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/index.html:896
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Example prompt · Rebuild the % "
"button"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}예제 프롬프트*%단추 다시 작성"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="calculator-analysis-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/index.html:910
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to inspect Windows Calculator’s % button. Recover "
"the rules after + and ×, then build a small calculator that uses "
"both.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 검사 Windows 계산기의%버튼. +와 200 이후의 규칙을 복구 한 다음 둘 다 사용하는 "
"작은 계산기를 만듭니다.{ph3}{ph4}{ph5}"
#: website/public/index.html:931
msgctxt "page:index.html"
msgid "With +"
msgstr "+와 함께"
#. {ph0}: <strong>
#. {ph1}: </strong >
#. {ph2}: <code>10% of 200 = 20 → 200 + 20 = 220</code>
#: website/public/index.html:932
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Take 10% of the first number.{ph1}{ph2}"
msgstr "{ph0}첫 번째 숫자의 10%를 가져 가라.{ph1}{ph2}"
#: website/public/index.html:938
msgctxt "page:index.html"
msgid "With ×"
msgstr "와×"
#. {ph0}: <strong>
#. {ph1}: </strong >
#. {ph2}: <code>200 × 0.1 = 20</code>
#: website/public/index.html:939
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}Turn 10% into 0.1.{ph1}{ph2}"
msgstr "{ph0}10%를 0.1 로 바꿉니다.{ph1}{ph2}"
#: website/public/index.html:948
msgctxt "page:index.html"
msgid "From the installed app to a working % button"
msgstr "설치된 앱에서 작동%버튼으로"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: <code>100</code>
#. {ph6}: </span >
#: website/public/index.html:961
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}02 · REA reads the library{ph1}{ph2}Return the % handler’s "
"code{ph3}{ph4}The function checks the operator and uses the constant "
"{ph5}.{ph6}"
msgstr ""
"{ph0}02 · REA 도서관 읽기{ph1}{ph2}%핸들러의 코드를 반환합니다{ph3}{ph4}이 함수는 연산자를 확인하고 상수를 "
"사용합니다 {ph5}.{ph6}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <span class="flow-node">
#. {ph3}: </span >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/index.html:969
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}03 · Your agent interprets it{ph1}{ph2}Explain and reproduce the "
"rules{ph3}{ph4}Crosscheck the branch with Microsoft’s source, then try + and"
" × above.{ph5}"
msgstr ""
"{ph0}03*당신의 에이전트는 그것을 해석{ph1}{ph2}규칙 설명 및 재현{ph3}{ph4}마이크로 소프트의 소스와 지점을 교차 "
"검사 한 다음 위의+및 200 을 시도하십시오.{ph5}"
#: website/public/index.html:980
msgctxt "page:index.html"
msgid "See the real code and how the answer was checked"
msgstr "실제 코드 및 답변 확인 방법 보기"
#: website/public/index.html:1006
msgctxt "page:index.html"
msgid ""
"Inspected with REA 4.1.0: Windows Calculator 11.2508.4.0, x64. The readable "
"summary uses names from Microsoft’s public source to explain the recovered "
"branch."
msgstr ""
"검사와REA4.1.0:Windows계산기 11.2508.4.0,x64. 읽을 수있는 요약은 복구 된 지점을 설명하기 위해 마이크로 "
"소프트의 공개 소스에서 이름을 사용합니다."
#. {ph0}: <a
#. href="https://github.com/microsoft/calculator/blob/d125246a4e19842ce1332e6c7839cf0e110027d8/src/CalcManager/CEngine/scifunc.cpp#L98-L111"
#. >
#. {ph1}: </a >
#. {ph2}: <a
#. href="https://github.com/microsoft/calculator/blob/d125246a4e19842ce1332e6c7839cf0e110027d8/src/CalculatorUnitTests/CalculatorManagerTest.cpp#L350-L370"
#. >
#. {ph3}: </a >
#. {ph4}: <a href="guides/native/">
#. {ph5}: </a>
#: website/public/index.html:1011
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}Percentage implementation{ph1} · {ph2}Microsoft’s test cases{ph3} · "
"{ph4}Native setup guide{ph5}"
msgstr "{ph0}백분율 구현{ph1} · {ph2}마이크로소프트의 테스트 케이스{ph3} · {ph4}기본 설정 가이드{ph5}"
#: website/public/index.html:1030
msgctxt "page:index.html"
msgid "Your first investigation"
msgstr "첫 번째 조사"
#: website/public/index.html:1031
msgctxt "page:index.html"
msgid "Try REA on a small app."
msgstr "시도해봐 REA 작은 응용 프로그램에."
#: website/public/index.html:1032
msgctxt "page:index.html"
msgid ""
"Download our Notes example, trace its CSV export, and check one changed "
"input."
msgstr "우리의 노트 예제를 다운로드,그 추적 CSV 수출,하나의 변경된 입력을 확인합니다."
#: website/public/index.html:1037
msgctxt "page:index.html"
msgid "Try the guided example"
msgstr "가이드 예제를 사용해보십시오"
#: website/public/index.html:1046
msgctxt "page:index.html"
msgid "Want to go deeper?"
msgstr "더 깊이 알아보고 싶나요?"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <strong>
#. {ph3}: </strong>
#: website/public/index.html:1047
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"Tell your agent what you want to understand or build. With REA, you can work"
" together on anything from {ph0}cloning this website{ph1} to "
"{ph2}reconstructing a game from its executable.{ph3}"
msgstr ""
"당신이 이해하거나 구축하고 싶은 당신의 에이전트를 말한다. 함께 REA,당신은 아무것도 함께 작업 할 수 있습니다 {ph0}이 웹 사이트"
" 복제{ph1} 에 {ph2}실행 파일에서 게임을 재구성합니다.{ph3}"
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/index.html:1058
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Example prompt · Website"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}프롬프트 예*웹 사이트"
#: website/public/index.html:1081
msgctxt "page:index.html"
msgid "Yes, this one."
msgstr "예,이 하나."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/index.html:1086
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Example prompt · Game reconstruction"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}예제 프롬프트*게임 재구성"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="game-project-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/index.html:1100
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to reconstruct this game from its executable. "
"Recover the gameplay logic in C and test it against the "
"original.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 이 게임을 실행 파일에서 재구성합니다. 다에서 게임 플레이 로직을 복구하고 원본에 대해 "
"테스트합니다.{ph3}{ph4}{ph5}"
#. {ph0}: <a href="showcase/dx-ball/">
#. {ph1}: </a>
#: website/public/index.html:1109
#, python-brace-format
msgctxt "page:index.html"
msgid "{ph0}See the DX-Ball case study →{ph1}"
msgstr "{ph0}보 DX-Ball 사례 연구→{ph1}"
#: website/public/index.html:1114
msgctxt "page:index.html"
msgid "For setup and analysis steps, choose your target:"
msgstr "설정 및 분석 단계에서 대상을 선택합니다:"
#: website/public/index.html:1119
msgctxt "page:index.html"
msgid "Native binaries"
msgstr "기계 코드 프로그램"
#: website/public/index.html:1120
msgctxt "page:index.html"
msgid ""
"Inspect functions, strings, references and call relationships in executables"
" and libraries."
msgstr "실행 파일 및 라이브러리에서 함수,문자열,참조 및 함수 호출 관계를 검사합니다."
#: website/public/index.html:1124
msgctxt "page:index.html"
msgid "Native analysis guide"
msgstr "기계 코드 프로그램 분석 가이드"
#: website/public/index.html:1127
msgctxt "page:index.html"
msgid "JavaScript & Electron"
msgstr "JavaScript & Electron"
#: website/public/index.html:1128
msgctxt "page:index.html"
msgid ""
"Map modules, routes, IPC and native dependencies from an application folder "
"or ASAR archive."
msgstr "응용 프로그램 폴더에서 모듈,경로 및 기본 종속성을 매핑하거나 ASAR 아카이브"
#: website/public/index.html:1132
msgctxt "page:index.html"
msgid "Application workflows"
msgstr "애플리케이션 워크플로"
#: website/public/index.html:1135
msgctxt "page:index.html"
msgid "Browser & runtime activity"
msgstr "브라우저 및 런타임 활동"
#: website/public/index.html:1136
msgctxt "page:index.html"
msgid ""
"Capture selected browser or process activity, then compare the results "
"across runs."
msgstr "선택한 브라우저 또는 프로세스 활동을 캡처 한 다음 여러 실행에서 결과를 비교합니다."
#: website/public/index.html:1140
msgctxt "page:index.html"
msgid "Browser observation guide"
msgstr "브라우저 관찰 가이드"
#: website/public/index.html:1147
msgctxt "page:index.html"
msgid "Any questions?"
msgstr "궁금한 점이 있나요?"
#. {ph0}: <a href="faq/">
#. {ph1}: </a>
#. {ph2}: <a href="https://discord.gg/GkcryMnJDM">
#. {ph3}: </a>
#. {ph4}: <a href="https://github.com/morluto/rea/issues/new/choose" >
#. {ph5}: </a >
#: website/public/index.html:1148
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}Read the FAQ{ph1}, {ph2}chat with us on Discord{ph3}, or {ph4}open a "
"GitHub issue{ph5} for bugs and feature requests."
msgstr ""
"{ph0}자주 묻는 질문 읽기{ph1}, {ph2}에 우리와 함께 채팅 Discord{ph3},또는 {ph4}오픈 GitHub "
"문제{ph5} 버그 및 기능 요청."
#: website/public/index.html:1161 website/public/index.html:1167
msgctxt "page:index.html"
msgid "Join the community"
msgstr "커뮤니티 참여"
#: website/public/index.html:1162
msgctxt "page:index.html"
msgid ""
"Share investigations and get help from other REA users on Discord. Follow "
"REA on X for project updates."
msgstr "조사를 공유하고 다른 사람의 도움을 받으십시오 REA 사용자 Discord. 팔로우 REA 프로젝트 업데이트에 대한 엑스."
#: website/public/index.html:6
msgctxt "page:index.html"
msgid "REA — Reverse Engineering for Your Coding Agent"
msgstr "REA -코딩 에이전트를 위한 리버스 엔지니어링"
#: website/public/index.html:7
msgctxt "page:index.html"
msgid ""
"Reverse engineer apps, binaries and browser behavior with your coding agent."
" Follow clear guides and try interactive examples with REA."
msgstr ""
"코딩 에이전트를 사용하여 앱,바이너리 및 브라우저 동작을 리버스 엔지니어링합니다. 명확한 가이드를 따라 대화 형 예제를 사용해보십시오 "
"REA."
#: website/public/index.html:260
msgctxt "page:index.html"
msgid "Copy REA installation prompt"
msgstr "복사REA설치 프롬프트"
#: website/public/index.html:282
msgctxt "page:index.html"
msgid "Copy setup command"
msgstr "설치 명령 복사"
#: website/public/index.html:334
msgctxt "page:index.html"
msgid "Follow the manual Calculator analysis"
msgstr "수동 계산기 분석을 따르십시오"
#: website/public/index.html:497
msgctxt "page:index.html"
msgid "Copy Calculator percentage question"
msgstr "복사 계산기 백분율 질문"
#: website/public/index.html:604
msgctxt "page:index.html"
msgid ""
"Dinosaur mini-game. Use the Jump button or press Space while the game is "
"focused."
msgstr "공룡 미니 게임. 게임이 집중되는 동안 점프 버튼을 누르거나 공간을 사용합니다."
#: website/public/index.html:665
msgctxt "page:index.html"
msgid "Copy dinosaur analysis prompt"
msgstr "복사 공룡 분석 프롬프트"
#: website/public/index.html:821
msgctxt "page:index.html"
msgid "Choose the calculation"
msgstr "계산 선택"
#: website/public/index.html:901
msgctxt "page:index.html"
msgid "Copy Calculator analysis prompt"
msgstr "복사 계산기 분석 프롬프트"
#: website/public/index.html:1063
msgctxt "page:index.html"
msgid "Copy website project prompt"
msgstr "웹 사이트 프로젝트 프롬프트 복사"
#: website/public/index.html:1091
msgctxt "page:index.html"
msgid "Copy game reconstruction prompt"
msgstr "복사 게임 재건 프롬프트"
#: website/public/index.html:1191
msgctxt "page:index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/showcase/aegis/index.html:104
msgctxt "page:showcase/aegis/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/showcase/aegis/index.html:195
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Home{ph1} / {ph2}Showcases{ph3} / Android"
msgstr "{ph0}홈{ph1} / {ph2}쇼케이스{ph3} /안드로이드"
#: website/public/showcase/aegis/index.html:198
msgctxt "page:showcase/aegis/index.html"
msgid "Case study · Aegis Authenticator"
msgstr "사례 연구·Aegis인증"
#. {ph0}: <br />
#: website/public/showcase/aegis/index.html:199
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "How does an authenticator{ph0}generate a login code?"
msgstr "인증자는 어떻게{ph0}로그인 코드를 생성 하시겠습니까?"
#: website/public/showcase/aegis/index.html:200
msgctxt "page:showcase/aegis/index.html"
msgid ""
"A six-digit code changes every 30 seconds. Use REA to find the calculation "
"in an Android APK, then rebuild it with a clock you can control."
msgstr ""
"6 자리 코드는 30 초마다 변경됩니다. 사용 REA 안드로이드에서 계산을 찾으려면 APK,그리고 당신이 제어할 수 있는 시계로 다시 "
"만들죠."
#: website/public/showcase/aegis/index.html:205
msgctxt "page:showcase/aegis/index.html"
msgid "Aegis 3.4.3 · Android · Official release APK · 6.9 MB"
msgstr "Aegis3.4.3·안드로이드·공식 출시APK·6.9MB"
#: website/public/showcase/aegis/index.html:208
msgctxt "page:showcase/aegis/index.html"
msgid "View Aegis on GitHub"
msgstr "보기 Aegis 시작 GitHub"
#: website/public/showcase/aegis/index.html:214
msgctxt "page:showcase/aegis/index.html"
msgid "From an APK to a code you can reproduce"
msgstr "에서APK코드를 재현할 수 있습니다"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node" >
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/aegis/index.html:216
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}01 · Locate the feature{ph1}{ph2}3,077 classes → generating "
"methods{ph3}{ph4}REA searches the package and traces the code used by the "
"display and copy actions.{ph5}"
msgstr ""
"{ph0}01*기능 찾기{ph1}{ph2}3,077 개의 클래스 생성 메소드 3,077 개의 클래스 생성 메소드{ph3}{ph4}REA "
"패키지를 검색하고 표시 및 복사 작업에 사용되는 코드를 추적합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/aegis/index.html:225
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}02 · Read the calculation{ph1}{ph2}Time + account key → six "
"digits{ph3}{ph4}REA returns the methods and defaults. The agent explains how"
" they fit together.{ph5}"
msgstr ""
"{ph0}02*계산 읽기{ph1}{ph2}시간+계정 키 6 자리 숫자{ph3}{ph4}REA 메서드 및 기본값을 반환합니다. 에이전트는 "
"그들이 어떻게 어울리는지 설명합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/aegis/index.html:233
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}03 · Rebuild and check{ph1}{ph2}Change the clock. Watch the "
"code.{ph3}{ph4}A new browser demo reproduces the rule and checks it against "
"public reference cases.{ph5}"
msgstr ""
"{ph0}03*재 구축 및 확인{ph1}{ph2}시계를 변경하십시오. 코드를 보세요.{ph3}{ph4}새로운 브라우저 데모는 규칙을 "
"재현하고 공개 참조 사례에 대해 확인합니다.{ph5}"
#: website/public/showcase/aegis/index.html:246
msgctxt "page:showcase/aegis/index.html"
msgid "In this case study"
msgstr "이 사례 연구에서"
#. {ph0}: <a href="#ask">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:248
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Ask your agent{ph1}"
msgstr "{ph0}당신의 에이전트를 물어{ph1}"
#. {ph0}: <a href="#demo">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:249
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Try the code generator{ph1}"
msgstr "{ph0}코드 생성기 사용해보기{ph1}"
#. {ph0}: <a href="#find">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:250
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Find the code with REA{ph1}"
msgstr "{ph0}코드 찾기 REA{ph1}"
#. {ph0}: <a href="#calculation">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:251
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Read the calculation{ph1}"
msgstr "{ph0}계산 읽기{ph1}"
#. {ph0}: <a href="#verify">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:252
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Check the reconstruction{ph1}"
msgstr "{ph0}재건 확인{ph1}"
#. {ph0}: <a href="#try">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:253
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Inspect the APK yourself{ph1}"
msgstr "{ph0}검사 APK 너 자신{ph1}"
#: website/public/showcase/aegis/index.html:258
msgctxt "page:showcase/aegis/index.html"
msgid "Ask your agent"
msgstr "당신의 에이전트를 물어"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/aegis/index.html:259
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The app shows a changing login code. We want to find {ph0}what makes it "
"change{ph1} and reproduce that behavior."
msgstr ""
"응용 프로그램은 변화하는 로그인 코드를 보여줍니다. 우리는 찾고 싶어 {ph0}무엇이 그것을 변화 시키는가{ph1} 그리고 그 행동을 "
"재현하십시오."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/showcase/aegis/index.html:265
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/showcase/aegis/index.html:269
#: website/public/showcase/aegis/index.html:732
msgctxt "page:showcase/aegis/index.html"
msgid "Copy"
msgstr "복사"
# Reviewed for concrete meaning, software terminology and readable sentences.
#. {ph0}: <a href="#try">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:289
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"An example prompt for the downloaded APK, with REA's Android analysis "
"configured. {ph0}Get the APK and analysis setup ↓{ph1}"
msgstr ""
"다운로드한 APK를 분석하는 예시 프롬프트입니다. 먼저 REA의 Android 분석 환경을 설정하세요. {ph0}APK와 분석 설정 받기"
" ↓{ph1}"
#: website/public/showcase/aegis/index.html:297
msgctxt "page:showcase/aegis/index.html"
msgid "Try the code generator"
msgstr "코드 생성기 사용해보기"
# Reviewed for concrete meaning, software terminology and readable sentences.
#. {ph0}: <mark class="prose-highlight">
#. {ph1}: </mark>
#: website/public/showcase/aegis/index.html:298
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The app groups time into {ph0}30-second blocks.{ph1} It combines the block "
"number with the account key to generate a code. The same key and block "
"produce the same code."
msgstr ""
"앱은 시간을 {ph0}30초 단위로 나눕니다.{ph1} 시간 구간 번호와 계정 키를 결합해 코드를 생성합니다. 같은 키와 같은 시간 "
"구간이면 같은 코드가 나옵니다."
#: website/public/showcase/aegis/index.html:305
msgctxt "page:showcase/aegis/index.html"
msgid "Move the clock across 60 seconds"
msgstr "60 초에 걸쳐 시계를 이동"
#: website/public/showcase/aegis/index.html:308
msgctxt "page:showcase/aegis/index.html"
msgid "Time"
msgstr "시간"
#: website/public/showcase/aegis/index.html:310
msgctxt "page:showcase/aegis/index.html"
msgid "seconds"
msgstr "초"
#: website/public/showcase/aegis/index.html:311
msgctxt "page:showcase/aegis/index.html"
msgid "Our adjustable example clock"
msgstr "우리의 조정 가능한 예제 시계"
#: website/public/showcase/aegis/index.html:314
msgctxt "page:showcase/aegis/index.html"
msgid "30-second block"
msgstr "30 초 블록"
#: website/public/showcase/aegis/index.html:316
#: website/public/showcase/aegis/index.html:643
msgctxt "page:showcase/aegis/index.html"
msgid "Block"
msgstr "블록"
#. {ph0}: <code data-aegis-division>floor(59 / 30)</code>
#. {ph1}: <br />
#. {ph2}: <span data-aegis-window >
#. {ph3}: </span >
#: website/public/showcase/aegis/index.html:317
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}{ph1}{ph2}30–59 seconds{ph3}"
msgstr "{ph0}{ph1}{ph2}30-59 초{ph3}"
#: website/public/showcase/aegis/index.html:325
msgctxt "page:showcase/aegis/index.html"
msgid "Generated code"
msgstr "생성된 코드"
#: website/public/showcase/aegis/index.html:333
msgctxt "page:showcase/aegis/index.html"
msgid "Account key + block → six digits"
msgstr "계정 키+블록 6 자리 숫자"
#: website/public/showcase/aegis/index.html:339
msgctxt "page:showcase/aegis/index.html"
msgid "Example time, in seconds"
msgstr "예제 시간(초)"
#: website/public/showcase/aegis/index.html:354
#: website/public/showcase/aegis/index.html:654
msgctxt "page:showcase/aegis/index.html"
msgid "59 seconds"
msgstr "59 초"
#: website/public/showcase/aegis/index.html:361
#: website/public/showcase/aegis/index.html:659
msgctxt "page:showcase/aegis/index.html"
msgid "60 seconds"
msgstr "60 초"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <strong>
#. {ph3}: </strong>
#: website/public/showcase/aegis/index.html:370
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"At 59 seconds: {ph0}287082.{ph1} At 60 seconds: {ph2}359152.{ph3} Moving "
"within one block leaves the code unchanged."
msgstr ""
"59 초: {ph0}287082.{ph1} 60 초: {ph2}359152.{ph3} 한 블록 내에서 이동하면 코드가 변경되지 않습니다."
#. {ph0}: <a href="https://www.rfc-editor.org/rfc/rfc6238.html#appendix-B" >
#. {ph1}: </a >
#: website/public/showcase/aegis/index.html:377
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The key is fixed, public {ph0}RFC 6238 test data{ph1}. The demo implements "
"the calculation recovered from the APK."
msgstr "키는 고정,공개 {ph0}6238 테스트 데이터{ph1}. 데모에서 복구 된 계산을 구현 APK."
#: website/public/showcase/aegis/index.html:384
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The diagram shows the result at 59 seconds. Enable JavaScript to change the "
"clock."
msgstr "다이어그램은 59 초에 결과를 보여줍니다. 활성화 JavaScript 시계를 바꾸기 위해서."
#: website/public/showcase/aegis/index.html:393
msgctxt "page:showcase/aegis/index.html"
msgid "Find the code with REA"
msgstr "코드를 찾으로REA"
#: website/public/showcase/aegis/index.html:396
msgctxt "page:showcase/aegis/index.html"
msgid "Narrow the APK to three classes"
msgstr "좁은 APK 세 가지 클래스"
#. {ph0}: <code>TotpInfo</code>
#: website/public/showcase/aegis/index.html:421
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0} is the calculation candidate; the other two concern the progress bar "
"and imported accounts. TOTP means a time-based one-time password."
msgstr ""
"{ph0} 계산 후보입니다.다른 두 개는 진행률 표시줄과 가져온 계정에 관한 것입니다. TOTP 시간 기반 일회성 암호를 의미합니다."
#: website/public/showcase/aegis/index.html:428
msgctxt "page:showcase/aegis/index.html"
msgid "Connect the generator to the app's display"
msgstr "생성기를 앱의 디스플레이에 연결"
#. {ph0}: <code>EntryHolder.getOtp</code>
#. {ph1}: <code>TotpInfo.getOtp(timestamp)</code>
#: website/public/showcase/aegis/index.html:456
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"REA identifies the timestamp overload and finds the base method's callers. "
"Inspecting {ph0} then shows the display calling {ph1}."
msgstr ""
"REA 타임스탬프 오버로드를 식별하고 기본 메서드의 호출자를 찾습니다. 검사 {ph0} 그런 다음 디스플레이 호출을 보여줍니다 "
"{ph1}."
#. {ph0}: <code>com.beemdevelopment.aegis</code>
#: website/public/showcase/aegis/index.html:464
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"Requests show a shortened input path. Result class names omit the common "
"{ph0} prefix."
msgstr "요청은 단축된 입력 경로를 표시합니다. 결과 클래스 이름은 공통 클래스를 생략합니다. {ph0} 사전"
#: website/public/showcase/aegis/index.html:471
msgctxt "page:showcase/aegis/index.html"
msgid "Read the calculation"
msgstr "계산 읽기"
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/showcase/aegis/index.html:472
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"REA returns {ph0}the clock conversion, default settings and generating "
"methods.{ph1} The constructors set a 30-second interval and six digits; the "
"timestamp method turns seconds into a block number."
msgstr ""
"REA 반환 {ph0}시계 변환,기본 설정 및 생성 방법.{ph1} 생성자는 30 초 간격과 6 자리 숫자를 설정합니다.타임 스탬프 "
"방법은 초를 블록 번호로 바꿉니다."
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/aegis/index.html:487
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}01{ph1} Time block"
msgstr "{ph0}01{ph1} 시간 차단"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/aegis/index.html:495
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}02{ph1} Key + block"
msgstr "{ph0}02{ph1} 키+블록"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/aegis/index.html:503
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}03{ph1} Six digits"
msgstr "{ph0}03{ph1} 여섯 자리"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/aegis/index.html:562
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}Time chooses the block.{ph1} Seconds 30 through 59 all give block 1. At"
" 60 seconds, the block becomes 2."
msgstr ""
"{ph0}시간은 블록을 선택합니다.{ph1} 초 30 부터 59 까지 모두 블록 1 을 제공합니다. 60 초 후에 블록은 2 가 됩니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/aegis/index.html:568
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}The key matters too.{ph1} The generator combines the account key with "
"the block. An account with a different key can show a different code at the "
"same time."
msgstr ""
"{ph0}핵심 문제도 마찬가지입니다.{ph1} 생성기는 계정 키와 블록을 결합합니다. 키가 다른 계정은 동시에 다른 코드를 표시할 수 "
"있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/aegis/index.html:575
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}Keep six digits.{ph1} The remainder after division by 1,000,000 is "
"padded with zeroes when needed, so a code can begin with 0."
msgstr ""
"{ph0}6 자리 숫자를 유지하십시오.{ph1} 1,000,000 으로 나눈 후의 나머지 부분은 필요할 때 0 으로 채워져 "
"있습니다.그래서 코드는 0 으로 시작할 수 있습니다."
#. {ph0}: <a
#. href="https://github.com/beemdevelopment/Aegis/blob/d6f4e5925a97e4e91593f1542085eae03432a759/LICENSE"
#. >
#. {ph1}: </a >
#: website/public/showcase/aegis/index.html:582
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"Excerpts from several inspected methods, with line wrapping for display. The"
" right panel is an explanatory summary. {ph0}Aegis code is GPL-3.0.{ph1}"
msgstr ""
"여러 검사 방법에서 발췌,디스플레이 라인 포장. 오른쪽 패널은 설명 요약입니다. {ph0}Aegis 코드는 다음과 같습니다.{ph1}"
#: website/public/showcase/aegis/index.html:591
msgctxt "page:showcase/aegis/index.html"
msgid "Inside the generator"
msgstr "발전기 내부"
#. {ph0}: <code>generateOTP</code>
#. {ph1}: <code>kotlin.ExceptionsKt</code>
#. {ph2}: <code>TotpInfo</code>
#. {ph3}: <code>HOTP</code>
#: website/public/showcase/aegis/index.html:592
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The released APK puts {ph0} in {ph1}. REA follows the call from {ph2} and "
"returns this body; the original source calls the helper {ph3}."
msgstr ""
"석방 된 사람 들 APK 풋 {ph0} 그 안에 {ph1}. REA 에서 함수 호출를 다음과 {ph2} 그리고 이 몸을 반환합니다.원래의"
" 소스는 도우미를 호출합니다. {ph3}."
#: website/public/showcase/aegis/index.html:614
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The last hash byte selects a position. Four bytes at that position provide a"
" positive 31-bit number; formatting reduces it to the requested number of "
"digits. The constructor's last argument selects the code-formatting branch "
"introduced by compilation."
msgstr ""
"마지막 해시 바이트는 위치를 선택합니다. 그 위치 에 있는 4 바이트 는 31 비트 의 양수 를 제공 합니다.포맷 을 지정 하면 요청 된"
" 자릿수 로 줄일 수 있습니다. 생성자의 마지막 인수는 컴파일에 의해 도입된 코드 서식 분기를 선택합니다."
#. {ph0}: <a
#. href="https://github.com/beemdevelopment/Aegis/blob/d6f4e5925a97e4e91593f1542085eae03432a759/app/src/main/java/com/beemdevelopment/aegis/crypto/otp/HOTP.java"
#. >
#. {ph1}: </a >
#: website/public/showcase/aegis/index.html:621
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}Compare with the matching release source{ph1}."
msgstr "{ph0}일치하는 릴리스 소스와 비교{ph1}."
#: website/public/showcase/aegis/index.html:631
msgctxt "page:showcase/aegis/index.html"
msgid "Check the reconstruction"
msgstr "재건 확인"
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/aegis/index.html:632
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"We assembled the selected REA-returned Java methods in a small test program."
" Their output matched an independent reconstruction on {ph0}133 test "
"cases{ph1}, including time-block boundaries and codes beginning with zero."
msgstr ""
"우리는 선택한 것을 조립했습니다 REA-작은 테스트 프로그램에서 자바 메소드를 반환했습니다. 그들의 출력은 독립적인 재구성과 "
"일치했습니다. {ph0}133 테스트 케이스{ph1} 시간 블록 경계와 0 으로 시작하는 코드를 포함합니다."
#: website/public/showcase/aegis/index.html:642
msgctxt "page:showcase/aegis/index.html"
msgid "Example time"
msgstr "예제 시간"
#: website/public/showcase/aegis/index.html:644
msgctxt "page:showcase/aegis/index.html"
msgid "Six-digit code"
msgstr "6 자리 코드"
#: website/public/showcase/aegis/index.html:649
msgctxt "page:showcase/aegis/index.html"
msgid "30 seconds"
msgstr "30 초"
#: website/public/showcase/aegis/index.html:664
msgctxt "page:showcase/aegis/index.html"
msgid "1,111,111,109 seconds"
msgstr "1,111,111,109 초"
#. {ph0}: <a href="https://www.rfc-editor.org/rfc/rfc6238.html#appendix-B" >
#. {ph1}: </a >
#: website/public/showcase/aegis/index.html:671
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The generator also matches the six published SHA-1 reference cases in "
"{ph0}RFC 6238{ph1}. Check the browser implementation against them:"
msgstr ""
"발전기는 또한 6 개의 발표된 것과 일치합니다. SHA-1 참조 사례 {ph0}6238{ph1}. 그들에 대한 브라우저 구현을 "
"확인하십시오:"
#: website/public/showcase/aegis/index.html:679
msgctxt "page:showcase/aegis/index.html"
msgid "Run reference checks"
msgstr "참조 검사 실행"
#: website/public/showcase/aegis/index.html:686
msgctxt "page:showcase/aegis/index.html"
msgid "Read the demo's calculation"
msgstr "데모 계산 읽기"
#: website/public/showcase/aegis/index.html:690
msgctxt "page:showcase/aegis/index.html"
msgid ""
"The reference cases use eight digits. The check also verifies their six-"
"digit results."
msgstr "참조 케이스는 8 자리 숫자를 사용합니다. 이 검사는 또한 6 자리 결과를 확인합니다."
#: website/public/showcase/aegis/index.html:699
msgctxt "page:showcase/aegis/index.html"
msgid ""
"Verification runs extracted Java methods and the new demo. The Android APK "
"was inspected statically."
msgstr "검증은 추출 된 자바 메소드와 새로운 데모를 실행합니다. 안드로이드APK검열되었으로 합니다."
#: website/public/showcase/aegis/index.html:706
msgctxt "page:showcase/aegis/index.html"
msgid "Inspect the APK yourself"
msgstr "검사 APK 너 자신"
#. {ph0}: <a href="../../get-started/">
#. {ph1}: </a>
#: website/public/showcase/aegis/index.html:707
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}Set up REA{ph1} on macOS or Linux, then download these two files into "
"the same folder. On Windows, use a Linux environment such as WSL."
msgstr ""
"{ph0}설정 REA{ph1} 시작 macOS 또는 Linux 그런 다음 이 두 파일을 동일한 폴더에 다운로드합니다. 시작 "
"Windows,사용 Linux 같은 환경."
#. {ph0}: <code>JAVA_HOME</code>
#. {ph1}: <code>PATH</code>
#: website/public/showcase/aegis/index.html:712
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"Android analysis needs a full JDK 17 or later. Select it with {ph0} or "
"{ph1}. This case used JDK 21."
msgstr "안드로이드 분석은 전체 17 이상 필요합니다. 함께 선택 {ph0} 또는 {ph1}. 이 사건은 21 번을 사용했습니다."
#: website/public/showcase/aegis/index.html:728
msgctxt "page:showcase/aegis/index.html"
msgid "Point REA at the provider file and inspect the APK:"
msgstr "포인트 REA 공급자 파일에서 검사 APK:"
#: website/public/showcase/aegis/index.html:731
msgctxt "page:showcase/aegis/index.html"
msgid "macOS / Linux"
msgstr "macOS / Linux"
#. {ph0}: <code>REA_JADX_MCP_JAR</code>
#: website/public/showcase/aegis/index.html:745
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"Your agent can continue through REA's CLI using the prompt above. For MCP, "
"add {ph0} to the REA server's environment and reconnect it."
msgstr ""
"에이전트를 통해 계속할 수 있습니다 REA의 CLI 위의 프롬프트를 사용하여. 에 대한 MCP,추가 {ph0} 에 REA 서버의 환경을 "
"다시 연결합니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/showcase/aegis/index.html:750
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"A next question: {ph0}what happens when an account uses eight digits or a "
"different time interval?{ph1}"
msgstr "다음 질문: {ph0}계정이 8 자리 또는 다른 시간 간격을 사용할 때 어떤 일이 발생합니까?{ph1}"
#: website/public/showcase/aegis/index.html:760
msgctxt "page:showcase/aegis/index.html"
msgid "Sources"
msgstr "출처"
#. {ph0}: <a
#. href="https://github.com/beemdevelopment/Aegis/releases/tag/v3.4.3" >
#. {ph1}: </a >
#. {ph2}: <a
#. href="https://github.com/beemdevelopment/Aegis/tree/d6f4e5925a97e4e91593f1542085eae03432a759"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/beemdevelopment/Aegis/blob/d6f4e5925a97e4e91593f1542085eae03432a759/LICENSE"
#. >
#. {ph5}: </a >
#: website/public/showcase/aegis/index.html:762
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}Official Aegis 3.4.3 release{ph1} · {ph2}Matching source commit{ph3} · "
"{ph4}GPL-3.0 license{ph5}"
msgstr "{ph0}공식 Aegis 3.4.3 릴리스{ph1} · {ph2}일치하는 소스 커밋{ph3} · {ph4}라이센스{ph5}"
#. {ph0}: <a href="https://www.rfc-editor.org/rfc/rfc6238.html#appendix-B" >
#. {ph1}: </a >
#. {ph2}: <a href="test-vectors.json">
#. {ph3}: </a>
#: website/public/showcase/aegis/index.html:778
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid "{ph0}RFC 6238 reference cases{ph1} · {ph2}Demo test data{ph3}"
msgstr "{ph0}6238 참조 사례{ph1} · {ph2}데모 테스트 데이터{ph3}"
#: website/public/showcase/aegis/index.html:785
msgctxt "page:showcase/aegis/index.html"
msgid ""
"Inspected with REA 6.1.0 on 9 October 2026. Decompiled excerpts are credited"
" to Aegis; the diagram, readable summary and browser reconstruction are new "
"teaching material."
msgstr ""
"로 검열하는 REA 6.1.0 2026 년 10 월 9 일 분해된 부분들은 Aegis;다이어그램,읽을 수 있는 요약 및 브라우저 재구성은"
" 새로운 교육 자료입니다."
#: website/public/showcase/aegis/index.html:6
msgctxt "page:showcase/aegis/index.html"
msgid "Aegis APK Reverse Engineering: Login Codes — REA"
msgstr "Aegis APK 역공학 로그인 코드—REA"
#: website/public/showcase/aegis/index.html:7
msgctxt "page:showcase/aegis/index.html"
msgid ""
"Inspect the Aegis Android APK with REA, recover its six-digit login-code "
"calculation and try a reconstruction with an adjustable clock."
msgstr "검사Aegis안드로이드APK와REA,복 그 자리에 로그인 코드 계산 하고 재건을 가진 조정가능한 시계입니다."
#: website/public/showcase/aegis/index.html:245
msgctxt "page:showcase/aegis/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/showcase/aegis/index.html:256
msgctxt "page:showcase/aegis/index.html"
msgid "Aegis APK case study"
msgstr "AegisAPK사례 연구"
#: website/public/showcase/aegis/index.html:269
msgctxt "page:showcase/aegis/index.html"
msgid "Copy Aegis example prompt"
msgstr "복사 Aegis 프롬프트 예"
#: website/public/showcase/aegis/index.html:482
msgctxt "page:showcase/aegis/index.html"
msgid "Follow the login-code calculation"
msgstr "로그인 코드 계산을 따르십시오"
#: website/public/showcase/aegis/index.html:732
msgctxt "page:showcase/aegis/index.html"
msgid "Copy APK inspection command"
msgstr "복사APK명령 검사"
#: website/public/showcase/aegis/index.html:808
msgctxt "page:showcase/aegis/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/showcase/ctf/index.html:103
msgctxt "page:showcase/ctf/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/showcase/ctf/index.html:194
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}Home{ph1} / {ph2}Showcases{ph3} / CTF"
msgstr "{ph0}홈{ph1} / {ph2}쇼케이스{ph3} /"
#: website/public/showcase/ctf/index.html:197
msgctxt "page:showcase/ctf/index.html"
msgid "Case study · DownUnderCTF 2023"
msgstr "사례 연구*2023 년"
#. {ph0}: <br />
#: website/public/showcase/ctf/index.html:198
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "Find the flag in{ph0}a CTF binary."
msgstr "깃발 찾기{ph0}바이너리."
#. {ph0}: <code>Correct!</code>
#: website/public/showcase/ctf/index.html:199
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"Use REA to inspect a small flag checker, turn its rules into equations and "
"find an input that makes the original program print {ph0}."
msgstr "사용 REA 작은 플래그 검사기를 검사하려면 규칙을 방정식으로 바꾸고 원래 프로그램을 인쇄하는 입력을 찾으십시오 {ph0}."
#: website/public/showcase/ctf/index.html:204
msgctxt "page:showcase/ctf/index.html"
msgid "masked squares flag checker · Easy · Linux x86-64"
msgstr "크 사각형 국기 검사기·조명·Linuxx86-64"
#: website/public/showcase/ctf/index.html:207
msgctxt "page:showcase/ctf/index.html"
msgid "View the original challenge"
msgstr "원래 도전 보기"
#: website/public/showcase/ctf/index.html:215
msgctxt "page:showcase/ctf/index.html"
msgid "From a binary to a checked answer"
msgstr "바이너리에서 체크된 답으로"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/ctf/index.html:217
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}01 · Find the check{ph1}{ph2}Strings → checking functions{ph3}{ph4}REA "
"finds the prompt, its references and the code that accepts or rejects an "
"input.{ph5}"
msgstr ""
"{ph0}01*수표 찾기{ph1}{ph2}문자열에 대한 자세한 내용은 문자열에 대한 정보를 참조하십시오.{ph3}{ph4}REA "
"프롬프트,해당 참조 및 입력을 수락하거나 거부하는 코드를 찾습니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/ctf/index.html:225
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}02 · Extract the rules{ph1}{ph2}36 characters · 26 sums{ph3}{ph4}REA "
"returns the instructions and data behind each check. The agent turns them "
"into equations.{ph5}"
msgstr ""
"{ph0}02*규칙 추출{ph1}{ph2}36 자*26 합계{ph3}{ph4}REA 각 검사 뒤에 있는 지침과 데이터를 반환합니다. "
"에이전트는 그것들을 방정식으로 바꿉니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/ctf/index.html:233
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}03 · Solve and run{ph1}{ph2}Recovered flag → Correct!{ph3}{ph4}A Python"
" script solves the equations. REA captures the original program accepting "
"the result.{ph5}"
msgstr ""
"{ph0}03*해결 및 실행{ph1}{ph2}복구 된 플래그가 올바른지 확인하십시오!{ph3}{ph4}파이썬 스크립트는 방정식을 "
"해결합니다. REA 결과를 받아들이는 원래 프로그램을 캡처합니다.{ph5}"
#: website/public/showcase/ctf/index.html:242
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The challenge is by joseph, published in DownUnderCTF's official repository."
msgstr "이 도전은 조셉의 작품으로,다운더크의 공식 저장소에 출판되었습니다."
#: website/public/showcase/ctf/index.html:250
msgctxt "page:showcase/ctf/index.html"
msgid "In this case study"
msgstr "이 사례 연구에서"
#. {ph0}: <a href="#find">
#. {ph1}: </a>
#: website/public/showcase/ctf/index.html:252
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}Find the checking code{ph1}"
msgstr "{ph0}검사 코드 찾기{ph1}"
#. {ph0}: <a href="#mask">
#. {ph1}: </a>
#: website/public/showcase/ctf/index.html:253
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}Read one mask{ph1}"
msgstr "{ph0}하나의 마스크 읽기{ph1}"
#. {ph0}: <a href="#code">
#. {ph1}: </a>
#: website/public/showcase/ctf/index.html:254
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}Assembly to readable code{ph1}"
msgstr "{ph0}읽을 수있는 코드로 어셈블리{ph1}"
#. {ph0}: <a href="#solve">
#. {ph1}: </a>
#: website/public/showcase/ctf/index.html:255
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}Solve the equations{ph1}"
msgstr "{ph0}방정식 풀기{ph1}"
#. {ph0}: <a href="#verify">
#. {ph1}: </a>
#: website/public/showcase/ctf/index.html:256
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}Check the answer{ph1}"
msgstr "{ph0}답변 확인{ph1}"
#. {ph0}: <a href="#try">
#. {ph1}: </a>
#: website/public/showcase/ctf/index.html:257
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}Try it yourself{ph1}"
msgstr "{ph0}그것을 자신을 시도{ph1}"
#: website/public/showcase/ctf/index.html:262
msgctxt "page:showcase/ctf/index.html"
msgid "Find the checking code"
msgstr "검사 코드 찾기"
#. {ph0}: <code>Correct!</code>
#. {ph1}: <code>Incorrect!</code>
#: website/public/showcase/ctf/index.html:263
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The handout is a 15 KB executable. It asks for a flag, then prints {ph0} or "
"{ph1}. Start with a simple request to your agent."
msgstr ""
"유인물은 15 킬로바이트 실행 파일입니다. 그것은 깃발을 요구 한 다음 인쇄합니다 {ph0} 또는 {ph1}. 에이전트에 대한 간단한 "
"요청으로 시작하십시오."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/showcase/ctf/index.html:270
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/showcase/ctf/index.html:275
#: website/public/showcase/ctf/index.html:494
#: website/public/showcase/ctf/index.html:518
#: website/public/showcase/ctf/index.html:588
#: website/public/showcase/ctf/index.html:735
msgctxt "page:showcase/ctf/index.html"
msgid "Copy"
msgstr "복사"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="ctf-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/showcase/ctf/index.html:284
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to analyze ms_flag_checker and find the flag. "
"Explain how the checks work, then verify the answer with the original "
"program.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 그리고 플래그를 찾을 수 있습니다. 검사가 어떻게 작동하는지 설명 한 다음 원래 프로그램으로 "
"답을 확인하십시오.{ph3}{ph4}{ph5}"
#: website/public/showcase/ctf/index.html:293
msgctxt "page:showcase/ctf/index.html"
msgid ""
"An example prompt, with the downloaded challenge available locally and a "
"native analysis provider connected."
msgstr "다운로드 한 도전을 로컬에서 사용할 수 있고 기계 코드 프로그램 분석 제공자가 연결된 예제 프롬프트."
#: website/public/showcase/ctf/index.html:299
msgctxt "page:showcase/ctf/index.html"
msgid "Follow the input prompt to its function"
msgstr "입력 프롬프트를 따라 해당 기능을 수행합니다"
#: website/public/showcase/ctf/index.html:328
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The reference gives the agent a place to investigate, even though the "
"executable's original function names have been removed."
msgstr "이 참조는 실행 파일의 원래 함수 이름이 제거되었음에도 불구하고 에이전트에게 조사할 장소를 제공합니다."
#: website/public/showcase/ctf/index.html:335
msgctxt "page:showcase/ctf/index.html"
msgid "Read the checker and its two helpers"
msgstr "검사기 및 두 도우미 읽기"
#. {ph0}: <code>0x18</code>
#. {ph1}: <code>0x270</code>
#: website/public/showcase/ctf/index.html:363
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The first loop copies 36 character codes. The checking loop decodes a mask, "
"sums the selected codes and compares the result with a stored number. Its "
"{ph0}-byte steps across {ph1} bytes give 26 masks."
msgstr ""
"첫 번째 루프는 36 자 코드를 복사합니다. 검사 루프는 마스크를 해독하고 선택한 코드를 합산하고 결과를 저장된 번호와 비교합니다. "
"그것의 {ph0}-바이트 단계 {ph1} 바이트는 26 개의 마스크를 제공합니다."
#: website/public/showcase/ctf/index.html:371
msgctxt "page:showcase/ctf/index.html"
msgid ""
"These are selected results from a fresh REA analysis. The local target path "
"is shortened for display; addresses refer to REA's imported image."
msgstr ""
"이들은 신선한 결과에서 선택된 결과입니다. REA 분석. 로컬 대상 경로는 표시를 위해 단축됩니다.주소는 다음을 참조합니다. REA가져온"
" 이미지입니다."
#: website/public/showcase/ctf/index.html:379
msgctxt "page:showcase/ctf/index.html"
msgid "One check reveals one character"
msgstr "한 번 확인하면 한 명의 캐릭터가 나타납니다."
#: website/public/showcase/ctf/index.html:380
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The checker arranges the input in a 6×6 grid. A mask chooses which cells "
"contribute to a sum. Its compact encoding uses negative numbers to skip "
"cells and positive numbers to select them."
msgstr ""
"검사기는 6 개의 6 개의 격자로 입력을 배열합니다. 마스크는 어떤 세포가 합에 기여하는지 선택합니다. 그 콤팩트한 인코딩은 음수를 "
"사용하여 셀을 건너뛰고 양수를 사용하여 선택합니다."
#. {ph0}: <a href="../../assets/figures/ctf-mask-equation.svg" >
#. {ph1}: </a >
#: website/public/showcase/ctf/index.html:400
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "The seventh check selects just one position. {ph0}Open figure{ph1}."
msgstr "일곱 번째 검사는 하나의 위치를 선택합니다. {ph0}열린 그림{ph1}."
#: website/public/showcase/ctf/index.html:407
msgctxt "page:showcase/ctf/index.html"
msgid "Read the mask and its target from the binary"
msgstr "바이너리에서 마스크 및 대상 읽기"
#. {ph0}: <code>MOVSX</code>
#. {ph1}: <code>eb</code>
#. {ph2}: <code>code[21] = 55</code>
#. {ph3}: <code>7</code>
#: website/public/showcase/ctf/index.html:429
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The instruction {ph0} reads mask bytes as signed values. This is why {ph1} "
"means −21. The target is a little-endian integer. Together, these bytes tell"
" the agent that {ph2}, so that character is {ph3}."
msgstr ""
"지시 {ph0} 마스크 바이트를 부호있는 값으로 읽습니다. 이것이 바로 {ph1} -21 을 의미합니다. 목표는 작은 엔디안 정수입니다."
" 이 바이트는 에이전트에게 {ph2},그래서 그 캐릭터는 {ph3}."
#: website/public/showcase/ctf/index.html:438
msgctxt "page:showcase/ctf/index.html"
msgid "From instructions to a readable check"
msgstr "지시 사항부터 읽을 수 있는 검사까지"
#: website/public/showcase/ctf/index.html:439
msgctxt "page:showcase/ctf/index.html"
msgid ""
"Select a step to connect the summing helper and its caller to the same rule "
"in C."
msgstr "합산 도우미와 해당 호출 함수를 동일한 규칙에 연결하는 단계를 선택합니다."
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/ctf/index.html:449
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}01{ph1} Start"
msgstr "{ph0}01{ph1} 시작"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/ctf/index.html:457
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}02{ph1} Select"
msgstr "{ph0}02{ph1} 선택"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/ctf/index.html:465
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}03{ph1} Add"
msgstr "{ph0}03{ph1} 추가"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/ctf/index.html:473
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}04{ph1} Advance"
msgstr "{ph0}04{ph1} 사전"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/ctf/index.html:481
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}05{ph1} Compare"
msgstr "{ph0}05{ph1} 비교"
#: website/public/showcase/ctf/index.html:493
msgctxt "page:showcase/ctf/index.html"
msgid "REA · selected original instructions"
msgstr "REA·선택한 원래의 지침"
#: website/public/showcase/ctf/index.html:517
msgctxt "page:showcase/ctf/index.html"
msgid "Readable C · one-check summary"
msgstr "읽기 쉬운 씨*원 체크 요약"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>ECX</code>
#: website/public/showcase/ctf/index.html:546
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid "{ph0}01 · Start at zero.{ph1} {ph2} holds the running sum."
msgstr "{ph0}01*0 에서 시작합니다.{ph1} {ph2} 실행 금액을 보유합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/ctf/index.html:550
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}02 · Check the mask cell.{ph1} A zero value skips the character; a "
"nonzero value includes it."
msgstr "{ph0}02*마스크 셀을 확인합니다.{ph1} 0 값은 문자를 건너뛰고 0 이 아닌 값은 문자를 포함합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/ctf/index.html:554
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}03 · Add a character code.{ph1} The input's integer at the same offset "
"is added to the sum."
msgstr "{ph0}03*문자 코드를 추가합니다.{ph1} 같은 오프셋에 있는 입력의 정수가 합에 더해집니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/showcase/ctf/index.html:558
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}04 · Move to the next cell.{ph1} The original loop advances four bytes "
"per integer and visits six rows of six cells."
msgstr ""
"{ph0}04*다음 셀로 이동합니다.{ph1} 원래 루프는 정수당 4 바이트를 앞당기고 6 개의 셀의 6 개의 행을 방문합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>EAX</code>
#. {ph3}: <code>Incorrect!</code>
#: website/public/showcase/ctf/index.html:563
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}05 · Compare with the stored target.{ph1} The caller receives the sum "
"in {ph2}. A mismatch jumps to {ph3}."
msgstr "{ph0}05*저장된 대상과 비교.{ph1} 호출 함수는 {ph2}. 불일치가 {ph3}."
#: website/public/showcase/ctf/index.html:570
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The instructions come from the summing helper and its caller. The C is an "
"explanatory summary with descriptive names and a flattened 36-cell loop."
msgstr "지침은 합산 도우미 및 호출 함수에서 제공됩니다. 다 설명 요약 설명 이름과 평평한 36 셀 루프."
#: website/public/showcase/ctf/index.html:578
msgctxt "page:showcase/ctf/index.html"
msgid "Solve the 26 equations"
msgstr "26 방정식 풀기"
#: website/public/showcase/ctf/index.html:579
msgctxt "page:showcase/ctf/index.html"
msgid ""
"Most masks select several cells. For example, the first check adds 16 "
"character codes and requires a total of 1441. The overlapping selections "
"give equations that a small Python script can solve together."
msgstr ""
"대부분의 마스크는 여러 셀을 선택합니다. 예를 들어,첫 번째 검사는 16 개의 문자 코드를 추가하고 총 1441 개가 필요합니다. 겹치는"
" 선택은 작은 파이썬 스크립트가 함께 풀 수 있는 방정식을 제공합니다."
#: website/public/showcase/ctf/index.html:587
msgctxt "page:showcase/ctf/index.html"
msgid "Python · solver excerpt"
msgstr "파이썬*솔버 발췌"
#. {ph0}: <code>DUCTF{…}</code>
#: website/public/showcase/ctf/index.html:615
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"Z3 is a solver that finds values satisfying these equations. This excerpt "
"uses the extracted checks and assumes a {ph0} flag with letters, digits, "
"underscores and braces. The complete download includes all 26 masks and "
"targets."
msgstr ""
"지 3 이 방정식을 만족시키는 값을 찾는 솔버입니다. 이 발췌문은 추출 된 검사를 사용하고 다음을 가정합니다 {ph0} 문자,숫자,밑줄 "
"및 중괄호가있는 플래그. 전체 다운로드에는 26 개의 마스크와 타겟이 모두 포함되어 있습니다."
#: website/public/showcase/ctf/index.html:621
msgctxt "page:showcase/ctf/index.html"
msgid "Download the complete solver"
msgstr "전체 해결사 다운로드"
#: website/public/showcase/ctf/index.html:627
msgctxt "page:showcase/ctf/index.html"
msgid "Check the answer with the original program"
msgstr "원래 프로그램으로 답을 확인"
#. {ph0}: <code>z</code>
#. {ph1}: <code>y</code>
#: website/public/showcase/ctf/index.html:628
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"REA's process capture records the original executable accepting the solved "
"flag. Changing one selected character from {ph0} to {ph1} makes the first "
"sum 1440 instead of 1441, and the program rejects it."
msgstr ""
"REA'프로세스 캡처'는 해결된 플래그를 받아들이는 원래 실행 파일을 기록합니다. 에서 선택한 문자 하나를 변경 {ph0} 에 {ph1}"
" 첫 번째 합계를 만든다 1440 대신 1441,프로그램은 그것을 거부."
#: website/public/showcase/ctf/index.html:638
msgctxt "page:showcase/ctf/index.html"
msgid "Input"
msgstr "입력"
#: website/public/showcase/ctf/index.html:639
msgctxt "page:showcase/ctf/index.html"
msgid "Observed output"
msgstr "관찰된 산출"
#: website/public/showcase/ctf/index.html:640
msgctxt "page:showcase/ctf/index.html"
msgid "Exit code"
msgstr "종료 코드"
#: website/public/showcase/ctf/index.html:645
msgctxt "page:showcase/ctf/index.html"
msgid "Solver's flag"
msgstr "솔버의 깃발"
#: website/public/showcase/ctf/index.html:650
msgctxt "page:showcase/ctf/index.html"
msgid "One character changed"
msgstr "한 문자 변경"
#: website/public/showcase/ctf/index.html:658
msgctxt "page:showcase/ctf/index.html"
msgid "Show the recovered flag and captured output"
msgstr "복구된 플래그 및 캡처된 출력 표시"
#: website/public/showcase/ctf/index.html:661
msgctxt "page:showcase/ctf/index.html"
msgid "REA · original program output"
msgstr "REA·원래 출력 프로그램"
#: website/public/showcase/ctf/index.html:662
msgctxt "page:showcase/ctf/index.html"
msgid "Copy flag"
msgstr "플래그 복사"
#: website/public/showcase/ctf/index.html:674
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The recovered value also matches the flag in the organizers' published "
"challenge metadata, checked after solving the binary."
msgstr "복구된 값은 또한 조직자의 게시된 챌린지 메타데이터의 플래그와 일치하며,바이너리를 해결한 후 확인됩니다."
#: website/public/showcase/ctf/index.html:680
msgctxt "page:showcase/ctf/index.html"
msgid "Source, target identity and analysis details"
msgstr "출처,대상 신원 및 분석 세부 정보"
#: website/public/showcase/ctf/index.html:681
msgctxt "page:showcase/ctf/index.html"
msgid ""
"Fresh analysis and two process captures on 8 October 2026, using REA 4.1.0 "
"with Ghidra 12.1.4 on Linux x64. The binary is a stripped x86-64 ELF, 15,248"
" bytes."
msgstr ""
"신선한 분석 및 두 개의 프로세스를 캡처에서 8 월 2026 를 사용하여,REA4.1.0 와Ghidra12.1.4 에Linuxx64. "
"바이너리는 86-64 엘프,15,248 바이트입니다."
#: website/public/showcase/ctf/index.html:692
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The string references, functions and constants were inspected before reading"
" the organizers' source or solution. The Python solver and the diagram were "
"built from those REA results."
msgstr "문자열 참조,함수 및 상수는 조직자의 소스 또는 솔루션을 읽기 전에 검사되었습니다. 파이썬 솔버와 다이어그램은 REA 결과."
#. {ph0}: <a
#. href="https://github.com/DownUnderCTF/Challenges_2023_Public/blob/b48f83db2984bc7fa2ec7879a32d7efb1be8d333/rev/masked-
#. squares-flag-checker/src/ms_flag_checker.c" >
#. {ph1}: </a >
#. {ph2}: <a
#. href="https://github.com/DownUnderCTF/Challenges_2023_Public/blob/b48f83db2984bc7fa2ec7879a32d7efb1be8d333/rev/masked-
#. squares-flag-checker/ctfcli.yaml" >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/morluto/rea/blob/main/website/evidence/ctf-masked-
#. squares.md" >
#. {ph5}: </a >
#: website/public/showcase/ctf/index.html:697
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"{ph0}Compare with the organizers' source{ph1} · {ph2}Challenge metadata and "
"flag{ph3} · {ph4}REA evidence notes{ph5}"
msgstr ""
"{ph0}주최자의 출처와 비교{ph1} · {ph2}챌린지 메타데이터 및 플래그{ph3} · {ph4}REA 증거 노트{ph5}"
#: website/public/showcase/ctf/index.html:717
msgctxt "page:showcase/ctf/index.html"
msgid "Try it yourself"
msgstr "그것을 자신을 시도"
#: website/public/showcase/ctf/index.html:718
msgctxt "page:showcase/ctf/index.html"
msgid ""
"Download the original challenge and the solver into one folder. Use the "
"prompt above to investigate with your agent, or run the included script."
msgstr ""
"하나의 폴더에 원래의 도전과 솔버를 다운로드합니다. 위의 프롬프트를 사용하여 에이전트와 함께 조사하거나 포함된 스크립트를 실행합니다."
#: website/public/showcase/ctf/index.html:734
msgctxt "page:showcase/ctf/index.html"
msgid "Terminal · solve and run"
msgstr "터미널*해결 및 실행"
#. {ph0}: <code>z3-solver</code>
#: website/public/showcase/ctf/index.html:751
#, python-brace-format
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The script prints a candidate flag; paste it at the program's prompt. "
"Solving needs Python and {ph0}. Running the original executable needs Linux "
"x86-64."
msgstr ""
"이 스크립트는 후보 플래그를 인쇄;프로그램의 프롬프트에 붙여 넣습니다. 해결은 파이썬과 {ph0}. 원래 실행 파일 실행 필요 Linux"
" 86-64 번"
#: website/public/showcase/ctf/index.html:756
msgctxt "page:showcase/ctf/index.html"
msgid "Set up REA with your coding agent"
msgstr "설정 REA 코딩 에이전트와 함께"
#: website/public/showcase/ctf/index.html:6
msgctxt "page:showcase/ctf/index.html"
msgid "CTF Reverse Engineering: DownUnderCTF Flag Checker — REA"
msgstr "리버스 엔지니어링:다운 언더 코드 플래그 검사기 — REA"
#: website/public/showcase/ctf/index.html:7
msgctxt "page:showcase/ctf/index.html"
msgid ""
"Use REA to solve DownUnderCTF's masked squares flag checker. Find the "
"checking functions, extract the masks and compare a recovered flag with the "
"original program."
msgstr ""
"사용REA를 해결하 DownUnderCTF 마스크의 사각형 국기 검사기입니다. 검사 기능을 찾아 마스크를 추출하고 복구 된 플래그를 원래"
" 프로그램과 비교하십시오."
#: website/public/showcase/ctf/index.html:249
msgctxt "page:showcase/ctf/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/showcase/ctf/index.html:260
msgctxt "page:showcase/ctf/index.html"
msgid "CTF flag-checker case study"
msgstr "플래그 검사기 사례 연구"
#: website/public/showcase/ctf/index.html:275
msgctxt "page:showcase/ctf/index.html"
msgid "Copy CTF example prompt"
msgstr "예제 프롬프트 복사"
#: website/public/showcase/ctf/index.html:386
msgctxt "page:showcase/ctf/index.html"
msgid "CTF mask equation; scroll horizontally on smaller screens"
msgstr "작은 화면에서 가로로 스크롤"
#: website/public/showcase/ctf/index.html:392
msgctxt "page:showcase/ctf/index.html"
msgid ""
"The seventh mask skips 21 cells, selects position 21, then skips 14. Only "
"that cell contributes to the sum. Its required character code is 55, which "
"means the character is 7."
msgstr ""
"일곱 번째 마스크는 21 개의 셀을 건너 뛰고 위치 21 을 선택한 다음 14 를 건너 뜁니다. 그 셀만이 합에 기여합니다. 필요한 문자"
" 코드는 55 입니다.즉,문자는 7 입니다."
#: website/public/showcase/ctf/index.html:444
msgctxt "page:showcase/ctf/index.html"
msgid "Follow the CTF check"
msgstr "클릭률 확인을 따르십시오"
#: website/public/showcase/ctf/index.html:494
msgctxt "page:showcase/ctf/index.html"
msgid "Copy CTF assembly"
msgstr "어셈블리 복사"
#: website/public/showcase/ctf/index.html:518
msgctxt "page:showcase/ctf/index.html"
msgid "Copy readable CTF check"
msgstr "읽을 수 있는 클릭률 확인 복사"
#: website/public/showcase/ctf/index.html:588
msgctxt "page:showcase/ctf/index.html"
msgid "Copy CTF solver excerpt"
msgstr "복사 클릭률 솔버 발췌"
#: website/public/showcase/ctf/index.html:662
msgctxt "page:showcase/ctf/index.html"
msgid "Copy recovered flag"
msgstr "복구 된 플래그 복사"
#: website/public/showcase/ctf/index.html:735
msgctxt "page:showcase/ctf/index.html"
msgid "Copy CTF solver commands"
msgstr "명령 복사"
#: website/public/showcase/ctf/index.html:777
msgctxt "page:showcase/ctf/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/showcase/dx-ball/index.html:103
msgctxt "page:showcase/dx-ball/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/showcase/dx-ball/index.html:194
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}Home{ph1} / {ph2}Showcases{ph3} / DX-Ball"
msgstr "{ph0}홈{ph1} / {ph2}쇼케이스{ph3} / DX-Ball"
#: website/public/showcase/dx-ball/index.html:197
msgctxt "page:showcase/dx-ball/index.html"
msgid "Case study · DX-Ball 1.07"
msgstr "사례 연구·DX-Ball1.07"
#. {ph0}: <br />
#: website/public/showcase/dx-ball/index.html:198
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "Rebuilding DX-Ball{ph0}from its executable."
msgstr "재건 DX-Ball{ph0}실행 파일에서."
# Reviewed for concrete meaning, software terminology and readable sentences.
#: website/public/showcase/dx-ball/index.html:199
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The goal is a maintainable C version of the 1996 Windows game. REA helps the"
" agent inspect the original, one function at a time."
msgstr ""
"목표는 1996년에 나온 Windows 게임을 유지보수 가능한 C 코드로 재구성하는 것입니다. REA는 에이전트가 원본 함수를 하나씩 "
"분석하도록 돕습니다."
#: website/public/showcase/dx-ball/index.html:203
msgctxt "page:showcase/dx-ball/index.html"
msgid "Windows i386 · C · REA"
msgstr "Windowsi386·C·REA"
#. {ph0}: <a href="../../assets/figures/dx-ball-sound-pan-investigation.svg" >
#. {ph1}: </a >
#: website/public/showcase/dx-ball/index.html:220
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"One function, from executable to checked C. REA supplies the instructions, "
"callers and data reads; the reconstruction project implements and tests the "
"result. {ph0}Open figure{ph1}"
msgstr ""
"하나의 기능,실행 파일에서 확인 된 C. REA 지침,호출자 및 데이터 읽기를 제공하고 재구성 프로젝트는 결과를 구현하고 테스트합니다. "
"{ph0}열린 그림{ph1}"
#: website/public/showcase/dx-ball/index.html:231
msgctxt "page:showcase/dx-ball/index.html"
msgid "In this case study"
msgstr "이 사례 연구에서"
#. {ph0}: <a href="#progress">
#. {ph1}: </a>
#: website/public/showcase/dx-ball/index.html:233
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}The project{ph1}"
msgstr "{ph0}프로젝트{ph1}"
#. {ph0}: <a href="#sound-pan">
#. {ph1}: </a>
#: website/public/showcase/dx-ball/index.html:234
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}Sound pan{ph1}"
msgstr "{ph0}사운드 팬{ph1}"
#. {ph0}: <a href="#checking">
#. {ph1}: </a>
#: website/public/showcase/dx-ball/index.html:235
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}Checking the result{ph1}"
msgstr "{ph0}결과 확인{ph1}"
#. {ph0}: <a href="#continue">
#. {ph1}: </a>
#: website/public/showcase/dx-ball/index.html:236
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}Continue the work{ph1}"
msgstr "{ph0}작업을 계속{ph1}"
#: website/public/showcase/dx-ball/index.html:244
msgctxt "page:showcase/dx-ball/index.html"
msgid "maintained C functions"
msgstr "유지 된 기능"
#: website/public/showcase/dx-ball/index.html:248
msgctxt "page:showcase/dx-ball/index.html"
msgid "comparisons with original code"
msgstr "원본 코드와 비교"
#: website/public/showcase/dx-ball/index.html:252
msgctxt "page:showcase/dx-ball/index.html"
msgid "functions with matching compiled bytes"
msgstr "컴파일된 바이트가 일치하는 함수"
#. {ph0}: <a href="https://github.com/N0zoM1z0/dx-
#. ball/blob/a55dca27ec0a07018c1b2c95ae2be027f7d8c3c4/docs/PROGRESS.md" >
#. {ph1}: </a >
#. {ph2}: <a href="https://github.com/N0zoM1z0/dx-
#. ball/blob/a55dca27ec0a07018c1b2c95ae2be027f7d8c3c4/docs/ORACLES.md" >
#. {ph3}: </a >
#: website/public/showcase/dx-ball/index.html:255
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"Project checkpoint: 7 October 2026. {ph0}Progress ledger{ph1} · {ph2}Test "
"coverage{ph3}"
msgstr "프로젝트 체크 포인트:2026 년 10 월 7 일. {ph0}진행 원장{ph1} · {ph2}테스트 범위{ph3}"
#: website/public/showcase/dx-ball/index.html:267
msgctxt "page:showcase/dx-ball/index.html"
msgid "The project so far"
msgstr "지금까지의 프로젝트"
#: website/public/showcase/dx-ball/index.html:268
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The recovered code covers board and resource handling, brick hits, "
"animations, particles and bonus production. Current builds provide "
"inspection utilities and an analysis library. Work on the playable game "
"continues with ball and paddle physics, power-up handling and Windows "
"integration."
msgstr ""
"복구 된 코드는 보드 및 리소스 처리,벽돌 히트,애니메이션,입자 및 보너스 생산을 포함합니다. 현재 빌드는 검사 유틸리티와 분석 "
"라이브러리를 제공합니다. 재생 가능한 게임에 대한 작업은 공 및 패들 물리학,파워 업 처리 및 Windows 통합."
#: website/public/showcase/dx-ball/index.html:278
msgctxt "page:showcase/dx-ball/index.html"
msgid "Finding the sound-pan calculation"
msgstr "왼쪽/오른쪽 사운드 위치 계산 찾기"
#: website/public/showcase/dx-ball/index.html:279
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"When a brick is hit, its horizontal position is passed to the sound code. "
"The investigation needed to recover how that screen coordinate becomes a "
"left/right panning value."
msgstr ""
"벽돌이 부딪히면 수평 위치가 사운드 코드로 전달됩니다. 이 조사는 화면 좌표가 왼쪽/오른쪽 패닝 값이 되는 방법을 복구하는 데 "
"필요했습니다."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/showcase/dx-ball/index.html:286
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/showcase/dx-ball/index.html:290
#: website/public/showcase/dx-ball/index.html:481
#: website/public/showcase/dx-ball/index.html:502
#: website/public/showcase/dx-ball/index.html:573
#: website/public/showcase/dx-ball/index.html:727
msgctxt "page:showcase/dx-ball/index.html"
msgid "Copy"
msgstr "복사"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="dxball-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/showcase/dx-ball/index.html:299
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to find how DX-Ball calculates sound panning. "
"Explain the calculation and show the code.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 방법을 찾으려면 DX-Ball 사운드 패닝을 계산합니다. 계산을 설명하고 코드를 "
"보여줍니다.{ph3}{ph4}{ph5}"
#: website/public/showcase/dx-ball/index.html:307
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"An example prompt for your coding agent, with the local executable "
"available. The investigation below shows the REA queries and evidence behind"
" the answer."
msgstr "로컬 실행 파일을 사용할 수 있는 코딩 에이전트에 대한 예제 프롬프트입니다. 아래의 조사는 REA 답변 뒤에 쿼리 및 증거."
# Reviewed for concrete meaning, software terminology and readable sentences.
#: website/public/showcase/dx-ball/index.html:312
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The agent used REA to inspect the function, follow its brick-hit caller and "
"read the constants from the executable. Those results supplied the input and"
" arithmetic needed to write the C function below."
msgstr ""
"에이전트는 REA로 함수를 살펴보고, 벽돌 충돌 처리 함수가 이 함수를 어떻게 호출하는지 추적한 뒤 실행 파일의 상수를 읽었습니다. 이 "
"결과로 입력과 계산 방법을 확인하고 아래의 C 함수를 작성했습니다."
#. {ph0}: <code>0x406400</code>
#. {ph1}: <code>FUN_00406400(void)</code>
#. {ph2}: <code>__ftol()</code>
#: website/public/showcase/dx-ball/index.html:318
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The first function result for {ph0} included pseudocode declaring {ph1} and "
"calling {ph2}. Its instruction view showed a stack input and floating-point "
"operations. That discrepancy gave the agent a concrete reason to keep "
"investigating."
msgstr ""
"에 대한 함수의 첫 번째 분석 결과 {ph0} 포함 된 의사 코드 선언 {ph1} 그리고 전화 {ph2}. 명령어 뷰는 스택 입력과 부동"
" 소수점 연산을 보여주었습니다. 그 불일치로 인해 에이전트는 계속 조사해야 할 구체적인 이유를 얻었습니다."
#: website/public/showcase/dx-ball/index.html:326
msgctxt "page:showcase/dx-ball/index.html"
msgid "The first decompiler view"
msgstr "첫 번째 디 컴파일러 뷰"
#: website/public/showcase/dx-ball/index.html:339
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The output shows a conversion call. Reading the instructions below reveals "
"the input and the calculation feeding that call."
msgstr "출력은 전환 호출을 보여줍니다. 아래의 지침을 읽는 것은 입력 및 통화 공급 계산을 알 수있다."
#: website/public/showcase/dx-ball/index.html:345
msgctxt "page:showcase/dx-ball/index.html"
msgid "Three questions answered through REA"
msgstr "세 가지 질문에 대한 답변 REA"
#: website/public/showcase/dx-ball/index.html:348
msgctxt "page:showcase/dx-ball/index.html"
msgid "Recover the missing input"
msgstr "누락된 입력 복구"
#. {ph0}: <code>[EBP+8]</code>
#: website/public/showcase/dx-ball/index.html:365
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The function result includes instructions alongside pseudocode and callers. "
"Here, {ph0} exposes the integer input missing from the decompiler view."
msgstr ""
"함수 결과에는 의사 코드 및 호출 함수와 함께 명령어가 포함됩니다. 여기, {ph0} 디컴파일러 보기에서 누락된 정수 입력을 노출합니다."
#: website/public/showcase/dx-ball/index.html:372
msgctxt "page:showcase/dx-ball/index.html"
msgid "Follow the caller to understand the input"
msgstr "호출하는 함수를 따라 입력 내용을 파악합니다"
#. {ph0}: <code>tile_x</code>
#. {ph1}: <code>20 + 30 × tile_x</code>
#: website/public/showcase/dx-ball/index.html:389
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"REA identified this caller in the first result. Its preceding instructions "
"scale {ph0} by 30; adding 20 gives the brick's screen coordinate, {ph1}."
msgstr ""
"REA 첫 번째 결과에서 이 호출자를 식별했습니다. 이전 명령어 스케일 {ph0} 30 으로;20 을 더하면 벽돌의 화면 좌표가 "
"나옵니다, {ph1}."
#: website/public/showcase/dx-ball/index.html:396
msgctxt "page:showcase/dx-ball/index.html"
msgid "Read the values behind the memory addresses"
msgstr "메모리 주소 뒤에 있는 값 읽기"
#: website/public/showcase/dx-ball/index.html:417
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The returned bytes establish the two arithmetic constants and initial pan "
"scale. The agent now has the values needed for the C expression."
msgstr "반환된 바이트는 두 개의 산술 상수와 초기 팬 스케일을 설정합니다. 이제 에이전트에 필요한 값이 있습니다."
#: website/public/showcase/dx-ball/index.html:425
msgctxt "page:showcase/dx-ball/index.html"
msgid "From REA's findings to C"
msgstr "에서REA's 결과 C"
#: website/public/showcase/dx-ball/index.html:426
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"Follow the five steps below. Each selection highlights the original "
"instructions and the C lines they informed."
msgstr "아래의 다섯 단계를 따르십시오. 각 선택 항목은 원래 지침과 그들이 알려준 다 라인을 강조 표시합니다."
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/dx-ball/index.html:436
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}01{ph1} Input"
msgstr "{ph0}01{ph1} 입력"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/dx-ball/index.html:444
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}02{ph1} Multiply"
msgstr "{ph0}02{ph1} 곱하기"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/dx-ball/index.html:452
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}03{ph1} Subtract"
msgstr "{ph0}03{ph1} 빼기"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/dx-ball/index.html:460
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}04{ph1} Scale"
msgstr "{ph0}04{ph1} 규모"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/dx-ball/index.html:468
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}05{ph1} Return"
msgstr "{ph0}05{ph1} 반환"
#: website/public/showcase/dx-ball/index.html:480
msgctxt "page:showcase/dx-ball/index.html"
msgid "Original x86 · excerpt"
msgstr "원본 86*발췌"
#: website/public/showcase/dx-ball/index.html:501
msgctxt "page:showcase/dx-ball/index.html"
msgid "Reconstructed C"
msgstr "재구성된"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>[EBP+8]</code>
#. {ph3}: <code>FILD</code>
#. {ph4}: <code>x</code>
#: website/public/showcase/dx-ball/index.html:528
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}01 · Read the input.{ph1} The instruction view in REA's function result"
" reads {ph2} and uses {ph3} to load the integer. Following its caller "
"through REA establishes the screen-coordinate meaning of the C parameter "
"{ph4}."
msgstr ""
"{ph0}01*입력을 읽습니다.{ph1} 명령어 뷰 REA함수 결과는 {ph2} 그리고 용도 {ph3} 정수를 로드합니다. 호출자를 따라"
" REA 화면 좌표 의미 설정 다 매개 변수 {ph4}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>FMUL</code>
#. {ph3}: <code>0x420068</code>
#. {ph4}: <code>read_bytes</code>
#. {ph5}: <code>1.5625</code>
#: website/public/showcase/dx-ball/index.html:535
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}02 · Multiply by 1.5625.{ph1} {ph2} reads the double at {ph3}. The "
"bytes returned by REA's {ph4} decode to {ph5}; the C uses the same constant."
msgstr ""
"{ph0}02*1.5625 를 곱합니다.{ph1} {ph2} 더블을 읽습니다. {ph3}. 에 의해 반환 된 바이트 REA의 {ph4} "
"로 디코딩 {ph5};씨 같은 상수를 사용합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>FSUB</code>
#. {ph3}: <code>0x420070</code>
#. {ph4}: <code>500.0</code>
#. {ph5}: <code>320</code>
#: website/public/showcase/dx-ball/index.html:541
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}03 · Subtract 500.0.{ph1} {ph2} reads the double at {ph3}. REA's byte "
"result decodes to {ph4}, shifting the calculation's center to screen "
"coordinate {ph5}."
msgstr ""
"{ph0}03*500.0 을 뺍니다.{ph1} {ph2} 더블을 읽습니다. {ph3}. REA의 바이트 결과는 {ph4},계산의 중심을 "
"화면 좌표로 이동 {ph5}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>FMUL</code>
#. {ph3}: <code>0x4210a0</code>
#. {ph4}: <code>dxball_pan_scale</code>
#. {ph5}: <code>1.0</code>
#: website/public/showcase/dx-ball/index.html:547
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}04 · Apply the stored scale.{ph1} The second {ph2} reads {ph3}. That "
"global is named {ph4} in the maintained source. REA's second byte read "
"establishes its initial value of {ph5}."
msgstr ""
"{ph0}04*저장된 스케일을 적용합니다.{ph1} 두 번째 {ph2} 읽는다 {ph3}. 그 글로벌은 {ph4} 유지된 소스에서 "
"REA의 두 번째 바이트 읽기는 초기 값을 설정합니다 {ph5}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>0x406430</code>
#. {ph3}: <code>__ftol</code>
#. {ph4}: <code>DxBallInt</code>
#: website/public/showcase/dx-ball/index.html:554
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}05 · Return an integer.{ph1} The call at {ph2} reaches {ph3}, "
"identified in REA's callee results. The C casts the result to {ph4}; "
"original-x86 comparisons check the returned value."
msgstr ""
"{ph0}05*정수를 반환합니다.{ph1} 함수 호출 {ph2} 도달 {ph3},확인된 REA수신자 결과입니다. 결과는 다음과 같습니다 "
"{ph4};원본-86 비교 반환 된 값을 확인합니다."
#: website/public/showcase/dx-ball/index.html:563
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The assembly excerpt selects the input, arithmetic and return instructions. "
"The full listing below also includes the intervening stores and function "
"setup and cleanup."
msgstr ""
"어셈블리 발췌는 입력,산술 및 반환 지침을 선택합니다. 아래의 전체 목록에는 중간 저장소와 기능 설정 및 정리가 포함되어 있습니다."
#: website/public/showcase/dx-ball/index.html:569
msgctxt "page:showcase/dx-ball/index.html"
msgid "Full assembly and supporting evidence"
msgstr "전체 조립 및 지원 증거"
#: website/public/showcase/dx-ball/index.html:572
msgctxt "page:showcase/dx-ball/index.html"
msgid "REA result · 0x406400–0x40643e"
msgstr "REA결과·0x406400–0x40643e"
#: website/public/showcase/dx-ball/index.html:606
msgctxt "page:showcase/dx-ball/index.html"
msgid "What the caller supplies"
msgstr "호출하는 함수가 제공하는 것"
#. {ph0}: <code>0x411f40</code>
#: website/public/showcase/dx-ball/index.html:607
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The brick-hit function at {ph0} scales its tile coordinate by 30, adds 20, "
"then pushes it before the call:"
msgstr "브릭 히트 함수 {ph0} 타일 좌표의 크기를 30 으로 조정하고 20 을 추가 한 다음 호출 전에 푸시합니다:"
#: website/public/showcase/dx-ball/index.html:621
msgctxt "page:showcase/dx-ball/index.html"
msgid "What the data reads establish"
msgstr "데이터 읽기 설정"
#: website/public/showcase/dx-ball/index.html:624
msgctxt "page:showcase/dx-ball/index.html"
msgid "REA byte reads, decoded as little-endian doubles"
msgstr "REA바이트를 읽고,디코딩으로 little-endian 복식"
#: website/public/showcase/dx-ball/index.html:629
msgctxt "page:showcase/dx-ball/index.html"
msgid "Address"
msgstr "주소"
#: website/public/showcase/dx-ball/index.html:630
msgctxt "page:showcase/dx-ball/index.html"
msgid "Value"
msgstr "값"
#: website/public/showcase/dx-ball/index.html:631
msgctxt "page:showcase/dx-ball/index.html"
msgid "Used for"
msgstr "를 위해 사용하는"
#: website/public/showcase/dx-ball/index.html:638
msgctxt "page:showcase/dx-ball/index.html"
msgid "First multiplication"
msgstr "첫 번째 곱셈"
#: website/public/showcase/dx-ball/index.html:643
msgctxt "page:showcase/dx-ball/index.html"
msgid "Subtraction"
msgstr "빼기"
#. {ph0}: <code>1.0</code>
#: website/public/showcase/dx-ball/index.html:647
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0} initially"
msgstr "{ph0} 처음에는"
#: website/public/showcase/dx-ball/index.html:648
msgctxt "page:showcase/dx-ball/index.html"
msgid "Stored pan scale"
msgstr "저장된 팬 스케일"
#: website/public/showcase/dx-ball/index.html:653
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"Recorded with REA 4.1.0 for the hash-pinned DX-Ball 1.07 target. The linked "
"investigation notes retain the Evidence IDs."
msgstr "녹음된 REA 4.1.0 해시 고정 DX-Ball 1.07 목표. 관련 조사 메모에는 증거 신분증이 남아 있습니다."
#. {ph0}: <a href="https://github.com/N0zoM1z0/dx-
#. ball/blob/a55dca27ec0a07018c1b2c95ae2be027f7d8c3c4/src/gameplay.c#L41" >
#. {ph1}: </a >
#. {ph2}: <a href="https://github.com/N0zoM1z0/dx-
#. ball/blob/a55dca27ec0a07018c1b2c95ae2be027f7d8c3c4/docs/GAMEPLAY_OWNER.md"
#. >
#. {ph3}: </a >
#: website/public/showcase/dx-ball/index.html:658
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}Maintained source{ph1} · {ph2}Investigation notes and evidence "
"references{ph3}"
msgstr "{ph0}유지 소스{ph1} · {ph2}조사 노트 및 증거 참조{ph3}"
#: website/public/showcase/dx-ball/index.html:672
msgctxt "page:showcase/dx-ball/index.html"
msgid "Checking the recovered function"
msgstr "복구 된 기능 확인"
#: website/public/showcase/dx-ball/index.html:673
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The recovered function passes two checks: its return values match the "
"original, and its compiled bytes match the executable."
msgstr "복구된 함수는 두 가지 검사를 통과합니다.반환 값은 원본과 일치하고 컴파일된 바이트는 실행 파일과 일치합니다."
#: website/public/showcase/dx-ball/index.html:679
msgctxt "page:showcase/dx-ball/index.html"
msgid "3,205 behavior cases"
msgstr "3,205 행동 사례"
#: website/public/showcase/dx-ball/index.html:680
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The tests execute the original x86 function and compare its return value "
"with the maintained C. They cover every integer position from 0 to 640 at "
"five pan scales: 0, 0.5, 1, 20 and −1."
msgstr "0,0.5,1,20 및 -1:그들은 다섯 팬 스케일에서 0 에서 640 까지의 모든 정수 위치를 커버합니다."
#: website/public/showcase/dx-ball/index.html:688
msgctxt "page:showcase/dx-ball/index.html"
msgid "63 matching bytes"
msgstr "63 일치하는 바이트"
#: website/public/showcase/dx-ball/index.html:689
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The C function is compiled with the pinned VC4.0 toolchain. Compiler replay "
"matches the complete function after applying the reviewed relocations and "
"checking the referenced constants."
msgstr ""
"이 함수는 고정 된 툴체인을 사용하여 컴파일됩니다. 컴파일러 재생은 검토된 재배치를 적용하고 참조된 상수를 확인한 후 전체 함수와 "
"일치합니다."
#: website/public/showcase/dx-ball/index.html:697
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"At a scale of 1, the recovered calculation returns −500 at the left edge, 0 "
"at the center and 500 at the right edge. The next part of the audio work is "
"integrating that value with the game's sound backend."
msgstr ""
"1 의 척도에서 복구된 계산은 왼쪽 가장자리에서-500,중앙에서 0,오른쪽 가장자리에서 500 을 반환합니다. 오디오 작업의 다음 부분은"
" 그 값을 게임의 사운드 백엔드와 통합하는 것입니다."
#. {ph0}: <a href="https://github.com/N0zoM1z0/dx-
#. ball/blob/a55dca27ec0a07018c1b2c95ae2be027f7d8c3c4/docs/BUILD_MATCHING.md"
#. >
#. {ph1}: </a >
#: website/public/showcase/dx-ball/index.html:703
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "{ph0}Read the compiler replay details{ph1}"
msgstr "{ph0}컴파일러 재생 세부 정보 읽기{ph1}"
#: website/public/showcase/dx-ball/index.html:712
msgctxt "page:showcase/dx-ball/index.html"
msgid "Continue the investigation"
msgstr "조사 계속"
#: website/public/showcase/dx-ball/index.html:713
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"The same approach is being used for particle updates, explosion queues and "
"bonus generation: inspect the relevant functions, recover their state and "
"dependencies, then compare the implementation with the original."
msgstr ""
"입자 업데이트,폭발 대기열 및 보너스 생성에도 동일한 접근법이 사용되고 있습니다.관련 기능을 검사하고,상태와 의존성을 복구한 다음,구현을"
" 원본과 비교합니다."
#: website/public/showcase/dx-ball/index.html:719
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"To inspect the sound-pan function yourself, follow the DX-Ball project's "
"setup instructions and supply its matching original target. Then run:"
msgstr ""
"사운드 팬 기능을 직접 검사하려면 다음을 수행하십시오 DX-Ball 프로젝트의 설치 지침 및 일치하는 원래 대상을 제공합니다. 그런 다음"
" 실행:"
#: website/public/showcase/dx-ball/index.html:726
msgctxt "page:showcase/dx-ball/index.html"
msgid "In the DX-Ball checkout"
msgstr "에DX-Ball체크아웃"
#. {ph0}: <a href="https://github.com/N0zoM1z0/dx-ball" >
#. {ph1}: </a >
#. {ph2}: <span>
#. {ph3}: </span>
#: website/public/showcase/dx-ball/index.html:740
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}DX-Ball repository{ph1}{ph2}Current source, progress and local "
"setup.{ph3}"
msgstr "{ph0}DX-Ball 저장소{ph1}{ph2}현재 소스,진행 및 로컬 설정.{ph3}"
#. {ph0}: <a href="../../guides/native/">
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/showcase/dx-ball/index.html:745
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}REA analysis workflow{ph1}{ph2}Follow the calculation, then use the "
"same approach with your own binary.{ph3}"
msgstr ""
"{ph0}REA 분석 워크플로우{ph1}{ph2}계산을 수행 한 다음 자신의 바이너리와 동일한 접근 방식을 사용하십시오.{ph3}"
#. {ph0}: <a href="https://github.com/N0zoM1z0/dx-
#. ball/blob/a55dca27ec0a07018c1b2c95ae2be027f7d8c3c4/docs/ENTITIES_OWNER.md"
#. >
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/showcase/dx-ball/index.html:752
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"{ph0}Particles and bonus production{ph1}{ph2}A larger investigation into "
"state, queues and pixel writes.{ph3}"
msgstr "{ph0}입자 및 보너스 생산{ph1}{ph2}상태,큐 및 픽셀 쓰기에 대한 더 큰 조사.{ph3}"
#: website/public/showcase/dx-ball/index.html:6
msgctxt "page:showcase/dx-ball/index.html"
msgid "DX-Ball Reverse Engineering: Sound Panning — REA"
msgstr "DX-Ball리버스 엔지니어링:음 패닝—REA"
#: website/public/showcase/dx-ball/index.html:7
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"Follow a DX-Ball reconstruction from binary analysis through REA to "
"maintained C, original-x86 tests and matching compiled function bytes."
msgstr "따라 DX-Ball 재건에서 바이너리 분석을 통해 REA 을 유지되 C,원래-86 테스트와 일치하는 컴파일된 기능이다."
#: website/public/showcase/dx-ball/index.html:206
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"DX-Ball sound-pan investigation; scroll horizontally on smaller screens"
msgstr "DX-Ball 사운드 팬 조사;작은 화면에서 수평으로 스크롤"
#: website/public/showcase/dx-ball/index.html:212
msgctxt "page:showcase/dx-ball/index.html"
msgid ""
"DXBALL.EXE function 0x00406400 is inspected with REA. A brick-hit caller "
"supplies 20 plus 30 times tile_x. Instructions load x, multiply by 1.5625, "
"subtract 500.0, apply pan_scale and return an integer. The maintained C is "
"checked independently against the original x86 in 3,205 cases and by VC4.0 "
"compiler replay matching 63 bytes."
msgstr ""
"딕스볼EXE 기능 0x00406400 검사와REA. 명령어 로드 엑스,1.5625 곱하기,500.0 빼기,팬 스케일을 적용하고 정수를 "
"반환합니다. 3,205 개의 경우에서 63 바이트와 일치하는 4.0 컴파일러 재생에 의해 원본 86 에 대해 독립적으로 검사됩니다."
#: website/public/showcase/dx-ball/index.html:230
msgctxt "page:showcase/dx-ball/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/showcase/dx-ball/index.html:239
msgctxt "page:showcase/dx-ball/index.html"
msgid "DX-Ball reconstruction case study"
msgstr "DX-Ball재건축 사례 연구"
#: website/public/showcase/dx-ball/index.html:290
msgctxt "page:showcase/dx-ball/index.html"
msgid "Copy example prompt"
msgstr "예제 프롬프트 복사"
#: website/public/showcase/dx-ball/index.html:431
msgctxt "page:showcase/dx-ball/index.html"
msgid "Follow the sound-pan calculation"
msgstr "왼쪽/오른쪽 사운드 위치의 계산을 따르십시오"
#: website/public/showcase/dx-ball/index.html:481
msgctxt "page:showcase/dx-ball/index.html"
msgid "Copy original assembly excerpt"
msgstr "원본 어셈블리 발췌문 복사"
#: website/public/showcase/dx-ball/index.html:502
msgctxt "page:showcase/dx-ball/index.html"
msgid "Copy sound-pan function"
msgstr "복사 사운드 팬 기능"
#: website/public/showcase/dx-ball/index.html:573
msgctxt "page:showcase/dx-ball/index.html"
msgid "Copy complete sound-pan assembly"
msgstr "복사 전체 사운드 팬 어셈블리"
#: website/public/showcase/dx-ball/index.html:727
msgctxt "page:showcase/dx-ball/index.html"
msgid "Copy DX-Ball analysis command"
msgstr "복사DX-Ball분석 명령"
#: website/public/showcase/dx-ball/index.html:785
msgctxt "page:showcase/dx-ball/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/showcase/index.html:103
msgctxt "page:showcase/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../">
#. {ph1}: </a>
#: website/public/showcase/index.html:194
#, python-brace-format
msgctxt "page:showcase/index.html"
msgid "{ph0}Home{ph1} / Showcases"
msgstr "{ph0}홈{ph1} /쇼케이스"
#: website/public/showcase/index.html:195
msgctxt "page:showcase/index.html"
msgid "REA case studies."
msgstr "REA 사례 연구."
#: website/public/showcase/index.html:196
msgctxt "page:showcase/index.html"
msgid ""
"Android, games, Electron and a CTF challenge, with code, figures and checked"
" results."
msgstr "안드로이드,게임,Electron및 CTF 도전으로,코드,그림 및 검사 결과입니다."
#: website/public/showcase/index.html:203
msgctxt "page:showcase/index.html"
msgid "Android · APK analysis"
msgstr "안드로이드·APK분석"
#: website/public/showcase/index.html:205
msgctxt "page:showcase/index.html"
msgid "How an authenticator generates a login code"
msgstr "인증자가 로그인 코드를 생성하는 방법"
#: website/public/showcase/index.html:206
msgctxt "page:showcase/index.html"
msgid ""
"Find Aegis's six-digit code calculation in its released APK. Trace the "
"generating methods with REA, then move a demo clock to see why the code "
"changes every 30 seconds."
msgstr ""
"찾기 Aegis6 자리 코드 계산은 APK. 생성 방법을 추적 REA,다음 코드가 30 초마다 변경 이유를 확인하기 위해 데모 시계를 "
"이동합니다."
#: website/public/showcase/index.html:217
msgctxt "page:showcase/index.html"
msgid "Read the Android case study"
msgstr "안드로이드 사례 연구 읽기"
#: website/public/showcase/index.html:221
msgctxt "page:showcase/index.html"
msgid "CTF · Native analysis"
msgstr "기계 코드 프로그램 분석"
#: website/public/showcase/index.html:223
msgctxt "page:showcase/index.html"
msgid "Solve a CTF flag checker"
msgstr "플래그 검사기 해결"
#: website/public/showcase/index.html:224
msgctxt "page:showcase/index.html"
msgid ""
"Inspect an easy DownUnderCTF challenge with REA. Find its checking "
"functions, turn masks and sums into equations, then verify the solved flag "
"with the original program."
msgstr ""
"쉬운 다운 언더크트 도전을 검사합니다. REA. 그 검사 기능을 찾아 방정식으로 마스크와 합계를 설정 한 다음 원래 프로그램으로 해결 "
"플래그를 확인합니다."
#: website/public/showcase/index.html:235
msgctxt "page:showcase/index.html"
msgid "Read the CTF case study"
msgstr "공정거래위원회 사례 연구 읽기"
#: website/public/showcase/index.html:239
msgctxt "page:showcase/index.html"
msgid "Native · Reconstruction"
msgstr "기본*재건"
#: website/public/showcase/index.html:241
msgctxt "page:showcase/index.html"
msgid "DX-Ball's sound-pan calculation"
msgstr "DX-Ball's 운 팬 계산"
#: website/public/showcase/index.html:242
msgctxt "page:showcase/index.html"
msgid ""
"Recover a sound-pan calculation from a 1996 Windows game. REA's "
"instructions, caller references and numeric constants lead to a small C "
"function, checked against the original behavior and all 63 compiled bytes."
msgstr ""
"1996 년 사운드 팬 계산 복구 Windows 게임. REA명령어,호출자 참조,숫자 상수는 작은 함수로 이어집니다.원래의 동작과 63 "
"개의 컴파일된 바이트에 대해 확인됩니다."
#: website/public/showcase/index.html:254
msgctxt "page:showcase/index.html"
msgid "Read the DX-Ball case study"
msgstr "읽DX-Ball사례 연구"
#: website/public/showcase/index.html:258
msgctxt "page:showcase/index.html"
msgid "Electron · Feature tracing"
msgstr "Electron·기능 추적"
#: website/public/showcase/index.html:260
msgctxt "page:showcase/index.html"
msgid "How Notion copies text and HTML"
msgstr "어떻게 Notion 텍스트 복사"
#: website/public/showcase/index.html:261
msgctxt "page:showcase/index.html"
msgid ""
"Trace a page-facing API through Notion's packaged JavaScript. Follow its IPC"
" wrappers to the system clipboard, then see how a small HTML marker keeps "
"rich block data connected to a copy."
msgstr ""
"추적 페이지의 API 를 통해Notion's 패키지JavaScript. 시스템 클립 보드에 래퍼를 따라 다음 작은 마커가 복사본에 연결된"
" 풍부한 블록 데이터를 유지하는 방법을 참조하십시오."
#: website/public/showcase/index.html:272
msgctxt "page:showcase/index.html"
msgid "Read the Notion case study"
msgstr "읽Notion사례 연구"
#: website/public/showcase/index.html:276
msgctxt "page:showcase/index.html"
msgid "PC-98 DOS · Reconstruction"
msgstr "PC-98DOS·재건"
#: website/public/showcase/index.html:278
msgctxt "page:showcase/index.html"
msgid "How TH04 aims a ring of bullets"
msgstr "어떻게 TH04 총알의 반지를 목표로"
#: website/public/showcase/index.html:279
msgctxt "page:showcase/index.html"
msgid ""
"Inspect the original 16-bit angle helper with REA. Match its multiply, "
"divide and coordinate operations to readable C++, then see how they produce "
"a ring aimed at the player."
msgstr ""
"원래 16 비트 각도 도우미를 검사하십시오. REA. 그 곱하기,나누기 및 좌표 연산을 읽을 수있는 C++에 일치시킨 다음 플레이어를 "
"겨냥한 링을 어떻게 생성하는지 확인하십시오."
#: website/public/showcase/index.html:290
msgctxt "page:showcase/index.html"
msgid "Read the TH04 case study"
msgstr "읽TH04사례 연구"
#: website/public/showcase/index.html:295
msgctxt "page:showcase/index.html"
msgid "Step-by-step guides"
msgstr "단계별 가이드"
#: website/public/showcase/index.html:296
msgctxt "page:showcase/index.html"
msgid ""
"The guides walk through a native calculation, an Electron export and a "
"browser request. Each starts with a prompt and a concrete target."
msgstr "가이드는 기본 계산을 통해 Electron 내보내기 및 브라우저 요청. 각 프롬프트와 구체적인 대상으로 시작합니다."
#: website/public/showcase/index.html:300
msgctxt "page:showcase/index.html"
msgid "Read the guides"
msgstr "가이드 읽기"
#: website/public/showcase/index.html:6
msgctxt "page:showcase/index.html"
msgid "Reverse Engineering Case Studies — REA"
msgstr "리버스 엔지니어링 사례 연구—REA"
#: website/public/showcase/index.html:7
msgctxt "page:showcase/index.html"
msgid ""
"Follow REA investigations through code, figures and demos: an Android "
"authenticator, DX-Ball, Notion, TH04 and a DownUnderCTF flag checker."
msgstr ""
"팔로우 REA 코드,그림 및 데모를 통한 조사:안드로이드 인증 자, DX-Ball, Notion, TH04 그리고 하향식 플래그 검사기."
#: website/public/showcase/index.html:317
msgctxt "page:showcase/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/showcase/notion/index.html:103
msgctxt "page:showcase/notion/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/showcase/notion/index.html:194
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "{ph0}Home{ph1} / {ph2}Showcases{ph3} / Notion"
msgstr "{ph0}홈{ph1} / {ph2}쇼케이스{ph3} / Notion"
#: website/public/showcase/notion/index.html:197
msgctxt "page:showcase/notion/index.html"
msgid "Case study · Electron"
msgstr "사례 연구·Electron"
#. {ph0}: <br />
#: website/public/showcase/notion/index.html:198
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "How Notion copies{ph0}text and HTML."
msgstr "어떻게 Notion 사본{ph0}텍스트."
#: website/public/showcase/notion/index.html:199
msgctxt "page:showcase/notion/index.html"
msgid ""
"Trace a clipboard call from Notion's page API, through the preload and main "
"process, to Electron's clipboard writer."
msgstr "클립보드 호출 추적 Notion사전 로드 및 주요 프로세스를 통해 Electron클립보드 작가입니다."
#: website/public/showcase/notion/index.html:203
msgctxt "page:showcase/notion/index.html"
msgid "Notion Desktop 7.6.1 · JavaScript · REA"
msgstr "Notion데스크탑 7.6.1·JavaScript·REA"
#: website/public/showcase/notion/index.html:207
msgctxt "page:showcase/notion/index.html"
msgid "The bridge inside Notion's desktop package"
msgstr "다리 내부에Notion's 패키지 데스크톱"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span>
#. {ph2}: <span class="flow-node">
#. {ph3}: <code>clipboard.write(data)</code>
#. {ph4}: </span>
#. {ph5}: <span class="flow-note" >
#. {ph6}: </span >
#: website/public/showcase/notion/index.html:209
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"{ph0}01 · Page-facing API{ph1} {ph2}{ph3}{ph4} {ph5}The preload exposes a "
"callable method.{ph6}"
msgstr ""
"{ph0}01*페이지 대면{ph1} {ph2}{ph3}{ph4} {ph5}사전 로드는 호출 가능한 메서드를 노출합니다.{ph6}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span>
#. {ph2}: <span class="flow-node">
#. {ph3}: <code>ipcRenderer.invoke</code>
#. {ph4}: </span>
#. {ph5}: <span class="flow-note" >
#. {ph6}: </span >
#: website/public/showcase/notion/index.html:216
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"{ph0}02 · Preload wrapper{ph1} {ph2}{ph3}{ph4} {ph5}The wrapper sends the "
"channel and arguments.{ph6}"
msgstr "{ph0}02*예압 래퍼{ph1} {ph2}{ph3}{ph4} {ph5}래퍼는 채널 및 인수를 보냅니다.{ph6}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span>
#. {ph2}: <span class="flow-node">
#. {ph3}: <code>ipcMain.handle</code>
#. {ph4}: </span>
#. {ph5}: <span class="flow-note" >
#. {ph6}: </span >
#: website/public/showcase/notion/index.html:223
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"{ph0}03 · Main-process handler{ph1} {ph2}{ph3}{ph4} {ph5}The receiver checks"
" which page sent it.{ph6}"
msgstr ""
"{ph0}03*메인 프로세스 핸들러{ph1} {ph2}{ph3}{ph4} {ph5}수신자는 어떤 페이지를 보냈는지 확인합니다.{ph6}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span>
#. {ph2}: <span class="flow-node">
#. {ph3}: <code>clipboard.write(data)</code>
#. {ph4}: </span>
#. {ph5}: <span class="flow-note" >
#. {ph6}: </span >
#: website/public/showcase/notion/index.html:230
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"{ph0}04 · System clipboard{ph1} {ph2}{ph3}{ph4} {ph5}Electron writes the "
"supplied text and HTML.{ph6}"
msgstr ""
"{ph0}04*시스템 클립 보드{ph1} {ph2}{ph3}{ph4} {ph5}Electron 제공된 텍스트를 씁니다.{ph6}"
#. {ph0}: <code class="notion-channel">notion:clipboard:write</code>
#: website/public/showcase/notion/index.html:238
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "One channel joins the two sides: {ph0}"
msgstr "한 채널이 양쪽을 연결합니다: {ph0}"
#: website/public/showcase/notion/index.html:242
msgctxt "page:showcase/notion/index.html"
msgid ""
"The packaged code uses the same channel in the preload and main process. "
"Resolving the wrappers reveals the Electron calls behind those names."
msgstr ""
"패키지 코드는 사전 로드 및 기본 프로세스에서 동일한 채널을 사용합니다. 래퍼를 해결하면 Electron 그 이름 뒤에 함수 호출."
#: website/public/showcase/notion/index.html:251
msgctxt "page:showcase/notion/index.html"
msgid "In this case study"
msgstr "이 사례 연구에서"
#. {ph0}: <a href="#clipboard">
#. {ph1}: </a>
#: website/public/showcase/notion/index.html:253
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "{ph0}Follow the clipboard bridge{ph1}"
msgstr "{ph0}클립보드 브리지 따르기{ph1}"
#. {ph0}: <a href="#rich-clipboard">
#. {ph1}: </a>
#: website/public/showcase/notion/index.html:254
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "{ph0}Keeping a block's structure{ph1}"
msgstr "{ph0}블록 구조 유지{ph1}"
#. {ph0}: <a href="#continue">
#. {ph1}: </a>
#: website/public/showcase/notion/index.html:255
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "{ph0}More examples and sources{ph1}"
msgstr "{ph0}더 많은 예와 출처{ph1}"
#: website/public/showcase/notion/index.html:260
msgctxt "page:showcase/notion/index.html"
msgid "Where does the copy operation go?"
msgstr "복사 작업은 어디로 갑니까?"
#. {ph0}: <code>clipboard.write</code>
#: website/public/showcase/notion/index.html:261
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"The page sees a method called {ph0}. Its implementation in the preload is a "
"wrapper. The useful question is what that wrapper sends, and which code "
"receives it."
msgstr ""
"이 페이지에는 다음과 같은 메서드가 표시됩니다 {ph0}. 사전 로드에서의 구현은 래퍼입니다. 유용한 질문은 그 래퍼가 무엇을 보내고 "
"어떤 코드가 그것을 받는지입니다."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/showcase/notion/index.html:268
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/showcase/notion/index.html:272
#: website/public/showcase/notion/index.html:345
#: website/public/showcase/notion/index.html:374
#: website/public/showcase/notion/index.html:405
#: website/public/showcase/notion/index.html:433
msgctxt "page:showcase/notion/index.html"
msgid "Copy"
msgstr "복사"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="notion-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/showcase/notion/index.html:281
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to trace how Notion copies text and HTML to the "
"system clipboard. Show the code at each step.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 추적 방법 Notion 시스템 클립보드에 텍스트를 복사합니다. 각 단계에서 코드를 "
"표시합니다.{ph3}{ph4}{ph5}"
#: website/public/showcase/notion/index.html:289
msgctxt "page:showcase/notion/index.html"
msgid ""
"An example prompt with Notion's local application package available to your "
"coding agent."
msgstr "다음과 같은 예제 프롬프트 Notion코딩 에이전트가 사용할 수있는 로컬 응용 프로그램 패키지입니다."
#: website/public/showcase/notion/index.html:294
msgctxt "page:showcase/notion/index.html"
msgid "REA finds where to start reading"
msgstr "REA 읽기 시작 위치 찾기"
#: website/public/showcase/notion/index.html:295
msgctxt "page:showcase/notion/index.html"
msgid ""
"Analyzing the tab preload with REA locates the API exposed to the page and "
"the call that sends an IPC request. Both findings come with source ranges in"
" the minified bundle:"
msgstr ""
"탭 사전 로드 분석 REA 페이지 및 요청을 보내는 호출을 찾습니다. 두 결과 모두 축소 된 번들의 소스 범위와 함께 제공됩니다:"
#: website/public/showcase/notion/index.html:301
msgctxt "page:showcase/notion/index.html"
msgid "REA findings → two places to open"
msgstr "REA 연구 결과→두 가지 장소를 오픈"
#. {ph0}: <code>analyze_javascript_application</code>
#: website/public/showcase/notion/index.html:316
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"Selected fields from a fresh {ph0} result on Notion's tab preload, recorded "
"with REA 4.1.0. Positions use the original bundle's line and zero-based "
"column."
msgstr ""
"새 필드에서 선택한 필드 {ph0} 에 결과 Notion의 탭 사전 로드, REA 4.1.0. 위치는 원래 번들의 선과 0 기반 열을 "
"사용합니다."
#. {ph0}: <code>invokerInMain</code>
#. {ph1}: <code class="notion-channel">notion:clipboard:write</code>
#: website/public/showcase/notion/index.html:323
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"The agent opens those locations, finds the clipboard member in the assembled"
" API, and reads {ph0}. Its call site supplies {ph1}. That name gives the "
"agent something precise to look for in the main bundle. The four excerpts "
"below show the route it connects."
msgstr ""
"에이전트는 이러한 위치를 열고 어셈블리에서 클립보드 멤버를 찾아 읽습니다 {ph0}. 그것의 외침 위치 공급 {ph1}. 그 이름은 "
"에이전트에게 주요 번들에서 찾을 수 있는 정확한 것을 제공합니다. 아래 네 부분 은 그 길 이 연결 되는 길 을 보여 준다."
#: website/public/showcase/notion/index.html:332
msgctxt "page:showcase/notion/index.html"
msgid "Four short pieces of code"
msgstr "네 개의 짧은 코드 조각"
#: website/public/showcase/notion/index.html:333
msgctxt "page:showcase/notion/index.html"
msgid ""
"Simplified from the packaged JavaScript, with readable variable names. "
"Unrelated members are omitted."
msgstr "패키지에서 단순화 JavaScript,읽을 수 있는 변수 이름. 관련 없는 멤버는 생략됩니다."
#: website/public/showcase/notion/index.html:339
msgctxt "page:showcase/notion/index.html"
msgid "Start at the API exposed to the page"
msgstr "페이지에 노출된"
#. {ph0}: <code>invokerInMain</code>
#: website/public/showcase/notion/index.html:361
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"This member supplies the channel name. The implementation of {ph0} tells us "
"how the request leaves the page's process."
msgstr "이 멤버는 채널 이름을 제공합니다. 의 구현 {ph0} 요청이 페이지의 프로세스를 종료하는 방법을 알려줍니다."
#: website/public/showcase/notion/index.html:368
msgctxt "page:showcase/notion/index.html"
msgid "Resolve the preload's wrapper"
msgstr "사전 로드의 래퍼 해결"
#. {ph0}: <code class="notion-channel">notion:clipboard:write</code>
#: website/public/showcase/notion/index.html:391
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"The returned function forwards the arguments through Electron's request-and-"
"response IPC. We can now look for {ph0} on the main-process side."
msgstr "반환된 함수는 인수를 Electron요청 및 응답 우리는 지금 찾을 수 있습니다 {ph0} 메인 프로세스 측면에서."
#: website/public/showcase/notion/index.html:399
msgctxt "page:showcase/notion/index.html"
msgid "Check how the receiver is registered"
msgstr "수신기가 등록되는 방법 확인"
#. {ph0}: <code>addListener</code>
#. {ph1}: <code>ipcMain.handle</code>
#: website/public/showcase/notion/index.html:420
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"The main process uses another wrapper. Its {ph0} method registers an {ph1} "
"receiver for that channel."
msgstr "주요 프로세스는 다른 래퍼를 사용합니다. 그것의 {ph0} 메소드는 {ph1} 해당 채널의 수신기."
#: website/public/showcase/notion/index.html:427
msgctxt "page:showcase/notion/index.html"
msgid "Find the write and its sender check"
msgstr "쓰기 및 보낸 사람 확인 찾기"
#: website/public/showcase/notion/index.html:450
msgctxt "page:showcase/notion/index.html"
msgid ""
"This is the destination. After checking the sender, the handler passes the "
"supplied data to Electron's clipboard API. The channel and the two resolved "
"wrappers connect the exposed method to this call."
msgstr ""
"이 목적지입니다. 보낸 사람을 확인한 후 처리기는 제공된 데이터를 Electron클립보드입니다. 채널과 두 개의 해결된 래퍼는 노출된 "
"메서드를 이 호출에 연결합니다."
#: website/public/showcase/notion/index.html:461
msgctxt "page:showcase/notion/index.html"
msgid "How does a copied block keep its structure?"
msgstr "복사 된 블록은 어떻게 구조를 유지합니까?"
#. {ph0}: <code>electronApi.clipboard.write</code>
#: website/public/showcase/notion/index.html:462
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"Notion's web editor sends text and HTML through {ph0}. It keeps the block "
"data locally and puts an ID in the copied HTML to connect them."
msgstr ""
"Notion의 웹 편집기는 텍스트를 전송합니다. {ph0}. 그것은 로컬 블록 데이터를 유지하고 그들을 연결하기 위해 복사 한에 아이디를"
" 넣습니다."
#: website/public/showcase/notion/index.html:468
msgctxt "page:showcase/notion/index.html"
msgid "HTML links to saved block data"
msgstr "저장된 블록 데이터에 대한 링크"
#: website/public/showcase/notion/index.html:492
msgctxt "page:showcase/notion/index.html"
msgid "Read the HTML ID"
msgstr "읽기"
#: website/public/showcase/notion/index.html:493
msgctxt "page:showcase/notion/index.html"
msgid "Find the same local ID"
msgstr "동일한 로컬 아이디 찾기"
#: website/public/showcase/notion/index.html:494
msgctxt "page:showcase/notion/index.html"
msgid "Restore Notion block data"
msgstr "복원Notion블록 데이터"
#: website/public/showcase/notion/index.html:496
msgctxt "page:showcase/notion/index.html"
msgid ""
"Illustrative text and ID. The recorded module test restores the block data "
"when IDs match; a stale entry returns only text and HTML."
msgstr "설명 텍스트 및 아이디. 기록 된 모듈 테스트는 식별자가 일치 할 때 블록 데이터를 복원합니다."
#: website/public/showcase/notion/index.html:502
msgctxt "page:showcase/notion/index.html"
msgid ""
"On paste, Notion looks for the HTML ID and checks it against the saved copy."
" Matching IDs restore the block data."
msgstr "붙여넣기, Notion 저장한 사본에 대하여 검사한다. 일치하는 신분증은 블록 데이터를 복원합니다."
#: website/public/showcase/notion/index.html:506
msgctxt "page:showcase/notion/index.html"
msgid "Clipboard format recorded from web assets cached on July 13, 2026."
msgstr "2026 년 7 월 13 일에 캐시된 웹 자산에서 기록된 클립보드 형식."
#: website/public/showcase/notion/index.html:512
msgctxt "page:showcase/notion/index.html"
msgid "More examples and sources"
msgstr "더 많은 예와 출처"
#: website/public/showcase/notion/index.html:514
msgctxt "page:showcase/notion/index.html"
msgid "Another example: Markdown tables"
msgstr "또 다른 예:마크 다운 테이블"
#: website/public/showcase/notion/index.html:515
msgctxt "page:showcase/notion/index.html"
msgid ""
"Notion parses Markdown into block data. This example shows how a table "
"becomes header and data rows."
msgstr ""
"Notion 마크다운을 블록 데이터로 구문 분석합니다. 이 예제에서는 테이블이 머리글 및 데이터 행이 되는 방법을 보여 줍니다."
#: website/public/showcase/notion/index.html:520
msgctxt "page:showcase/notion/index.html"
msgid "A table through Notion's Markdown parser"
msgstr "테이블을 통해Notion's Markdown parser"
#: website/public/showcase/notion/index.html:541
msgctxt "page:showcase/notion/index.html"
msgid ""
"Recorded output from an extracted Markdown parser. The table becomes rows "
"and cells."
msgstr "추출 된 마크 다운 파서에서 기록 된 출력. 테이블은 행과 셀이 됩니다."
#: website/public/showcase/notion/index.html:548
msgctxt "page:showcase/notion/index.html"
msgid "Another path: the offline SQLite connection"
msgstr "다른 경로:오프라인 스카이라이트 연결"
#. {ph0}: <code>getSqliteMeta</code>
#: website/public/showcase/notion/index.html:549
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"Notion's renderer requests {ph0} through IPC. The main process creates a "
"message channel and gives one port to the renderer and the other to a SQLite"
" utility process. Subsequent statement batches and results travel over that "
"port."
msgstr ""
"Notion렌더러 요청 {ph0} 2018 년 11 월 기본 프로세스는 메시지 채널을 생성하고 한 포트를 렌더러에 제공하고 다른 포트를 "
"렌더러 유틸리티 프로세스에 제공합니다. 후속 문 배치 및 결과는 해당 포트를 통해 이동합니다."
#: website/public/showcase/notion/index.html:555
msgctxt "page:showcase/notion/index.html"
msgid ""
"Following this handoff explains where the database work runs, and why "
"tracing only the initial IPC request misses the later conversation."
msgstr "이 핸드오프에 따라 데이터베이스 작업이 실행되는 위치와 초기 요청만 추적하면 나중에 대화가 누락되는 이유를 설명합니다."
#: website/public/showcase/notion/index.html:562
msgctxt "page:showcase/notion/index.html"
msgid "Sources and how to read the excerpts"
msgstr "출처 및 발췌문 읽기 방법"
#. {ph0}: <code>app.asar</code>
#. {ph1}: <code>main/index.js</code>
#. {ph2}: <code>isNotionWebContents</code>
#: website/public/showcase/notion/index.html:563
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"The clipboard bridge comes from Notion Desktop 7.6.1's {ph0}: the tab "
"preload and {ph1}. The excerpts expand minified variable names and omit "
"unrelated code; the sender-check helper is shown with its underlying {ph2} "
"call."
msgstr ""
"클립보드 브리지는 Notion 데스크톱 7.6.1 의 {ph0}:탭 사전로드 및 {ph1}. 발췌는 축소 된 변수 이름을 확장하고 "
"관련이없는 코드를 생략;발신자 검사 도우미는 기본과 함께 표시됩니다 {ph2} 함수 호출."
#. {ph0}: <code>747001</code>
#. {ph1}: <code>58169</code>
#. {ph2}: <code>736810</code>
#. {ph3}: <code>422457</code>
#: website/public/showcase/notion/index.html:571
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"The virtual clipboard and Markdown examples come from web assets cached on "
"July 13, 2026, including modules {ph0}, {ph1}, {ph2} and {ph3}. Those assets"
" have their own version. Saved probes executed extracted modules and small "
"harnesses; their outputs describe those probes rather than a captured "
"desktop UI session."
msgstr ""
"가상 클립보드 및 마크다운 예는 모듈을 포함하여 2026 년 7 월 13 일에 캐시된 웹 자산에서 가져온 것입니다 {ph0}, "
"{ph1}, {ph2} 그리고 {ph3}. 이러한 자산에는 자체 버전이 있습니다. 저장된 프로브는 추출된 모듈과 작은 하네스를 "
"실행했습니다."
#: website/public/showcase/notion/index.html:579
msgctxt "page:showcase/notion/index.html"
msgid ""
"The REA result shown here is a focused analysis of the saved tab preload, "
"recorded with the published REA 4.1.0 package. It locates the API and invoke"
" operation. The clipboard member and matching receiver are connected by "
"reading their wrapper implementations in the package."
msgstr ""
"그 REA 여기에 표시된 결과는 저장된 탭 사전로드에 대한 집중 분석이며 게시된 탭과 함께 기록됩니다. REA 4.1.0 패키지. 이 "
"작업을 수행하려면 다음을 수행하십시오. 클립보드 멤버와 일치하는 수신기는 패키지에서 래퍼 구현을 읽음으로써 연결됩니다."
#. {ph0}: <code>422457</code>
#: website/public/showcase/notion/index.html:586
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"The Markdown example uses parser module {ph0}. Saved module tests show that "
"both page and chat filters preserve this table. The paste/import, structured"
" Markdown and AI/chat parsers have separate entry points and intermediate "
"formats."
msgstr ""
"마크다운 예제는 파서 모듈을 사용합니다 {ph0}. 저장된 모듈 테스트는 페이지 필터와 채팅 필터 모두 이 테이블을 유지한다는 것을 "
"보여줍니다. 붙여넣기/가져오기,구조화된 마크다운 및 인공지능/채팅 파서는 별도의 진입점과 중간 형식을 가지고 있습니다."
#. {ph0}: <a href="../../guides/javascript/" >
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/showcase/notion/index.html:594
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"{ph0}JavaScript application guide{ph1}{ph2}Follow a small Electron "
"application's export feature.{ph3}"
msgstr "{ph0}JavaScript 신청 가이드{ph1}{ph2}작은 따라 Electron 응용 프로그램의 내보내기 기능.{ph3}"
#. {ph0}: <a href="../dx-ball/">
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/showcase/notion/index.html:601
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid ""
"{ph0}DX-Ball reconstruction{ph1}{ph2}Follow native instructions to a checked"
" C function.{ph3}"
msgstr "{ph0}DX-Ball 재건{ph1}{ph2}기본 지침에 따라 체크 된 C 기능.{ph3}"
#: website/public/showcase/notion/index.html:6
msgctxt "page:showcase/notion/index.html"
msgid "Notion Electron Reverse Engineering: Clipboard — REA"
msgstr "NotionElectron리버스 엔지니어링:클립보드—REA"
#: website/public/showcase/notion/index.html:7
msgctxt "page:showcase/notion/index.html"
msgid ""
"Follow Notion's clipboard API through Electron's preload, IPC wrappers and "
"main process, with short code excerpts and a look at its rich clipboard "
"format."
msgstr "팔로우 Notion클립보드를 통해 Electron짧은 코드 발췌와 풍부한 클립보드 형식을 살펴볼 수 있습니다."
#: website/public/showcase/notion/index.html:250
msgctxt "page:showcase/notion/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/showcase/notion/index.html:258
msgctxt "page:showcase/notion/index.html"
msgid "Notion Electron case study"
msgstr "NotionElectron사례 연구"
#: website/public/showcase/notion/index.html:272
msgctxt "page:showcase/notion/index.html"
msgid "Copy Notion analysis prompt"
msgstr "복사 Notion 분석 프롬프트"
#: website/public/showcase/notion/index.html:345
msgctxt "page:showcase/notion/index.html"
msgid "Copy Notion preload excerpt"
msgstr "복사Notion미리 발췌문"
#: website/public/showcase/notion/index.html:374
msgctxt "page:showcase/notion/index.html"
msgid "Copy Notion invoke wrapper excerpt"
msgstr "복사Notioninvoke wrapper 발췌문"
#: website/public/showcase/notion/index.html:405
msgctxt "page:showcase/notion/index.html"
msgid "Copy Notion handler wrapper excerpt"
msgstr "복사Notion처리기 wrapper 발췌문"
#: website/public/showcase/notion/index.html:433
msgctxt "page:showcase/notion/index.html"
msgid "Copy Notion clipboard receiver excerpt"
msgstr "복사Notion클립보드 receiver 발췌문"
#: website/public/showcase/notion/index.html:488
msgctxt "page:showcase/notion/index.html"
msgid "Restoring rich clipboard data on paste"
msgstr "붙여 넣기에 풍부한 클립 보드 데이터 복원"
#: website/public/showcase/notion/index.html:631
msgctxt "page:showcase/notion/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/showcase/th04/index.html:103
msgctxt "page:showcase/th04/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/showcase/th04/index.html:194
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}Home{ph1} / {ph2}Showcases{ph3} / TH04"
msgstr "{ph0}홈{ph1} / {ph2}쇼케이스{ph3} / TH04"
#: website/public/showcase/th04/index.html:197
msgctxt "page:showcase/th04/index.html"
msgid "Case study · Touhou 4: Lotus Land Story"
msgstr "사례 연구*동방 4:로터스 랜드 스토리"
#. {ph0}: <br />
#: website/public/showcase/th04/index.html:198
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "Reconstructing TH04's{ph0}bullet patterns."
msgstr "재구성 TH04의{ph0}총알 패턴."
#: website/public/showcase/th04/index.html:199
msgctxt "page:showcase/th04/index.html"
msgid ""
"A ring of bullets starts with a short angle calculation. Use REA to inspect "
"the original DOS function, then follow its instructions into readable C++."
msgstr "총알의 고리는 짧은 각도 계산으로 시작됩니다. 사용 REA 원래 도스 함수를 검사하려면 해당 지침을 따라 읽을 수 있습니다."
#: website/public/showcase/th04/index.html:204
msgctxt "page:showcase/th04/index.html"
msgid "PC-98 · 16-bit DOS · C++ and assembly"
msgstr "PC-98 ·16 비트 도스*C++및 어셈블리"
#: website/public/showcase/th04/index.html:205
msgctxt "page:showcase/th04/index.html"
msgid "View the TH04 reconstruction"
msgstr "보TH04재건"
#: website/public/showcase/th04/index.html:211
msgctxt "page:showcase/th04/index.html"
msgid "From original instructions to checked source"
msgstr "원본 지침에서 확인 된 소스까지"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/th04/index.html:213
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}01 · Original game{ph1}{ph2}MAIN.EXE{ph3}{ph4}The PC-98 executable and "
"its bullet-angle helper.{ph5}"
msgstr ""
"{ph0}01*오리지널 게임{ph1}{ph2}메인엑스{ph3}{ph4}그 PC-98 실행 파일 및 총알 각도 도우미.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/th04/index.html:220
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}02 · Inspect with REA{ph1}{ph2}Instructions + "
"references{ph3}{ph4}Verify the loaded DOS code and read the angle "
"calculation from the executable.{ph5}"
msgstr ""
"{ph0}02*검사 REA{ph1}{ph2}지침+참조{ph3}{ph4}로드된 도스 코드를 확인하고 실행 파일에서 각도 계산을 "
"읽습니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/th04/index.html:228
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}03 · Read the C++{ph1}{ph2}Space → aim → rotate{ph3}{ph4}Connect each "
"operation to the maintained reconstruction.{ph5}"
msgstr "{ph0}03*읽기 C++{ph1}{ph2}공간→목표→회전{ph3}{ph4}유지 재건에 각 작업을 연결합니다.{ph5}"
#. {ph0}: <span class="flow-label">
#. {ph1}: </span >
#. {ph2}: <strong class="flow-node">
#. {ph3}: </strong >
#. {ph4}: <span class="flow-note" >
#. {ph5}: </span >
#: website/public/showcase/th04/index.html:235
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}04 · Check the source{ph1}{ph2}2,139 matching bytes{ph3}{ph4}Recorded "
"compiler checks cover the bullet-generation code that contains this "
"helper.{ph5}"
msgstr ""
"{ph0}04*소스 확인{ph1}{ph2}2,139 일치하는 바이트{ph3}{ph4}기록된 컴파일러 검사는 이 도우미가 포함된 글머리 "
"기호 생성 코드를 다룹니다.{ph5}"
#: website/public/showcase/th04/index.html:244
msgctxt "page:showcase/th04/index.html"
msgid ""
"REA returns the original code and its analysis evidence. The TH04 project "
"supplies the maintained source and compiler checks."
msgstr "REA 원본 코드와 해당 분석 증거를 반환합니다. 그 TH04 프로젝트는 유지되는 소스 및 컴파일러 검사를 제공합니다."
#: website/public/showcase/th04/index.html:252
msgctxt "page:showcase/th04/index.html"
msgid "In this case study"
msgstr "이 사례 연구에서"
#. {ph0}: <a href="#ring">
#. {ph1}: </a>
#: website/public/showcase/th04/index.html:254
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}The bullet ring{ph1}"
msgstr "{ph0}총알 반지{ph1}"
#. {ph0}: <a href="#rea">
#. {ph1}: </a>
#: website/public/showcase/th04/index.html:255
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}What REA returns{ph1}"
msgstr "{ph0}무엇 REA 반환{ph1}"
#. {ph0}: <a href="#source">
#. {ph1}: </a>
#: website/public/showcase/th04/index.html:256
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}Assembly to C++{ph1}"
msgstr "{ph0}어셈블리{ph1}"
#. {ph0}: <a href="#checking">
#. {ph1}: </a>
#: website/public/showcase/th04/index.html:257
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}Checking the source{ph1}"
msgstr "{ph0}소스 확인{ph1}"
#. {ph0}: <a href="#project">
#. {ph1}: </a>
#: website/public/showcase/th04/index.html:258
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}The full project{ph1}"
msgstr "{ph0}전체 프로젝트{ph1}"
#: website/public/showcase/th04/index.html:263
msgctxt "page:showcase/th04/index.html"
msgid "How a ring aims at the player"
msgstr "반지가 플레이어를 겨냥하는 방법"
#: website/public/showcase/th04/index.html:264
msgctxt "page:showcase/th04/index.html"
msgid ""
"Elly's attack requests an aimed ring with an initial count of 16. One helper"
" calculates the direction of each bullet. The same ring can face a fixed "
"direction or turn toward the player."
msgstr ""
"엘리의 공격은 16 개의 초기 카운트를 가진 목표 링을 요구합니다. 하나의 도우미는 각 총알의 방향을 계산합니다. 같은 반지는 고정된 "
"방향으로 향하거나 플레이어를 향해 돌 수 있습니다."
#. {ph0}: <span class="terminal-dots" aria-hidden="true" >
#. {ph1}: <i>
#. {ph2}: </i>
#. {ph3}: <i>
#. {ph4}: </i>
#. {ph5}: <i>
#. {ph6}: </i>
#. {ph7}: </span >
#: website/public/showcase/th04/index.html:271
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}Your coding agent"
msgstr "{ph0}{ph1}{ph2}{ph3}{ph4}{ph5}{ph6}{ph7}코딩 에이전트"
#: website/public/showcase/th04/index.html:276
#: website/public/showcase/th04/index.html:332
#: website/public/showcase/th04/index.html:509
#: website/public/showcase/th04/index.html:543
msgctxt "page:showcase/th04/index.html"
msgid "Copy"
msgstr "복사"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="th04-prompt" >
#. {ph3}: </span >
#. {ph4}: <span class="terminal-cursor" aria-hidden="true">
#. {ph5}: </span>
#: website/public/showcase/th04/index.html:285
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to find how TH04 creates a ring of bullets and aims "
"it at the player. Explain the calculation and show the code.{ph3}{ph4}{ph5}"
msgstr ""
"{ph0}›{ph1}{ph2}사용 REA 방법을 찾으려면 TH04 총알 반지를 만들어 플레이어를 겨냥합니다. 계산을 설명하고 코드를 "
"보여줍니다.{ph3}{ph4}{ph5}"
#: website/public/showcase/th04/index.html:294
msgctxt "page:showcase/th04/index.html"
msgid ""
"An example prompt, with the original executable and reconstruction checkout "
"available locally."
msgstr "로컬에서 사용할 수 있는 원래 실행 파일 및 재구성 체크아웃이 있는 예제 프롬프트입니다."
#. {ph0}: <code>0, 16, 32, …, 240</code>
#: website/public/showcase/th04/index.html:298
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"TH04 stores a full clockwise turn in 256 angle units. For 16 bullets, each "
"index adds 16 units: {ph0}. Adding the player's direction rotates those "
"positions together."
msgstr ""
"TH04 256 각도 단위로 전체 시계 방향 회전을 저장합니다. 16 개의 총알에 대해 각 인덱스는 16 개의 단위를 추가합니다: "
"{ph0}. 플레이어의 방향을 더하면 그 위치들이 함께 회전됩니다."
#. {ph0}: <a href="../../assets/figures/th04-bullet-ring.svg" >
#. {ph1}: </a >
#: website/public/showcase/th04/index.html:318
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"An illustration of the recovered angle math for count 16, player direction "
"40 and template rotation 0. {ph0}Open figure{ph1}"
msgstr "카운트에 대한 복구 각도 수학의 그림 16,플레이어 방향 40 템플릿 회전 0. {ph0}열린 그림{ph1}"
#: website/public/showcase/th04/index.html:326
msgctxt "page:showcase/th04/index.html"
msgid "The firing template in the recovered source"
msgstr "복구된 소스의 발사 템플릿"
#: website/public/showcase/th04/index.html:331
msgctxt "page:showcase/th04/index.html"
msgid "Elly's ring attack · source excerpt"
msgstr "엘리의 반지 공격*출처 발췌"
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/src/main/boss/elly_phase_ring16.cpp#L26"
#. >
#. {ph1}: </a >
#: website/public/showcase/th04/index.html:346
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"These lines select the pattern before difficulty and performance tuning. "
"{ph0}Read the attack's source{ph1}."
msgstr "이 선은 난이도와 성능 조정 전에 패턴을 선택합니다. {ph0}공격 소스 읽기{ph1}."
#: website/public/showcase/th04/index.html:357
msgctxt "page:showcase/th04/index.html"
msgid "What REA returns"
msgstr "WhatREA환"
#. {ph0}: <code>bullet_velocity_and_angle_set()</code>
#: website/public/showcase/th04/index.html:358
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"We inspect {ph0}, the function that sets each bullet's velocity and angle. "
"REA returns its instructions, pseudocode and references. Three parts of that"
" result explain the pattern."
msgstr ""
"우리는 검사 {ph0} 각 총알의 속도와 각도를 설정하는 함수입니다. REA 명령어,의사 코드 및 참조를 반환합니다. 그 결과의 세 "
"부분이 패턴을 설명합니다."
#: website/public/showcase/th04/index.html:366
msgctxt "page:showcase/th04/index.html"
msgid "Check the DOS image before reading its code"
msgstr "코드를 읽기 전에 도스 이미지를 확인하십시오"
#: website/public/showcase/th04/index.html:387
msgctxt "page:showcase/th04/index.html"
msgid ""
"The check ties the loaded code and relocation records to the supplied "
"executable. The path above is shortened for display."
msgstr "이 검사는 로드된 코드와 재배치 레코드를 제공된 실행 파일에 연결합니다. 위의 경로는 표시를 위해 단축됩니다."
#: website/public/showcase/th04/index.html:393
msgctxt "page:showcase/th04/index.html"
msgid "Read the ring's multiply and divide"
msgstr "링의 곱하기 및 나누기 읽기"
#. {ph0}: <code>SI</code>
#. {ph1}: <code>DS:53AF</code>
#. {ph2}: <code>bullet_template.count</code>
#: website/public/showcase/th04/index.html:411
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0} holds the bullet index. The shift multiplies it by 256, then the "
"division uses the count read from {ph1}. The maintained source names that "
"field {ph2}. The complete sequence appears below."
msgstr ""
"{ph0} 총알 인덱스를 보유하고 있습니다. 이 이동은 256 으로 곱하고,그 다음에는 이 분할에서 읽은 수를 사용합니다. {ph1}. "
"유지 관리되는 소스 이름은 해당 필드입니다 {ph2}. 전체 순서는 아래에 나타납니다."
#: website/public/showcase/th04/index.html:420
msgctxt "page:showcase/th04/index.html"
msgid "Find where the pattern turns toward the player"
msgstr "패턴이 플레이어 쪽으로 향하는 위치 찾기"
#: website/public/showcase/th04/index.html:441
msgctxt "page:showcase/th04/index.html"
msgid ""
"The instruction operands expose two coordinate differences and a direction "
"helper. Its return value is added to the relative ring angle. Source names "
"make those addresses readable; REA lets the agent check the original "
"operations behind them."
msgstr ""
"명령 피연산자는 두 개의 좌표 차이와 방향 도우미를 노출합니다. 그것의 반환 값은 상대 링 각도에 추가됩니다. 소스 이름을 사용하면 해당"
" 주소를 읽을 수 있습니다; REA 에이전트가 그 뒤에 있는 원래 작업을 확인할 수 있습니다."
#: website/public/showcase/th04/index.html:452
msgctxt "page:showcase/th04/index.html"
msgid "From assembly to readable C++"
msgstr "어셈블리에서 읽을 수있는 키++"
#: website/public/showcase/th04/index.html:453
msgctxt "page:showcase/th04/index.html"
msgid ""
"Select a step to match the original instructions with the angle calculation."
" This summary follows the aimed-ring path; the full source also handles "
"spreads, stacks and random patterns."
msgstr ""
"원래 지침과 각도 계산을 일치시킬 단계를 선택합니다. 이 요약은 목표 링 경로를 따릅니다.전체 소스는 스프레드,스택 및 무작위 패턴을 "
"처리합니다."
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/th04/index.html:464
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}01{ph1} Index"
msgstr "{ph0}01{ph1} 지수"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/th04/index.html:472
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}02{ph1} Space"
msgstr "{ph0}02{ph1} 공간"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/th04/index.html:480
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}03{ph1} Aim"
msgstr "{ph0}03{ph1} 목표"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/th04/index.html:488
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}04{ph1} Rotate"
msgstr "{ph0}04{ph1} 회전"
#. {ph0}: <span>
#. {ph1}: </span>
#: website/public/showcase/th04/index.html:496
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}05{ph1} Store"
msgstr "{ph0}05{ph1} 제품 정보"
#: website/public/showcase/th04/index.html:508
msgctxt "page:showcase/th04/index.html"
msgid "REA · original 16-bit instructions"
msgstr "REA·기존 16 비트 지침"
#: website/public/showcase/th04/index.html:542
msgctxt "page:showcase/th04/index.html"
msgid "Readable C++ · aimed-ring summary"
msgstr "*조준 링 요약"
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>SI</code>
#: website/public/showcase/th04/index.html:571
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}01 · Read the bullet index.{ph1} The stack argument is loaded into "
"{ph2}. In a 16-bullet ring, this member index runs from 0 through 15."
msgstr ""
"{ph0}01*글머리 기호 인덱스를 읽습니다.{ph1} 스택 인수는 {ph2}. 16 개의 총알 반지에서는 이 멤버 인덱스가 0 에서 "
"15 까지입니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>SHL AX,8</code>
#. {ph3}: <code>IDIV</code>
#: website/public/showcase/th04/index.html:576
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}02 · Space the directions around a full turn.{ph1} {ph2} multiplies by "
"256. The count is zero-extended into a word, then {ph3} divides the product "
"by that count. For count 16, each index advances 16 angle units."
msgstr ""
"{ph0}02*공간 전체 회전 주위에 방향.{ph1} {ph2} 256 을 곱합니다. 카운트는 0 으로 확장되어 단어로, {ph3} 곱을"
" 그 수로 나눕니다. 카운트 16 의 경우 각 인덱스는 16 개의 각도 단위를 앞당깁니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>AX</code>
#: website/public/showcase/th04/index.html:583
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}03 · Add the player direction.{ph1} The two subtractions form player-"
"minus-origin coordinates. The direction helper returns an angle in {ph2}; "
"adding it turns the whole ring toward the player."
msgstr ""
"{ph0}03*플레이어 방향을 추가합니다.{ph1} 두 빼기는 플레이어-마이너스-원점 좌표를 형성합니다. 방향 도우미는 각도를 "
"반환합니다. {ph2};그것을 추가하면 전체 링이 플레이어에게 향합니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>ADD AL,[0x53ad]</code>
#: website/public/showcase/th04/index.html:589
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}04 · Add the pattern's rotation.{ph1} {ph2} adds the template angle. "
"Elly's initial template sets it to zero; other patterns can use the same "
"helper with a rotation."
msgstr ""
"{ph0}04*패턴의 회전을 추가합니다.{ph1} {ph2} 템플릿 각도를 추가합니다. 엘리의 초기 템플릿은 0 으로 설정;다른 패턴은 "
"회전과 같은 도우미를 사용할 수 있습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <code>AL</code>
#: website/public/showcase/th04/index.html:595
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}05 · Keep the final angle in one byte.{ph1} The store writes {ph2} to "
"the spawn-angle field. Values wrap after 255, just as the unsigned-byte cast"
" does. The surrounding source also converts this angle and speed into "
"velocity."
msgstr ""
"{ph0}05*최종 각도를 1 바이트로 유지하십시오.{ph1} 가게가 쓴 글 {ph2} 스폰 각도 필드에. 값은 부호없는 바이트 캐스트와"
" 마찬가지로 255 이후에 래핑됩니다. 주변 소스는 또한 이 각과 속도를 속도로 변환합니다."
#: website/public/showcase/th04/index.html:604
msgctxt "page:showcase/th04/index.html"
msgid ""
"The assembly selects the aimed-ring branch, aim calculation and final store."
" The C++ above is a readable summary. Compiler checks below apply to the "
"maintained source in the linked project."
msgstr ""
"어셈블리는 조준 링 분기,조준 계산 및 최종 저장소를 선택합니다. 위의 C++는 읽을 수있는 요약입니다. 아래의 컴파일러 검사는 연결된 "
"프로젝트의 유지되는 소스에 적용됩니다."
#: website/public/showcase/th04/index.html:610
msgctxt "page:showcase/th04/index.html"
msgid "Read the maintained ring and aim source"
msgstr "유지 링 및 조준 소스 읽기"
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/src/main/bullet/add_impl.hpp#L4"
#. >
#. {ph1}: </a >
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/src/main/bullet/add.cpp#L422"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/src/main/bullet/types.hpp#L6"
#. >
#. {ph5}: </a >
#: website/public/showcase/th04/index.html:639
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}Ring macro{ph1} · {ph2}Aim and velocity source{ph3} · {ph4}Angle "
"representation{ph5}"
msgstr "{ph0}링 매크로{ph1} · {ph2}조준 및 속도 소스{ph3} · {ph4}각도 표현{ph5}"
#: website/public/showcase/th04/index.html:659
msgctxt "page:showcase/th04/index.html"
msgid "Checking the maintained source"
msgstr "유지 관리 소스 확인"
#: website/public/showcase/th04/index.html:660
msgctxt "page:showcase/th04/index.html"
msgid ""
"The TH04 project's recorded checks compile the bullet-generation code, "
"including this helper, with its pinned Turbo C++ 4.0J toolchain."
msgstr "그 TH04 프로젝트의 기록된 검사는 이 도우미를 포함한 총알 생성 코드를 컴파일합니다."
#: website/public/showcase/th04/index.html:667
msgctxt "page:showcase/th04/index.html"
msgid "2,139 matching bytes"
msgstr "2,139 일치하는 바이트"
#: website/public/showcase/th04/index.html:668
msgctxt "page:showcase/th04/index.html"
msgid ""
"The compiled bullet-generation code matches a 2,139-byte section of the "
"original executable."
msgstr "컴파일된 총알 생성 코드는 원래 실행 파일의 2,139 바이트 섹션과 일치합니다."
#: website/public/showcase/th04/index.html:674
msgctxt "page:showcase/th04/index.html"
msgid "Two clean builds"
msgstr "두 개의 깨끗한 빌드"
#: website/public/showcase/th04/index.html:675
msgctxt "page:showcase/th04/index.html"
msgid ""
"Two separate builds produce the same matching bytes. The recorded input "
"hashes match the maintained source shown here."
msgstr "두 개의 별도 빌드는 동일한 일치하는 바이트를 생성합니다. 기록된 입력 해시는 여기에 표시된 유지되는 소스와 일치합니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/docs/reconstruction/product/TH04_SEMANTIC_BULLET_GENERATION_V1236.md#validation"
#. >
#. {ph1}: </a >
#: website/public/showcase/th04/index.html:681
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "Recorded on 3 October 2026. {ph0}Read the compiler checks{ph1}."
msgstr "2026 년 10 월 3 일에 기록된 {ph0}컴파일러 검사 읽기{ph1}."
#: website/public/showcase/th04/index.html:689
msgctxt "page:showcase/th04/index.html"
msgid "Target identity and analysis scope"
msgstr "대상 신원 및 분석 범위"
#: website/public/showcase/th04/index.html:694
msgctxt "page:showcase/th04/index.html"
msgid "Original target"
msgstr "원래 목표"
#. {ph0}: <code>MAIN.EXE</code>
#: website/public/showcase/th04/index.html:695
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}, 156,258 bytes, DOS MZ"
msgstr "{ph0},156,258 바이트"
#: website/public/showcase/th04/index.html:698
msgctxt "page:showcase/th04/index.html"
msgid "Helper entry"
msgstr "도우미 항목"
#. {ph0}: <code>0x2cfc8</code>
#: website/public/showcase/th04/index.html:699
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0} in REA's loaded image"
msgstr "{ph0} 그 안에 REA로드 된 이미지"
#: website/public/showcase/th04/index.html:702
msgctxt "page:showcase/th04/index.html"
msgid "Original file offset"
msgstr "원본 파일 오프셋"
#. {ph0}: <code>0x1e7c8</code>
#. {ph1}: <code>address_to_file_offset</code>
#: website/public/showcase/th04/index.html:703
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}, returned by {ph1}"
msgstr "{ph0},반환 {ph1}"
#: website/public/showcase/th04/index.html:709
msgctxt "page:showcase/th04/index.html"
msgid "Recorded code inspection"
msgstr "기록 된 코드 검사"
#: website/public/showcase/th04/index.html:710
msgctxt "page:showcase/th04/index.html"
msgid "REA 4.1.0 · 7 October 2026"
msgstr "REA 4.1.0·2026 년 10 월 7 일"
#: website/public/showcase/th04/index.html:715
msgctxt "page:showcase/th04/index.html"
msgid ""
"Compiler checks cover the complete bullet-add code section, including this "
"helper. They also compare its MAP contribution and overlapping relocation."
msgstr ""
"컴파일러 검사는 이 도우미를 포함하여 전체 글머리 기호 추가 코드 섹션을 다룹니다. 그들은 또한 지도의 기여와 중복되는 재배치를 "
"비교합니다."
#. {ph0}: <code>0x1000</code>
#: website/public/showcase/th04/index.html:720
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"REA verified the static DOS load image at load segment {ph0}. Its addresses "
"describe that analysis image. The function result reports 503 body bytes in "
"two ranges across a 517-byte span; the selected instructions above lie in "
"those reported ranges."
msgstr ""
"REA 로드 세그먼트에서 정적 도스 로드 이미지 확인 {ph0}. 그 주소는 분석 이미지를 설명합니다. 함수 결과는 517 바이트 범위에"
" 걸쳐 두 범위에서 503 개의 본문 바이트를 보고합니다.위의 선택된 명령은 보고된 범위에 있습니다."
#. {ph0}: <code>0d72e980</code>
#: website/public/showcase/th04/index.html:727
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"The source names and compiler checks come from TH04 checkpoint {ph0}. "
"Earlier reconstruction observations used the project's own analysis scripts;"
" this page adds a fresh REA inspection of the same original target. The "
"supplied game's identity is pinned by its repository manifest, with "
"independent pristine-dump provenance still open."
msgstr ""
"소스 이름과 컴파일러 검사는 TH04 체크포인트 {ph0}. 이전 재구성 관측은 프로젝트의 자체 분석 스크립트를 사용했습니다.이 페이지는"
" 신선한 REA 동일한 원래 대상의 검사. 제공된 게임의 신원은 저장소 매니페스트에 의해 고정되어 있으며 독립적인 원시 덤프 출처가 "
"여전히 열려 있습니다."
#: website/public/showcase/th04/index.html:735
msgctxt "page:showcase/th04/index.html"
msgid ""
"The figure illustrates the angle calculation. Full-game controls, timing and"
" PC-98 hardware behavior have separate runtime checks in the reconstruction "
"project."
msgstr ""
"이 그림은 각도 계산을 보여줍니다. 전체 게임 컨트롤,타이밍 및 PC-98 하드웨어 동작에는 재구성 프로젝트에서 별도의 런타임 검사가 "
"있습니다."
#: website/public/showcase/th04/index.html:744
msgctxt "page:showcase/th04/index.html"
msgid "The full TH04 reconstruction"
msgstr "전체TH04재건"
#: website/public/showcase/th04/index.html:745
msgctxt "page:showcase/th04/index.html"
msgid ""
"The project builds the game's four DOS products from maintained C++ and "
"assembly. Beyond bullet generation, the source covers stages, bosses, "
"rendering, input, menus, endings and score handling."
msgstr ""
"이 프로젝트는 유지 관리 된 C++및 어셈블리에서 게임의 네 가지 도스 제품을 빌드합니다. 총알 생성 외에도 소스는 "
"스테이지,보스,렌더링,입력,메뉴,엔딩 및 점수 처리를 다룹니다."
#. {ph0}: <a class="text-link" href="https://github.com/N0zoM1z0/th04" >
#. {ph1}: </a >
#: website/public/showcase/th04/index.html:751
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "{ph0}Explore the TH04 repository{ph1}"
msgstr "{ph0}탐색 TH04 저장소{ph1}"
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/src/main/bullet/add.cpp#L292"
#. >
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/showcase/th04/index.html:757
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}Bullet-generation source{ph1}{ph2}The complete helper, other pattern "
"types and template tuning.{ph3}"
msgstr "{ph0}총알 생성 소스{ph1}{ph2}전체 도우미,다른 패턴 유형 및 템플릿 튜닝.{ph3}"
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/docs/DOS_BUILD.md"
#. >
#. {ph1}: </a >
#. {ph2}: <span >
#. {ph3}: </span >
#: website/public/showcase/th04/index.html:766
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}DOS build and run guide{ph1}{ph2}Build the source and test it in the "
"project's PC-98 emulator workflow.{ph3}"
msgstr ""
"{ph0}도스 빌드 및 실행 가이드{ph1}{ph2}소스를 빌드하고 프로젝트에서 테스트 PC-98 에뮬레이터 워크 플로우.{ph3}"
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/blob/0d72e9801a5c14c10384efcbb6734ceccb74ee63/docs/RE_HANDOFF.md"
#. >
#. {ph1}: </a >
#. {ph2}: <span>
#. {ph3}: </span>
#: website/public/showcase/th04/index.html:775
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid ""
"{ph0}Current project state{ph1}{ph2}DOS verification and the separate native"
" x64 port.{ph3}"
msgstr "{ph0}현재 프로젝트 상태{ph1}{ph2}도스 검증 및 별도의 기본 64 포트.{ph3}"
#: website/public/showcase/th04/index.html:6
msgctxt "page:showcase/th04/index.html"
msgid "TH04 Reverse Engineering: DOS Bullet Patterns — REA"
msgstr "TH04리버스 엔지니어링:DOS 탄 패턴—REA"
#: website/public/showcase/th04/index.html:7
msgctxt "page:showcase/th04/index.html"
msgid ""
"Inspect TH04's original 16-bit DOS code with REA. Follow the assembly and "
"recovered C++ to see how a ring of bullets is spaced and aimed at the "
"player."
msgstr "검사 TH04의 원래 16 비트 도스 코드 REA. 이 게임의 목표는 가능한 한 많은 적을 파괴하는 것입니다."
#: website/public/showcase/th04/index.html:251
msgctxt "page:showcase/th04/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/showcase/th04/index.html:261
msgctxt "page:showcase/th04/index.html"
msgid "TH04 bullet-pattern case study"
msgstr "TH04탄 패턴은 사례 연구"
#: website/public/showcase/th04/index.html:276
msgctxt "page:showcase/th04/index.html"
msgid "Copy TH04 example prompt"
msgstr "복사 TH04 프롬프트 예"
#: website/public/showcase/th04/index.html:304
msgctxt "page:showcase/th04/index.html"
msgid ""
"TH04 fixed and aimed bullet rings; scroll horizontally on smaller screens"
msgstr "TH04 고정 및 목표 총알 반지;작은 화면에서 수평으로 스크롤"
#: website/public/showcase/th04/index.html:310
msgctxt "page:showcase/th04/index.html"
msgid ""
"Two diagrams of a 16-bullet ring. The fixed ring starts at angle zero. "
"Adding a player direction of 40 rotates every direction by the same amount; "
"the highlighted first bullet points toward the player. Both keep a spacing "
"of 16 angle units, or 22.5 degrees."
msgstr ""
"16 총알 링의 두 다이어그램. 고정 링은 각도 0 에서 시작합니다. 40 의 플레이어 방향을 추가하면 모든 방향이 같은 양으로 "
"회전합니다.강조된 첫 번째 총알은 플레이어를 가리킵니다. 둘 다 16 각 단위 또는 22.5 도의 간격을 유지합니다."
#: website/public/showcase/th04/index.html:332
msgctxt "page:showcase/th04/index.html"
msgid "Copy TH04 firing template"
msgstr "복사TH04발사 템플릿"
#: website/public/showcase/th04/index.html:459
msgctxt "page:showcase/th04/index.html"
msgid "Follow the TH04 aimed-ring calculation"
msgstr "따라TH04을 목표로 링 계산"
#: website/public/showcase/th04/index.html:509
msgctxt "page:showcase/th04/index.html"
msgid "Copy TH04 assembly excerpt"
msgstr "복사TH04어셈블리는 발췌문"
#: website/public/showcase/th04/index.html:543
msgctxt "page:showcase/th04/index.html"
msgid "Copy readable aimed-ring calculation"
msgstr "읽을 수있는 목표 링 계산 복사"
#: website/public/showcase/th04/index.html:800
msgctxt "page:showcase/th04/index.html"
msgid "Back to top"
msgstr "맨 위로"
#: website/public/assets/main.js:21
msgctxt "runtime"
msgid "Copied"
msgstr "복사"
#: website/public/assets/main.js:32
msgctxt "runtime"
msgid "Selected"
msgstr "선택된"
#: website/public/assets/main.js:23
msgctxt "runtime"
msgid "Code copied to clipboard."
msgstr "코드는 클립 보드에 복사."
#: website/public/assets/main.js:34
msgctxt "runtime"
msgid "Code selected. Use your keyboard to copy it."
msgstr "코드 선택. 그것을 복사 키보드를 사용합니다."
#: website/public/assets/main.js:148
#, python-brace-format
msgctxt "runtime"
msgid "REA on GitHub ({count})"
msgstr "REA에GitHub({count})"
#: website/public/assets/dino-demo.js:77
#, python-brace-format
msgctxt "runtime"
msgid "Distance {distance}"
msgstr "거리 {distance}"
#: website/public/assets/dino-demo.js:87
msgctxt "runtime"
msgid "Hit a cactus. Try another speed."
msgstr "선인장을 치십시오. 다른 속도를 시도하십시오."
#: website/public/assets/dino-demo.js:87
msgctxt "runtime"
msgid "Space or Jump ↑"
msgstr "공동↑"
#: website/public/assets/dino-demo.js:97
msgctxt "runtime"
msgid "Play again"
msgstr "다시 재생"
#: website/public/assets/dino-demo.js:97
#: website/public/assets/dino-demo.js:111
msgctxt "runtime"
msgid "Play"
msgstr "시작"
#: website/public/assets/dino-demo.js:171
msgctxt "runtime"
msgid "Pause"
msgstr "일시 중지"
#: website/public/assets/dino-demo.js:112
msgctxt "runtime"
msgid "Press Play, then jump over the cactus."
msgstr "재생을 누른 다음 선인장을 뛰어 넘습니다."
#: website/public/assets/dino-demo.js:147
msgctxt "runtime"
msgid "Hit a cactus. Press Play again, or change the speed and restart."
msgstr "선인장을 치십시오. 재생을 다시 누르거나 속도를 변경하고 다시 시작하십시오."
#: website/public/assets/dino-demo.js:172
msgctxt "runtime"
msgid "Running. Space or Jump clears a cactus."
msgstr "실행. 공간 또는 점프는 선인장을 지 웁니다."
#: website/public/assets/dino-demo.js:183
#: website/public/assets/dino-demo.js:219
#: website/public/assets/dino-demo.js:224
msgctxt "runtime"
msgid "Paused. Press Play to continue."
msgstr "일시 중지되었습니다. 계속하려면 재생을 누릅니다."
#: website/public/assets/dino-demo.js:203
#, python-brace-format
msgctxt "runtime"
msgid "Fixed speed: {speed}. Space or Jump clears a cactus."
msgstr "조정 속도: {speed}. 공간 또는 점프는 선인장을 지 웁니다."
#: website/public/assets/dino-demo.js:206
#, python-brace-format
msgctxt "runtime"
msgid "Fixed speed: {speed}. Press Play to try it."
msgstr "조정 속도: {speed}. 그것을 시도 재생을 누릅니다."
#: website/public/assets/dino-demo.js:215
msgctxt "runtime"
msgid "Recovered rule: start at 6, then increase toward 13."
msgstr "복구 된 규칙:6 에서 시작한 다음 13 으로 늘립니다."
#: website/public/assets/dino-demo.js:216
#, python-brace-format
msgctxt "runtime"
msgid "Fixed speed: {speed}."
msgstr "조정 속도: {speed}."
#: website/public/assets/dino-demo.js:249
msgctxt "runtime"
msgid ""
"Replayed the recovered rule. All four values match the controlled original-"
"game check when rounded to three decimals."
msgstr "복구된 규칙을 다시 재생했습니다. 4 개의 값 모두 3 개의 소수로 둥글게 하면 제어된 원래 게임 체크와 일치합니다."
#: website/public/assets/dino-demo.js:252
msgctxt "runtime"
msgid ""
"The replay differs from the recorded original-game values. Compare the speed"
" rule and settings above."
msgstr "재생은 녹음된 오리지널 게임 값과 다릅니다. 위의 속도 규칙 및 설정을 비교하십시오."
#: website/public/assets/aegis-demo.js:22
#, python-brace-format
msgctxt "runtime"
msgid "{start}–{end} seconds"
msgstr "{start}–{end} 초"
#: website/public/assets/aegis-demo.js:29
#, python-brace-format
msgctxt "runtime"
msgid "{seconds} seconds, time block {block}"
msgstr "{seconds} 초,시간 블록 {block}"
#: website/public/assets/aegis-demo.js:35
msgctxt "runtime"
msgid ""
"Interactive calculation is unavailable in this browser. The example shows "
"the code at 59 seconds."
msgstr "이 브라우저에서는 대화형 계산을 사용할 수 없습니다. 이 예제에서는 코드를 59 초로 표시합니다."
#: website/public/assets/aegis-demo.js:62
msgctxt "runtime"
msgid "Checking…"
msgstr "확인…"
#: website/public/assets/aegis-demo.js:76
#, python-brace-format
msgctxt "runtime"
msgid ""
"{passed} / {total} checks passed (six reference cases, at six and eight "
"digits)."
msgstr "{passed} / {total} 통과 된 검사(6 개의 참조 사례,6 자리 및 8 자리)."
#: website/public/assets/aegis-demo.js:81
msgctxt "runtime"
msgid "Could not run the reference checks. Try again."
msgstr "참조 검사를 실행할 수 없습니다. 다시 시도하십시오."
#: website/public/assets/figures/analyst-thinking.svg:2
msgctxt "figure:analyst-thinking.svg"
msgid "An analyst thinking at a computer"
msgstr "컴퓨터에서 생각 하는 분석가"
#: website/public/assets/figures/ctf-mask-equation.svg:2
#: website/public/assets/figures/ctf-mask-equation.svg:24
msgctxt "figure:ctf-mask-equation.svg"
msgid "One check reveals one character"
msgstr "한 번 확인하면 한 명의 캐릭터가 나타납니다."
#: website/public/assets/figures/ctf-mask-equation.svg:3
msgctxt "figure:ctf-mask-equation.svg"
msgid ""
"The seventh mask selects only position 21 in the six by six input grid. Its "
"character code must equal 55, so the character is 7. The other masks select "
"different positions and give further equations."
msgstr ""
"일곱 번째 마스크는 6 대 6 입력 그리드에서 위치 21 만 선택합니다. 문자 코드는 55 이어야 합니다.그래서 문자는 7 입니다. 다른"
" 마스크는 다른 위치를 선택하고 추가 방정식을 제공합니다."
#: website/public/assets/figures/ctf-mask-equation.svg:25
msgctxt "figure:ctf-mask-equation.svg"
msgid "The seventh check. Cell labels are input positions, starting at 0."
msgstr "일곱 번째 체크. 셀 레이블은 0 에서 시작하는 입력 위치입니다."
#: website/public/assets/figures/ctf-mask-equation.svg:27
msgctxt "figure:ctf-mask-equation.svg"
msgid "Encoded mask: −21, +1, −14, 0"
msgstr "인코딩 마스크:-21,+1,-14,0"
#: website/public/assets/figures/ctf-mask-equation.svg:28
msgctxt "figure:ctf-mask-equation.svg"
msgid "Skip 21 cells. Select 1. Skip 14. Stop at 0."
msgstr "21 개의 셀을 건너 뜁니다. 1 을 선택합니다. 건너 뛰기 14. 0 에서 중지합니다."
#: website/public/assets/figures/ctf-mask-equation.svg:32
msgctxt "figure:ctf-mask-equation.svg"
msgid "Only one cell contributes to this sum"
msgstr "이 합에 기여하는 셀은 하나만 있습니다."
#: website/public/assets/figures/ctf-mask-equation.svg:35
msgctxt "figure:ctf-mask-equation.svg"
msgid "Position 21 in the flag must contain 7."
msgstr "깃발의 위치 21 에는 7 이 포함되어야 합니다."
#: website/public/assets/figures/ctf-mask-equation.svg:37
msgctxt "figure:ctf-mask-equation.svg"
msgid "Selected: one cell"
msgstr "선택:하나의 셀"
#: website/public/assets/figures/ctf-mask-equation.svg:38
msgctxt "figure:ctf-mask-equation.svg"
msgid "26 masks give 26 equations."
msgstr "26 개의 마스크는 26 개의 방정식을 제공합니다."
#: website/public/assets/figures/ctf-mask-equation.svg:39
msgctxt "figure:ctf-mask-equation.svg"
msgid "Solve them together to find the flag."
msgstr "깃발을 찾기 위해 함께 해결."
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:2
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:20
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "DX-Ball sound-pan investigation"
msgstr "DX-Ball사운드 팬 조사"
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:3
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid ""
"REA provides the instruction, caller and byte-read evidence for one DX-Ball "
"function. A stack input is multiplied by 1.5625, offset by 500, scaled, and "
"converted to an integer. Maintained C is checked in 3,205 original-x86 cases"
" and a separate 63-byte compiler replay."
msgstr ""
"REA제공하는 지시,호출하는 함수 및 바이트 읽기에 대한 증거 하나DX-Ball기능입니다. 스택 입력에 1.5625 를 곱하고,500 을"
" 오프셋하고,크기를 조정하고,정수로 변환합니다. 3,205 개의 원본 86 케이스와 별도의 63 바이트 컴파일러 재생에서 확인됩니다."
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:39
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "Stack"
msgstr "스택"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:40
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "input x"
msgstr "입력 x"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:44
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "Integer"
msgstr "정수"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:45
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "return"
msgstr "반환"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:46
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "Reconstructed function"
msgstr "복원한 함수"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:47
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "Maintained C"
msgstr "유지 가능한 C"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:48
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "Brick-hit caller"
msgstr "벽돌 충돌 호출부"
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:49
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "20 + 30 × tile_x"
msgstr "20 + 30 × tile_x"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:50
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "Original code"
msgstr "원본 코드"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:51
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:54
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "comparison"
msgstr "비교"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:52
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "3,205 cases"
msgstr "3,205개 사례"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:53
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "VC4.0 build"
msgstr "VC4.0 빌드"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/dx-ball-sound-pan-investigation.svg:55
msgctxt "figure:dx-ball-sound-pan-investigation.svg"
msgid "63 matching bytes"
msgstr "63바이트 일치"
#: website/public/assets/figures/rea-investigation-flow.svg:2
#: website/public/assets/figures/rea-investigation-flow.svg:22
msgctxt "figure:rea-investigation-flow.svg"
msgid "REA investigation flow"
msgstr "REA흐름을 조사"
#: website/public/assets/figures/rea-investigation-flow.svg:3
msgctxt "figure:rea-investigation-flow.svg"
msgid ""
"Ask a question about a local target. REA inspects and traces through local "
"analysis adapters, returns evidence, and supports follow-up questions as "
"your agent explains, implements and tests."
msgstr ""
"지역 목표에 대해 질문하십시오. REA 로컬 분석 어댑터를 통해 검사 및 추적하고,증거를 반환하고,에이전트가 설명,구현 및 테스트 할 때"
" 후속 질문을 지원합니다."
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:31
msgctxt "figure:rea-investigation-flow.svg"
msgid "1. Ask"
msgstr "1. 질문"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:32
msgctxt "figure:rea-investigation-flow.svg"
msgid "Your agent + local target"
msgstr "에이전트 + 로컬 대상"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:33
msgctxt "figure:rea-investigation-flow.svg"
msgid "App / binary / browser"
msgstr "앱 / 바이너리 / 브라우저"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:34
msgctxt "figure:rea-investigation-flow.svg"
msgid "2. Inspect & trace"
msgstr "2. 분석과 추적"
#: website/public/assets/figures/rea-investigation-flow.svg:36
msgctxt "figure:rea-investigation-flow.svg"
msgid "CLI / MCP"
msgstr "CLI / MCP"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:37
msgctxt "figure:rea-investigation-flow.svg"
msgid "3. Read the evidence"
msgstr "3. 근거 확인"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:38
msgctxt "figure:rea-investigation-flow.svg"
msgid "Code / references /"
msgstr "코드 / 참조 /"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:39
msgctxt "figure:rea-investigation-flow.svg"
msgid "unknowns"
msgstr "미확인 사항"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:40
msgctxt "figure:rea-investigation-flow.svg"
msgid "4. Use what you learn"
msgstr "4. 결과 활용"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:41
msgctxt "figure:rea-investigation-flow.svg"
msgid "Your agent"
msgstr "에이전트"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:42
msgctxt "figure:rea-investigation-flow.svg"
msgid "Explain / implement / test"
msgstr "설명 / 구현 / 테스트"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:43
msgctxt "figure:rea-investigation-flow.svg"
msgid "Analysis tools"
msgstr "분석 도구"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:44
msgctxt "figure:rea-investigation-flow.svg"
msgid "Local analysis adapters"
msgstr "로컬 분석 어댑터"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/rea-investigation-flow.svg:45
msgctxt "figure:rea-investigation-flow.svg"
msgid "Follow-up question"
msgstr "추가 질문"
#: website/public/assets/figures/th04-bullet-ring.svg:2
msgctxt "figure:th04-bullet-ring.svg"
msgid "TH04: spacing and aiming a ring of bullets"
msgstr "TH04:간격을 두고를 목표로 반지의 총알"
#: website/public/assets/figures/th04-bullet-ring.svg:3
msgctxt "figure:th04-bullet-ring.svg"
msgid ""
"A full clockwise turn has 256 angle units. Sixteen bullets start at angles "
"zero, sixteen, thirty-two, through 240. Adding an example player direction "
"of forty turns all sixteen directions together; the first bullet points at "
"the player. Template rotation is zero."
msgstr ""
"전체 시계 방향 회전에는 256 개의 각도 단위가 있습니다. 16 개의 총알은 240 을 통해 0,16,32 각도에서 시작합니다. 40 "
"의 예제 플레이어 방향을 추가하면 16 개의 방향이 모두 합쳐집니다.첫 번째 총알은 플레이어를 가리키고 있습니다. 템플릿 회전은 0 "
"입니다."
#: website/public/assets/figures/th04-bullet-ring.svg:24
msgctxt "figure:th04-bullet-ring.svg"
msgid "Fixed ring"
msgstr "고정 링"
#: website/public/assets/figures/th04-bullet-ring.svg:25
msgctxt "figure:th04-bullet-ring.svg"
msgid "First bullet: angle 0"
msgstr "첫 번째 총알:각도 0"
#: website/public/assets/figures/th04-bullet-ring.svg:26
msgctxt "figure:th04-bullet-ring.svg"
msgid "Aimed ring"
msgstr "조준 링"
#: website/public/assets/figures/th04-bullet-ring.svg:27
msgctxt "figure:th04-bullet-ring.svg"
msgid "First bullet: player direction"
msgstr "첫 번째 총알:플레이어 방향"
# Reviewed for technical meaning and concise diagram labels.
#: website/public/assets/figures/th04-bullet-ring.svg:64
#: website/public/assets/figures/th04-bullet-ring.svg:102
msgctxt "figure:th04-bullet-ring.svg"
msgid "Origin"
msgstr "원점"
#: website/public/assets/figures/th04-bullet-ring.svg:105
msgctxt "figure:th04-bullet-ring.svg"
msgid "Player"
msgstr "플레이어"
#: website/public/assets/figures/th04-bullet-ring.svg:110
msgctxt "figure:th04-bullet-ring.svg"
msgid "Same spacing: 256 ÷ 16 = 16 angle units = 22.5°"
msgstr "같은 간격:256÷16=16 각도 단위=22.5°"
#: website/public/blog/index.html:114
#: website/public/blog/reverse-engineering-models/index.html:114
#: website/public/blog/touhou-reconstruction/index.html:114
#: website/public/examples/dino-lab/index.html:115
#: website/public/faq/index.html:114
#: website/public/first-investigation/index.html:114
#: website/public/get-started/index.html:114
#: website/public/guides/browser/index.html:114
#: website/public/guides/index.html:114
#: website/public/guides/javascript/index.html:114
#: website/public/guides/native/index.html:114 website/public/index.html:116
#: website/public/showcase/aegis/index.html:115
#: website/public/showcase/ctf/index.html:114
#: website/public/showcase/dx-ball/index.html:114
#: website/public/showcase/index.html:114
#: website/public/showcase/notion/index.html:114
#: website/public/showcase/th04/index.html:114
msgctxt "shared"
msgid "Showcases"
msgstr "사례"
#: website/public/blog/index.html:115
#: website/public/blog/reverse-engineering-models/index.html:115
#: website/public/blog/touhou-reconstruction/index.html:115
#: website/public/examples/dino-lab/index.html:116
#: website/public/faq/index.html:115
#: website/public/first-investigation/index.html:115
#: website/public/get-started/index.html:115
#: website/public/guides/browser/index.html:115
#: website/public/guides/index.html:115
#: website/public/guides/javascript/index.html:115
#: website/public/guides/native/index.html:115 website/public/index.html:117
#: website/public/showcase/aegis/index.html:116
#: website/public/showcase/ctf/index.html:115
#: website/public/showcase/dx-ball/index.html:115
#: website/public/showcase/index.html:115
#: website/public/showcase/notion/index.html:115
#: website/public/showcase/th04/index.html:115
msgctxt "shared"
msgid "Blog"
msgstr "블로그"
#: website/public/blog/index.html:113
#: website/public/blog/reverse-engineering-models/index.html:113
#: website/public/blog/touhou-reconstruction/index.html:113
#: website/public/examples/dino-lab/index.html:114
#: website/public/faq/index.html:113
#: website/public/first-investigation/index.html:113
#: website/public/get-started/index.html:113
#: website/public/guides/browser/index.html:113
#: website/public/guides/index.html:113
#: website/public/guides/javascript/index.html:113
#: website/public/guides/native/index.html:113 website/public/index.html:115
#: website/public/showcase/aegis/index.html:114
#: website/public/showcase/ctf/index.html:113
#: website/public/showcase/dx-ball/index.html:113
#: website/public/showcase/index.html:113
#: website/public/showcase/notion/index.html:113
#: website/public/showcase/th04/index.html:113
msgctxt "shared"
msgid "Get started"
msgstr "시작하기"
#: website/public/blog/index.html:116
#: website/public/blog/reverse-engineering-models/index.html:116
#: website/public/blog/touhou-reconstruction/index.html:116
#: website/public/examples/dino-lab/index.html:117
#: website/public/faq/index.html:116
#: website/public/first-investigation/index.html:116
#: website/public/get-started/index.html:116
#: website/public/guides/browser/index.html:116
#: website/public/guides/index.html:116
#: website/public/guides/javascript/index.html:116
#: website/public/guides/native/index.html:116 website/public/index.html:118
#: website/public/showcase/aegis/index.html:117
#: website/public/showcase/ctf/index.html:116
#: website/public/showcase/dx-ball/index.html:116
#: website/public/showcase/index.html:116
#: website/public/showcase/notion/index.html:116
#: website/public/showcase/th04/index.html:116
msgctxt "shared"
msgid "Guides"
msgstr "가이드"
#: website/public/blog/index.html:236
#: website/public/blog/reverse-engineering-models/index.html:875
#: website/public/blog/touhou-reconstruction/index.html:1072
#: website/public/examples/dino-lab/index.html:467
#: website/public/faq/index.html:565
#: website/public/first-investigation/index.html:515
#: website/public/get-started/index.html:874
#: website/public/guides/browser/index.html:499
#: website/public/guides/index.html:274
#: website/public/guides/javascript/index.html:495
#: website/public/guides/native/index.html:501 website/public/index.html:1183
#: website/public/showcase/aegis/index.html:800
#: website/public/showcase/ctf/index.html:769
#: website/public/showcase/dx-ball/index.html:777
#: website/public/showcase/index.html:309
#: website/public/showcase/notion/index.html:623
#: website/public/showcase/th04/index.html:792
msgctxt "shared"
msgid "Source"
msgstr "소스 코드"
#: website/public/blog/index.html:237
#: website/public/blog/reverse-engineering-models/index.html:876
#: website/public/blog/touhou-reconstruction/index.html:1073
#: website/public/examples/dino-lab/index.html:468
#: website/public/faq/index.html:566
#: website/public/first-investigation/index.html:516
#: website/public/get-started/index.html:875
#: website/public/guides/browser/index.html:500
#: website/public/guides/index.html:275
#: website/public/guides/javascript/index.html:496
#: website/public/guides/native/index.html:502 website/public/index.html:1184
#: website/public/showcase/aegis/index.html:801
#: website/public/showcase/ctf/index.html:770
#: website/public/showcase/dx-ball/index.html:778
#: website/public/showcase/index.html:310
#: website/public/showcase/notion/index.html:624
#: website/public/showcase/th04/index.html:793
msgctxt "shared"
msgid "MIT license"
msgstr "MIT 라이선스"
#: website/public/blog/index.html:238
#: website/public/blog/reverse-engineering-models/index.html:877
#: website/public/blog/touhou-reconstruction/index.html:1074
#: website/public/examples/dino-lab/index.html:469
#: website/public/faq/index.html:567
#: website/public/first-investigation/index.html:517
#: website/public/get-started/index.html:876
#: website/public/guides/browser/index.html:501
#: website/public/guides/index.html:276
#: website/public/guides/javascript/index.html:497
#: website/public/guides/native/index.html:503 website/public/index.html:1185
#: website/public/showcase/aegis/index.html:802
#: website/public/showcase/ctf/index.html:771
#: website/public/showcase/dx-ball/index.html:779
#: website/public/showcase/index.html:311
#: website/public/showcase/notion/index.html:625
#: website/public/showcase/th04/index.html:794
msgctxt "shared"
msgid "Join the community"
msgstr "커뮤니티 참여"
#: website/public/blog/index.html:239
#: website/public/blog/reverse-engineering-models/index.html:878
#: website/public/blog/touhou-reconstruction/index.html:1075
#: website/public/examples/dino-lab/index.html:470
#: website/public/faq/index.html:568
#: website/public/first-investigation/index.html:518
#: website/public/get-started/index.html:877
#: website/public/guides/browser/index.html:502
#: website/public/guides/index.html:277
#: website/public/guides/javascript/index.html:498
#: website/public/guides/native/index.html:504 website/public/index.html:1186
#: website/public/showcase/aegis/index.html:803
#: website/public/showcase/ctf/index.html:772
#: website/public/showcase/dx-ball/index.html:780
#: website/public/showcase/index.html:312
#: website/public/showcase/notion/index.html:626
#: website/public/showcase/th04/index.html:795
msgctxt "shared"
msgid "Follow us on X"
msgstr "X에서 팔로우"
#: website/public/examples/dino-lab/index.html:306
msgctxt "page:examples/dino-lab/index.html"
msgid "REA · selected script source"
msgstr "REA *선택한 스크립트 소스"
#: website/public/first-investigation/index.html:374
msgctxt "page:first-investigation/index.html"
msgid "Source"
msgstr "소스 코드"
#: website/public/first-investigation/index.html:428
msgctxt "page:first-investigation/index.html"
msgid "Expected formatter output"
msgstr "예상 포맷터 출력"
#: website/public/guides/index.html:219
msgctxt "page:guides/index.html"
msgid "Instructions"
msgstr "지침"
#: website/public/guides/index.html:220
msgctxt "page:guides/index.html"
msgid "Caller"
msgstr "호출자"
#: website/public/guides/index.html:221
msgctxt "page:guides/index.html"
msgid "Constants"
msgstr "상수"
#: website/public/guides/index.html:222
msgctxt "page:guides/index.html"
msgid "C function"
msgstr "C 기능"
#: website/public/guides/index.html:237
msgctxt "page:guides/index.html"
msgid "Button"
msgstr "버튼"
#: website/public/guides/index.html:238
msgctxt "page:guides/index.html"
msgid "Preload API"
msgstr "사전 로드"
#: website/public/guides/index.html:239
msgctxt "page:guides/index.html"
msgid "IPC"
msgstr "2015 년"
#: website/public/guides/index.html:239
msgctxt "page:guides/index.html"
msgid "CSV file"
msgstr "CSV 파일"
#: website/public/guides/index.html:259
msgctxt "page:guides/index.html"
msgid "Your click"
msgstr "클릭"
#: website/public/guides/index.html:260
msgctxt "page:guides/index.html"
msgid "Captured request"
msgstr "캡처된 요청"
#: website/public/guides/index.html:261
msgctxt "page:guides/index.html"
msgid "Export script"
msgstr "스크립트 내보내기"
#: website/public/guides/javascript/index.html:357
msgctxt "page:guides/javascript/index.html"
msgid "REA result · summary.ipc excerpt"
msgstr "REA결과·요약입니다.발췌"
#: website/public/guides/native/index.html:384
msgctxt "page:guides/native/index.html"
msgid "REA instruction excerpt · 0x406409"
msgstr "REA명령 발췌·0x406409"
#: website/public/guides/native/index.html:398
msgctxt "page:guides/native/index.html"
msgid "REA caller excerpt · 0x411f5b"
msgstr "REA자 발췌·0x411f5b"
#: website/public/guides/native/index.html:412
msgctxt "page:guides/native/index.html"
msgid "REA byte results · interpreted as little-endian doubles"
msgstr "REA바이트로 결합하는 것으로 해석 little-endian 복식"
#: website/public/guides/native/index.html:429
msgctxt "page:guides/native/index.html"
msgid "Recovered C · excerpt"
msgstr "복구 된 C*발췌"
#: website/public/index.html:232
msgctxt "page:index.html"
msgid "See how REA works ↓"
msgstr "REA 사용 방식 보기 ↓"
#: website/public/index.html:239
msgctxt "page:index.html"
msgid "Showcases →"
msgstr "전시→"
#: website/public/index.html:749
msgctxt "page:index.html"
msgid "Selected settings from the inspected script"
msgstr "검사된 스크립트에서 선택한 설정"
#: website/public/index.html:921
msgctxt "page:index.html"
msgid "Readable summary of the % handler"
msgstr "%처리기의 읽을 수 있는 요약"
#: website/public/index.html:985
msgctxt "page:index.html"
msgid "REA · selected original instructions"
msgstr "REA·선택한 원래의 지침"
#: website/public/index.html:996
msgctxt "page:index.html"
msgid "Operator IDs · Microsoft’s source"
msgstr "운영자의 신분증*마이크로 소프트의 소스"
#: website/public/index.html:1170
msgctxt "page:index.html"
msgid "Follow @reatools on X"
msgstr "쨩챌쨔챈쨀"
#: website/public/showcase/aegis/index.html:399
#: website/public/showcase/aegis/index.html:431
msgctxt "page:showcase/aegis/index.html"
msgid "Agent → REA"
msgstr "에이전트→REA"
#: website/public/showcase/aegis/index.html:409
msgctxt "page:showcase/aegis/index.html"
msgid "REA → agent · selected results"
msgstr "REA→에이전트·선택한 결과"
#: website/public/showcase/aegis/index.html:445
msgctxt "page:showcase/aegis/index.html"
msgid "REA → agent · methods and callers"
msgstr "REA→에이전트·방법과 호출하는 함수"
#: website/public/showcase/aegis/index.html:515
msgctxt "page:showcase/aegis/index.html"
msgid "REA · selected decompiled Java"
msgstr "REA·선택한 디컴파일된 Java"
#: website/public/showcase/aegis/index.html:545
msgctxt "page:showcase/aegis/index.html"
msgid "Readable summary · agent's interpretation"
msgstr "읽을 수있는 요약*에이전트의 해석"
#: website/public/showcase/aegis/index.html:600
msgctxt "page:showcase/aegis/index.html"
msgid "REA · generateOTP, complete body"
msgstr "REA·generateOTP,완전한 신체"
#: website/public/showcase/aegis/index.html:718
msgctxt "page:showcase/aegis/index.html"
msgid "Download Aegis APK"
msgstr "다운로드AegisAPK"
#: website/public/showcase/aegis/index.html:722
msgctxt "page:showcase/aegis/index.html"
msgid "Download Android analysis provider"
msgstr "안드로이드 분석 공급자 다운로드"
#: website/public/showcase/ctf/index.html:302
#: website/public/showcase/ctf/index.html:338
msgctxt "page:showcase/ctf/index.html"
msgid "Agent → REA"
msgstr "에이전트→REA"
#: website/public/showcase/ctf/index.html:318
msgctxt "page:showcase/ctf/index.html"
msgid "REA → agent · selected results"
msgstr "REA→에이전트·선택한 결과"
#: website/public/showcase/ctf/index.html:350
msgctxt "page:showcase/ctf/index.html"
msgid "REA → agent · selected instructions"
msgstr "REA→에이전트·선택 지침"
#: website/public/showcase/ctf/index.html:413
msgctxt "page:showcase/ctf/index.html"
msgid "Agent → REA · read_bytes"
msgstr "에이전트→REA·read_bytes"
#: website/public/showcase/ctf/index.html:420
msgctxt "page:showcase/ctf/index.html"
msgid "REA → agent · seventh entries"
msgstr "REA→agent·일곱 번째 항목"
#: website/public/showcase/ctf/index.html:688
msgctxt "page:showcase/ctf/index.html"
msgid "Original executable · SHA-256"
msgstr "원 실행·SHA-256"
#: website/public/showcase/ctf/index.html:724
msgctxt "page:showcase/ctf/index.html"
msgid "Download the original challenge"
msgstr "원래 도전 다운로드"
#: website/public/showcase/ctf/index.html:728
msgctxt "page:showcase/ctf/index.html"
msgid "Download solver"
msgstr "다운로드 솔버"
#: website/public/showcase/dx-ball/index.html:329
msgctxt "page:showcase/dx-ball/index.html"
msgid "REA result · pseudocode excerpt"
msgstr "REA결과·의사 발췌문"
#. {ph0}: <code>analyze_function</code>
#: website/public/showcase/dx-ball/index.html:352
#: website/public/showcase/dx-ball/index.html:376
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "Agent → REA · {ph0}"
msgstr "에이전트→ REA · {ph0}"
#: website/public/showcase/dx-ball/index.html:358
msgctxt "page:showcase/dx-ball/index.html"
msgid "REA → agent · instruction excerpt"
msgstr "REA→에이전트·사용법 발췌문"
#: website/public/showcase/dx-ball/index.html:382
msgctxt "page:showcase/dx-ball/index.html"
msgid "REA → agent · caller excerpt"
msgstr "REA→agent·호출하는 함수 발췌문"
#. {ph0}: <code>read_bytes</code>
#: website/public/showcase/dx-ball/index.html:400
#, python-brace-format
msgctxt "page:showcase/dx-ball/index.html"
msgid "Agent → REA · two {ph0} requests"
msgstr "에이전트→ REA *두 {ph0} 요청"
#: website/public/showcase/dx-ball/index.html:410
msgctxt "page:showcase/dx-ball/index.html"
msgid "REA byte results · decoded as doubles"
msgstr "REA결과의 바이트·디코딩으로 복식"
#: website/public/showcase/dx-ball/index.html:763
msgctxt "page:showcase/dx-ball/index.html"
msgid "Start with your own target"
msgstr "너의 자신의 표적에 시작"
#: website/public/showcase/index.html:212
msgctxt "page:showcase/index.html"
msgid "APK"
msgstr "APK"
#: website/public/showcase/index.html:213
msgctxt "page:showcase/index.html"
msgid "Generating code"
msgstr "코드 생성"
#: website/public/showcase/index.html:214
msgctxt "page:showcase/index.html"
msgid "Recovered rule"
msgstr "복구 된 규칙"
#: website/public/showcase/index.html:215
msgctxt "page:showcase/index.html"
msgid "Adjustable clock"
msgstr "조정 가능한 시계"
#: website/public/showcase/index.html:230
msgctxt "page:showcase/index.html"
msgid "Binary"
msgstr "이진"
#: website/public/showcase/index.html:231
msgctxt "page:showcase/index.html"
msgid "Checking code"
msgstr "코드 확인"
#: website/public/showcase/index.html:232
msgctxt "page:showcase/index.html"
msgid "Equations"
msgstr "방정식"
#: website/public/showcase/index.html:233
msgctxt "page:showcase/index.html"
msgid "Correct!"
msgstr "맞아요!"
#: website/public/showcase/index.html:249
msgctxt "page:showcase/index.html"
msgid "Executable"
msgstr "실행 가능"
#: website/public/showcase/index.html:250
msgctxt "page:showcase/index.html"
msgid "REA findings"
msgstr "REA결과"
#: website/public/showcase/index.html:251
msgctxt "page:showcase/index.html"
msgid "Recovered C"
msgstr "복구 된"
#: website/public/showcase/index.html:252
msgctxt "page:showcase/index.html"
msgid "Validation"
msgstr "유효성 검사"
#: website/public/showcase/index.html:267
msgctxt "page:showcase/index.html"
msgid "Packaged app"
msgstr "패키지 앱"
#: website/public/showcase/index.html:268
msgctxt "page:showcase/index.html"
msgid "Exposed API"
msgstr "노출"
#: website/public/showcase/index.html:269
msgctxt "page:showcase/index.html"
msgid "IPC wrappers"
msgstr "래퍼"
#: website/public/showcase/index.html:270
msgctxt "page:showcase/index.html"
msgid "Clipboard"
msgstr "클립보드"
#: website/public/showcase/index.html:285
msgctxt "page:showcase/index.html"
msgid "Original DOS code"
msgstr "원래 도스 코드"
#: website/public/showcase/index.html:286
msgctxt "page:showcase/index.html"
msgid "REA instructions"
msgstr "REA지침"
#: website/public/showcase/index.html:287
msgctxt "page:showcase/index.html"
msgid "Angle calculation"
msgstr "각도 계산"
#: website/public/showcase/index.html:288
msgctxt "page:showcase/index.html"
msgid "Bullet ring"
msgstr "총알 반지"
#: website/public/showcase/notion/index.html:304
msgctxt "page:showcase/notion/index.html"
msgid "Exposed page API"
msgstr "노출된 페이지"
#: website/public/showcase/notion/index.html:310
msgctxt "page:showcase/notion/index.html"
msgid "Renderer IPC call"
msgstr "렌더러 호출"
#: website/public/showcase/notion/index.html:472
msgctxt "page:showcase/notion/index.html"
msgid "Sent to the system clipboard"
msgstr "시스템 클립보드로 전송됨"
#: website/public/showcase/notion/index.html:480
msgctxt "page:showcase/notion/index.html"
msgid "Saved locally by Notion"
msgstr "로컬로 저장해Notion"
#: website/public/showcase/notion/index.html:525
msgctxt "page:showcase/notion/index.html"
msgid "Markdown input"
msgstr "마크다운 입력"
#: website/public/showcase/notion/index.html:532
msgctxt "page:showcase/notion/index.html"
msgid "Structured parser output · excerpt"
msgstr "구조화된 파서 출력*발췌"
#: website/public/showcase/notion/index.html:609
msgctxt "page:showcase/notion/index.html"
msgid "Analyze your own app"
msgstr "자신의 앱 분석"
#: website/public/showcase/th04/index.html:369
msgctxt "page:showcase/th04/index.html"
msgid "Agent → REA"
msgstr "에이전트→REA"
#: website/public/showcase/th04/index.html:378
msgctxt "page:showcase/th04/index.html"
msgid "REA → agent · selected fields"
msgstr "REA→에이전트·선택된 분야"
#. {ph0}: <code>analyze_function</code>
#: website/public/showcase/th04/index.html:397
#, python-brace-format
msgctxt "page:showcase/th04/index.html"
msgid "Agent → REA · {ph0}"
msgstr "에이전트→ REA · {ph0}"
#: website/public/showcase/th04/index.html:403
msgctxt "page:showcase/th04/index.html"
msgid "REA → agent · instruction excerpt"
msgstr "REA→에이전트·사용법 발췌문"
#: website/public/showcase/th04/index.html:424
msgctxt "page:showcase/th04/index.html"
msgid "Same function result · aim excerpt"
msgstr "동일한 기능 결과*목표 발췌"
#: website/public/showcase/th04/index.html:433
msgctxt "page:showcase/th04/index.html"
msgid "Corresponding maintained C++"
msgstr "해당 유지 관리 C++"
#: website/public/showcase/th04/index.html:613
msgctxt "page:showcase/th04/index.html"
msgid "Ring macro · TH04 branch, excerpt"
msgstr "매크로 반지·TH04점,발췌"
#: website/public/showcase/th04/index.html:623
msgctxt "page:showcase/th04/index.html"
msgid "Angle and velocity · source excerpt"
msgstr "각도와 속도*소스 발췌"
#: website/public/assets/home.js:29
msgctxt "runtime"
msgid "Press % to see what happens to 10."
msgstr "%를 눌러 10 에 무슨 일이 일어나는지 확인합니다."
#: website/public/assets/home.js:32
msgctxt "runtime"
msgid "10% of 200 is 20. Press = to add it."
msgstr "200 의 10%는 20 입니다. 를 눌러=를 추가 할 수 있습니다."
#: website/public/assets/home.js:33
msgctxt "runtime"
msgid "For multiplication, 10 becomes 0.1. Press = to multiply."
msgstr "곱셈의 경우 10 은 0.1 이 됩니다. =를 눌러 곱합니다."
#: scripts/website_i18n.py
msgctxt "runtime"
msgid "Translation is being updated. Read this page in English for now."
msgstr "번역이 업데이트되고 있습니다. 지금 이 페이지를 영어로 읽어보세요."
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="faq-analysis-prompt" >
#. {ph3}: <span translate="no">/absolute/path/to/app</span>
#. {ph4}: </span >
#. {ph5}: <span class="terminal-cursor" aria-hidden="true">
#. {ph6}: </span>
#: website/public/faq/index.html:425
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to analyze {ph3} and explain how it exports data. "
"Show the relevant code and source locations.{ph4}{ph5}{ph6}"
msgstr ""
"{ph0}›{ph1}{ph2}REA로 {ph3}를 분석하고 데이터를 어떻게 내보내는지 설명해 줘. 관련 코드와 소스 위치도 보여 "
"줘.{ph4}{ph5}{ph6}"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="first-install-prompt" >
#. {ph3}: <span translate="no">npx rea-agents@latest setup</span>
#. {ph4}: </span >
#. {ph5}: <span class="terminal-cursor" aria-hidden="true">
#. {ph6}: </span>
#: website/public/first-investigation/index.html:243
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Install REA and connect it to this coding agent using {ph3}."
" Show me the setup plan for approval, then verify the "
"installation.{ph4}{ph5}{ph6}"
msgstr ""
"{ph0}›{ph1}{ph2}{ph3}을 사용해 REA를 설치하고 이 코딩 에이전트에 연결해 줘. 먼저 설정 변경 계획을 보여 주고 내 "
"승인을 받은 뒤 실행해 줘. 마지막으로 설치를 확인해 줘.{ph4}{ph5}{ph6}"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="first-analysis-prompt" >
#. {ph3}: <span translate="no" >https://rea.tools/examples/notes-
#. example.zip</span >
#. {ph4}: <span translate="no">notes.csv</span>
#. {ph5}: </span >
#. {ph6}: <span class="terminal-cursor" aria-hidden="true">
#. {ph7}: </span>
#: website/public/first-investigation/index.html:293
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Download {ph3} into a new example folder and unpack it. Use "
"REA to find what happens when I click Export notes. Show where {ph4} is "
"written, which fields it contains, and the relevant files and "
"lines.{ph5}{ph6}{ph7}"
msgstr ""
"{ph0}›{ph1}{ph2}다운로드 {ph3} 새 예제 폴더에 넣고 압축을 풉니 다. 사용 REA 노트 내보내기를 클릭하면 어떤 일이 "
"발생하는지 찾을 수 있습니다. 어디에 표시 {ph4} 어떤 필드가 포함되어 있는지,그리고 관련 파일과 줄들이 쓰여져 "
"있습니다.{ph5}{ph6}{ph7}"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="agent-install-prompt" >
#. {ph3}: <span translate="no">npx rea-agents@latest setup</span>
#. {ph4}: </span >
#. {ph5}: <span class="terminal-cursor" aria-hidden="true">
#. {ph6}: </span>
#: website/public/get-started/index.html:432
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Install REA and connect it to this coding agent using {ph3}."
" Show me the setup plan for approval, then verify the "
"installation.{ph4}{ph5}{ph6}"
msgstr ""
"{ph0}›{ph1}{ph2}{ph3}을 사용해 REA를 설치하고 이 코딩 에이전트에 연결해 줘. 먼저 설정 변경 계획을 보여 주고 내 "
"승인을 받은 뒤 실행해 줘. 마지막으로 설치를 확인해 줘.{ph4}{ph5}{ph6}"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="home-install-prompt" >
#. {ph3}: <span translate="no">npx rea-agents@latest setup</span>
#. {ph4}: </span >
#. {ph5}: <span class="terminal-cursor" aria-hidden="true">
#. {ph6}: </span>
#: website/public/index.html:269
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}›{ph1}{ph2}Install REA and connect it to this coding agent using {ph3}."
" Show me the setup plan for approval, then verify the "
"installation.{ph4}{ph5}{ph6}"
msgstr ""
"{ph0}›{ph1}{ph2}{ph3}을 사용해 REA를 설치하고 이 코딩 에이전트에 연결해 줘. 먼저 설정 변경 계획을 보여 주고 내 "
"승인을 받은 뒤 실행해 줘. 마지막으로 설치를 확인해 줘.{ph4}{ph5}{ph6}"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="website-project-prompt" >
#. {ph3}: <span translate="no">https://rea.tools/</span>
#. {ph4}: </span >
#. {ph5}: <span class="terminal-cursor" aria-hidden="true">
#. {ph6}: </span>
#: website/public/index.html:1072
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to inspect {ph3}. Clone this website for "
"me.{ph4}{ph5}{ph6}"
msgstr "{ph0}›{ph1}{ph2}사용 REA 검사 {ph3}. 나를 위해이 웹 사이트를 복제.{ph4}{ph5}{ph6}"
#. {ph0}: <span translate="no">dino-speed.js</span>
#: website/public/examples/dino-lab/index.html:320
#, python-brace-format
msgctxt "page:examples/dino-lab/index.html"
msgid "Reconstruction · {ph0}"
msgstr "재건 · {ph0}"
# Reviewed for readable instructions and accurate software terminology.
#. {ph0}: <span translate="no">Node.js</span>
#: website/public/faq/index.html:218
#, python-brace-format
msgctxt "page:faq/index.html"
msgid ""
"With {ph0} and npm available, run setup, choose your coding agent and review"
" the proposed changes."
msgstr "{ph0}와 npm을 준비한 뒤 설정 명령을 실행하세요. 사용할 코딩 에이전트를 선택하고 변경 계획을 확인하세요."
#. {ph0}: <span translate="no">Node.js</span>
#: website/public/first-investigation/index.html:202
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "A supplied example · {ph0} and npm · Your coding agent"
msgstr "제공된 예·{ph0}및npm·코딩의 에이전트"
#. {ph0}: <span translate="no">Node.js</span>
#. {ph1}: <a href="../get-started/">
#. {ph2}: </a >
#: website/public/first-investigation/index.html:221
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"Use a coding agent such as Claude Code, Codex or Cursor. You’ll need {ph0} "
"and npm; the {ph1}setup guide lists supported versions{ph2}."
msgstr ""
"다음과 같은 코딩 에이전트 사용 Claude Code, Codex 또는 Cursor. 당신이 필요합니다 {ph0} 그리고 npm; "
"{ph1}설치 가이드 목록 지원되는 버전{ph2}."
#. {ph0}: <span class="flow-label" >
#. {ph1}: <span translate="no">renderer.js</span>
#. {ph2}: </span >
#. {ph3}: <span class="flow-node">
#. {ph4}: </span >
#. {ph5}: <span class="flow-note" >
#. {ph6}: <code>notes.exportCsv()</code>
#. {ph7}: </span >
#: website/public/first-investigation/index.html:339
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0}Page · {ph1}{ph2}{ph3}Export notes{ph4}{ph5}Calls {ph6}.{ph7}"
msgstr "{ph0}페이지 · {ph1}{ph2}{ph3}노트 내보내기{ph4}{ph5}통화 {ph6}.{ph7}"
#. {ph0}: <span class="flow-label" >
#. {ph1}: <span translate="no">preload.js</span>
#. {ph2}: </span >
#. {ph3}: <span class="flow-node">
#. {ph4}: <code>notes:export</code>
#. {ph5}: </span >
#. {ph6}: <span class="flow-note" >
#. {ph7}: </span >
#: website/public/first-investigation/index.html:347
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}Bridge · {ph1}{ph2}{ph3}{ph4}{ph5}{ph6}Sends a named message to the "
"main process.{ph7}"
msgstr "{ph0}다리 · {ph1}{ph2}{ph3}{ph4}{ph5}{ph6}주 프로세스에 명명된 메시지를 보냅니다.{ph7}"
#. {ph0}: <span class="flow-label" >
#. {ph1}: <span translate="no">main.js</span>
#. {ph2}: </span >
#. {ph3}: <span class="flow-node" >
#. {ph4}: <span translate="no">notes.csv</span>
#. {ph5}: </span >
#. {ph6}: <span class="flow-note" >
#. {ph7}: <code>csv.js</code>
#. {ph8}: </span >
#: website/public/first-investigation/index.html:355
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}Handler · {ph1}{ph2}{ph3}Write {ph4}{ph5}{ph6}Calls the formatter in "
"{ph7} and writes the file.{ph8}"
msgstr ""
"{ph0}관리자 · {ph1}{ph2}{ph3}쓰기 {ph4}{ph5}{ph6}포맷터를 호출합니다 {ph7} 그리고 파일을 "
"씁니다.{ph8}"
#. {ph0}: <span translate="no">main.js</span>
#: website/public/first-investigation/index.html:373
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0} · lines 8–12"
msgstr "{ph0} *라인 8-12"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="first-check-prompt" >
#. {ph3}: <span translate="no">Hello, "REA"</span>
#. {ph4}: <span translate="no">toCsv</span>
#. {ph5}: <span translate="no">Node.js</span>
#. {ph6}: </span >
#. {ph7}: <span class="terminal-cursor" aria-hidden="true">
#. {ph8}: </span>
#: website/public/first-investigation/index.html:415
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Predict the CSV for a note with id 1 and title {ph3}. Then "
"run the example’s {ph4} formatter with {ph5} to check it. Show the "
"prediction and actual output.{ph6}{ph7}{ph8}"
msgstr ""
"{ph0}›{ph1}{ph2}예측 CSV 아이디 1 과 제목이 있는 메모 {ph3}. 그런 다음 예제를 실행하십시오 {ph4} 포맷터 "
"{ph5} 그것을 확인합니다. 예측 및 실제 출력을 표시합니다.{ph6}{ph7}{ph8}"
#. {ph0}: <span translate="no">Node.js</span>
#: website/public/first-investigation/index.html:433
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid ""
"The title stays in one quoted field; each quotation mark is doubled. This "
"checks the formatter directly with {ph0}."
msgstr "제목은 하나의 인용 필드에 남아 있으며 각 인용 부호는 두 배로 표시됩니다. 이것은 포맷터를 직접 확인합니다. {ph0}."
#. {ph0}: <span translate="no">Node.js</span>
#: website/public/first-investigation/index.html:446
#, python-brace-format
msgctxt "page:first-investigation/index.html"
msgid "{ph0} · CSV formatter"
msgstr "{ph0}·CSV포맷터"
#. {ph0}: <span translate="no">Node.js</span>
#. {ph1}: <span translate="no">Node.js</span>
#: website/public/get-started/index.html:200
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"You'll need {ph0} 22 (22.19+), 24 (24.11+) or 26+. npm comes with {ph1}."
msgstr "당신이 필요합니다 {ph0} 22 (22.19+), 24 (24.11+) 또는 26+. npm 함께 제공 {ph1}."
#. {ph0}: <span translate="no">Node.js</span>
#: website/public/get-started/index.html:205
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid "Don't have {ph0}, or not sure?"
msgstr "이 없{ph0},또는 확신할 수 없으십니까?"
#. {ph0}: <code>node -v</code>
#. {ph1}: <span translate="no">Node.js</span>
#: website/public/get-started/index.html:224
#, python-brace-format
msgctxt "page:get-started/index.html"
msgid ""
"If {ph0} prints v22.19+, v24.11+ or v26+, you're ready. If it prints an "
"older version or \"not recognized\" / \"command not found\", install {ph1} "
"24 LTS:"
msgstr ""
"만약 {ph0} 이 응용 프로그램을 설치하려면 다음을 수행하십시오. 이전 버전 또는\"인식되지 않음\"/\"명령을 찾을 수 없음\"을 "
"인쇄하는 경우 다음을 설치하십시오 {ph1} 24 리터:"
#. {ph0}: <span translate="no">export.js</span>
#: website/public/guides/browser/index.html:441
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid "{ph0} · example source excerpt"
msgstr "{ph0} *예제 소스 발췌"
#. {ph0}: <a href="../../examples/notes-web/">
#. {ph1}: </a>
#. {ph2}: <a href="../../examples/notes-web/export.js" download >
#. {ph3}: <span translate="no">export.js</span>
#. {ph4}: </a >
#. {ph5}: <a href="../../examples/notes-web/notes.json" download >
#. {ph6}: <span translate="no">notes.json</span>
#. {ph7}: </a >
#: website/public/guides/browser/index.html:459
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"{ph0}Open the example{ph1} · {ph2}Download {ph3}{ph4} · {ph5}Download "
"{ph6}{ph7}"
msgstr "{ph0}예제 열기{ph1} · {ph2}다운로드 {ph3}{ph4} · {ph5}다운로드 {ph6}{ph7}"
#. {ph0}: <span translate="no">renderer.js</span>
#: website/public/guides/javascript/index.html:309
#: website/public/guides/javascript/index.html:325
#: website/public/guides/javascript/index.html:340
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid "{ph0} · example source"
msgstr "{ph0} *예제 소스"
#. {ph0}: <code>notes-example</code>
#. {ph1}: <span translate="no">Node.js</span>
#: website/public/guides/javascript/index.html:374
#, python-brace-format
msgctxt "page:guides/javascript/index.html"
msgid ""
"Download the example and unzip it. The archive contains the complete {ph0} "
"folder. Analyze it with {ph1} and npm; Electron is not needed for this "
"example."
msgstr ""
"예제를 다운로드하고 압축을 풉니 다. 아카이브에는 전체 {ph0} 폴더 그것을 분석 {ph1} 그리고 npm; Electron 이 "
"예제에는 필요하지 않습니다."
#. {ph0}: <span translate="no">Node.js</span>
#. {ph1}: <a href="get-started/">
#. {ph2}: </a>
#: website/public/index.html:294
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"First time, or missing {ph0} or a coding agent? {ph1}Follow the step-by-step"
" setup guide →{ph2}"
msgstr "처음 또는 누락 {ph0} 아니면 코딩 에이전트? {ph1}단계별 설치 가이드를 따르십시오.{ph2}"
#. {ph0}: <strong >
#. {ph1}: <span translate="no">200 + 10%</span>
#. {ph2}: </strong >
#: website/public/index.html:318
#, python-brace-format
msgctxt "page:index.html"
msgid "One question: {ph0}why does Calculator give 220 for {ph1}?{ph2}"
msgstr "예를 들어: {ph0}계산기에서 {ph1}가 왜 220이 될까요?{ph2}"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="home-analysis-prompt" >
#. {ph3}: <span translate="no">200 + 10%</span>
#. {ph4}: </span >
#. {ph5}: <span class="terminal-cursor" aria-hidden="true">
#. {ph6}: </span>
#: website/public/index.html:506
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to inspect Windows Calculator. Why does {ph3} give "
"220?{ph4}{ph5}{ph6}"
msgstr "{ph0}›{ph1}{ph2}사용 REA 검사 Windows 계산기 왜 {ph3} 220 줘?{ph4}{ph5}{ph6}"
#. {ph0}: <span translate="no">index.js</span>
#: website/public/index.html:691
#, python-brace-format
msgctxt "page:index.html"
msgid "REA · loaded {ph0} · selected lines"
msgstr "REA *로드 {ph0} *선택한 라인"
#. {ph0}: <strong>
#. {ph1}: <span translate="no">200 + 10%</span>
#. {ph2}: </strong>
#: website/public/index.html:795
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"We saw why {ph0}{ph1} gives 220.{ph2} Now let’s recover the rules for both +"
" and ×, and try them."
msgstr ""
"우리는 이유를 보았다 {ph0}{ph1} 220 을 줍니다.{ph2} 이제+와 200 에 대한 규칙을 복구하고 시도해 보겠습니다."
#. {ph0}: <span class="flow-label" >
#. {ph1}: <span translate="no">calc.exe</span>
#. {ph2}: </span >
#. {ph3}: <span class="flow-node">
#. {ph4}: </span >
#. {ph5}: <span class="flow-note" >
#. {ph6}: <code>ms-calculator:</code>
#. {ph7}: </span >
#: website/public/index.html:952
#, python-brace-format
msgctxt "page:index.html"
msgid ""
"{ph0}01 · REA reads {ph1}{ph2}{ph3}It launches the Calculator "
"app{ph4}{ph5}The code opens {ph6}. The agent then selects the installed "
"app’s library.{ph7}"
msgstr ""
"{ph0}01 · REA 읽는다 {ph1}{ph2}{ph3}그것은 계산기 응용 프로그램을 시작합니다{ph4}{ph5}코드가 열립니다 "
"{ph6}. 그런 다음 에이전트는 설치된 앱의 라이브러리를 선택합니다.{ph7}"
#. {ph0}: <span class="prompt-symbol" aria-hidden="true">
#. {ph1}: </span >
#. {ph2}: <span id="aegis-prompt" >
#. {ph3}: <span translate="no">aegis-v3.4.3.apk</span>
#. {ph4}: </span >
#. {ph5}: <span class="terminal-cursor" aria-hidden="true">
#. {ph6}: </span>
#: website/public/showcase/aegis/index.html:278
#, python-brace-format
msgctxt "page:showcase/aegis/index.html"
msgid ""
"{ph0}›{ph1}{ph2}Use REA to inspect {ph3}. Find how it generates the six-"
"digit login code, explain why it changes every 30 seconds, and rebuild a "
"small demo where I can change the time.{ph4}{ph5}{ph6}"
msgstr ""
"{ph0}›{ph1}{ph2}REA로 {ph3}을 분석해 주세요. 6자리 로그인 코드가 어떻게 생성되고 왜 30초마다 바뀌는지 설명한 "
"뒤, 시간을 바꿔 볼 수 있는 작은 데모를 만들어 주세요.{ph4}{ph5}{ph6}"
#. {ph0}: <span translate="no">preload.js</span>
#: website/public/showcase/notion/index.html:342
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "tab_browser_view/{ph0} · API member"
msgstr "탭 _브라우저 _보기/{ph0} ·회원"
#. {ph0}: <span translate="no">preload.js</span>
#: website/public/showcase/notion/index.html:371
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "tab_browser_view/{ph0} · IPC helper"
msgstr "탭 _브라우저 _보기/{ph0} ·아이피 도우미"
#. {ph0}: <span translate="no">index.js</span>
#: website/public/showcase/notion/index.html:402
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "main/{ph0} · handler helper"
msgstr "주요/{ph0} *핸들러 도우미"
#. {ph0}: <span translate="no">index.js</span>
#: website/public/showcase/notion/index.html:430
#, python-brace-format
msgctxt "page:showcase/notion/index.html"
msgid "main/{ph0} · clipboard receiver"
msgstr "주요/{ph0} *클립 보드 수신기"
# Use the same label as the Get started navigation link. The arrow is
# decorative.
#. {ph0}: <span class="button-arrow" aria-hidden="true" data-i18n-skip
#. >→</span >
#: website/public/index.html:233
#, python-brace-format
msgctxt "page:index.html"
msgid "Get started {ph0}"
msgstr "시작하기 {ph0}"
#: website/public/assets/theme.js:52
msgctxt "runtime"
msgid "Switch to light mode"
msgstr "라이트 모드로 전환"
#: website/public/assets/theme.js:53
msgctxt "runtime"
msgid "Switch to dark mode"
msgstr "다크 모드로 전환"
#. {ph0}: <a
#. href="https://github.com/morluto/rea/blob/main/docs/guides/web/web-network-
#. captures.md" >
#. {ph1}: </a >
#: website/public/guides/browser/index.html:480
#, python-brace-format
msgctxt "page:guides/browser/index.html"
msgid ""
"For HTTP request and response bodies, use {ph0}Fiddler Everywhere: SAZ "
"captures, MCP and public skills{ph1}. Export SAZ or HAR 1.2 for offline REA "
"capture Evidence, or connect Everywhere's MCP server to inspect captured "
"traffic with your agent."
msgstr ""
"HTTP 요청과 응답 본문을 살펴보려면 {ph0}Fiddler Everywhere: SAZ 캡처, MCP 및 공개 스킬{ph1}을 "
"사용하세요. SAZ ?? HAR 1.2로 내보내면 REA에서 오프라인 캡처 Evidence를 얻을 수 있으며, Everywhere의 "
"MCP 서버를 연결하여 에이전트와 함께 캡처된 트래픽을 살펴볼 수도 있습니다."
#. {ph0}: <br />
#: website/public/blog/index.html:200
#, python-brace-format
msgctxt "page:blog/index.html"
msgid "Model specialization{ph0}Essay"
msgstr "전문 모델{ph0}에세이"
#: website/public/blog/index.html:202
msgctxt "page:blog/index.html"
msgid "Does reverse engineering need a bigger model?"
msgstr "리버스 엔지니어링에는 더 큰 모델이 필요할까?"
#: website/public/blog/index.html:203
msgctxt "page:blog/index.html"
msgid ""
"What Touhou reconstruction suggests about general models, specialist models "
"and learning from compiler feedback."
msgstr "Touhou 재구축 경험을 바탕으로 범용 모델, 전문 모델, 컴파일러 피드백을 통한 학습을 생각해 봅니다."
#: website/public/blog/index.html:210
msgctxt "page:blog/index.html"
msgid "By N0zoM1z0 · 13 October 2026"
msgstr "작성자: N0zoM1z0 · 2026년 10월 13일"
#: website/public/blog/reverse-engineering-models/index.html:103
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Skip to content"
msgstr "개인정보보호정책"
#. {ph0}: <a href="../../">
#. {ph1}: </a>
#. {ph2}: <a href="../">
#. {ph3}: </a>
#: website/public/blog/reverse-engineering-models/index.html:194
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}Home{ph1} / {ph2}Blog{ph3} / Models and RE"
msgstr "{ph0}홈{ph1} / {ph2}블로그{ph3} / 모델 및 리버스 엔지니어링"
#: website/public/blog/reverse-engineering-models/index.html:197
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Essay"
msgstr "에세이"
# Reviewed for technical meaning and readability; preserve the distinction
# between historical evidence and proposed experiments.
#: website/public/blog/reverse-engineering-models/index.html:198
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Does reverse engineering need a bigger model?"
msgstr "리버스 엔지니어링에 더 큰 모델이 필요할까?"
#: website/public/blog/reverse-engineering-models/index.html:199
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "By N0zoM1z0 · 13 October 2026"
msgstr "작성자: N0zoM1z0 · 2026년 10월 13일"
#: website/public/blog/reverse-engineering-models/index.html:201
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Takeaway"
msgstr "핵심 요점"
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:203
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Model capability changes the hypotheses an agent can find.{ph1} Later "
"sessions have solved problems that earlier work left unresolved."
msgstr ""
"{ph0}모델 기능은 AI 에이전트가 제안할 수 있는 가설에 영향을 미칩니다.{ph1} 이후 세션에서는 이전 작업에서 해결되지 않은 "
"문제를 해결했습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:211
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}A familiar compiler gives specialization something concrete to "
"learn.{ph1} Some exact matches depend on narrow, reusable source patterns."
msgstr ""
"{ph0}익숙한 컴파일러는 특화 모델이 학습할 수 있는 구체적인 패턴을 제공합니다.{ph1} 일부 정확한 기계 코드 일치는 재사용 가능한"
" 특정 소스 코드 패턴에 따라 달라집니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#: website/public/blog/reverse-engineering-models/index.html:218
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Give repository knowledge a fair comparison.{ph1} A smaller model with "
"good retrieval may already know enough to make progress."
msgstr ""
"{ph0}공정한 비교에 저장소 지식을 포함합니다.{ph1} 지식 검색이 좋은 소규모 모델은 이미 진행하기에 충분한 정보를 가지고 있을 수"
" 있습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:223
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Train the next useful experiment, and test its oracle.{ph1} The value "
"of feedback depends on what the checker actually verifies."
msgstr ""
"{ph0}다음 유용한 실험을 선택하도록 모델을 훈련시키고 검증 검사기를 테스트합니다.{ph1} 피드백은 검사기가 올바른 것을 검증하는 "
"정도까지만 유용합니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:230
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Measure accepted reconstruction against time and cost.{ph1} That is the"
" result I want from the whole agent."
msgstr ""
"{ph0}시간 및 비용과 함께 검증된 재구성 결과를 평가합니다.{ph1} 이것이 제가 전체 AI 에이전트 워크플로에 대해 측정하고 싶은 "
"것입니다."
#: website/public/blog/reverse-engineering-models/index.html:241
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "In this article"
msgstr "이 기사 에서"
#. {ph0}: <a href="#model-capability">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:243
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}What better models changed{ph1}"
msgstr "{ph0}더 강한 모델이 바꾼 것{ph1}"
#. {ph0}: <a href="#specialization">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:244
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}Why specialize?{ph1}"
msgstr "{ph0}전문화해야 하는 이유{ph1}"
#. {ph0}: <a href="#repository-knowledge">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:245
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}Where experience lives{ph1}"
msgstr "{ph0}이 경험은 어디에 저장되어야 합니까?{ph1}"
#. {ph0}: <a href="#learning-search">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:246
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}Learning the next experiment{ph1}"
msgstr "{ph0}다음 유용한 실험 학습{ph1}"
#. {ph0}: <a href="#re-and-rl">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:247
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}RE and reinforcement learning{ph1}"
msgstr "{ph0}리버스 엔지니어링 및 강화 학습{ph1}"
#. {ph0}: <a href="#oracle">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:248
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}When the oracle is wrong{ph1}"
msgstr "{ph0}검증체커가 잘못된 경우{ph1}"
#. {ph0}: <a href="#comparison">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:249
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}A comparison worth running{ph1}"
msgstr "{ph0}실행할 가치가 있는 비교{ph1}"
#. {ph0}: <a href="#future-agent">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:250
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "{ph0}What kind of agent?{ph1}"
msgstr "{ph0}어떤 에이전트가 필요할까?{ph1}"
#: website/public/blog/reverse-engineering-models/index.html:258
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "What better models changed"
msgstr "더 강한 모델이 바꾼 것"
#: website/public/blog/reverse-engineering-models/index.html:259
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Since August 2026, I have been exploring how much reverse engineering an "
"agent can carry out with access to a program and a way to check its work. "
"Most of my experience comes from reconstructing games, especially Touhou. As"
" I have changed models, the repositories have kept a record of what each "
"session managed to recover."
msgstr ""
"2026년 8월부터, 프로그램에 접근하고 자신의 작업을 검증할 수 있는 에이전트가 리버스 엔지니어링을 얼마나 수행할 수 있는지 탐구해 "
"왔다. 내 경험은 주로 게임, 특히 Touhou 재구성에서 나온다. 모델을 바꿔 가며 작업하는 동안 저장소에는 각 세션이 무엇을 "
"복원했는지 기록이 쌓였다."
#: website/public/blog/reverse-engineering-models/index.html:267
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Much of that work aims at exact reconstruction: we compile the maintained "
"source under a pinned historical toolchain and check whether it reproduces "
"the target function. When a later model succeeds where earlier work stalled,"
" the source changes show what made that progress possible."
msgstr ""
"이 작업의 상당 부분은 정확한 재구성을 목표로 한다. 버전을 고정한 당시의 툴체인으로 유지 관리 중인 소스 코드를 컴파일하고, 대상 "
"함수가 재현되는지 확인한다. 이전에 막혔던 문제를 나중 모델이 해결하면, 소스 변경을 통해 무엇이 진전을 가능하게 했는지 살펴볼 수 "
"있다."
#: website/public/blog/reverse-engineering-models/index.html:274
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "The temporary values had to stay alive together"
msgstr "임시 변수에는 수명이 겹치는 것이 필요했습니다."
#: website/public/blog/reverse-engineering-models/index.html:275
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Much of a TH09 attack function's logic had already been reconstructed, but "
"the compiler still stored temporary results differently from the original. "
"The remaining problem was how long those results needed to stay alive and "
"when their storage could be reused."
msgstr ""
"TH09 공격 함수의 논리 대부분은 이미 재구성되었지만 컴파일러는 여전히 원본과 다르게 임시 결과를 저장했습니다. 남은 문제는 해당 "
"결과를 유지하는 데 필요한 기간과 해당 저장소를 언제 재사용할 수 있는지였습니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/de63c0f9121963f3a6b1ab5471c4878625fd3425"
#. >
#. {ph1}: </a >
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/52929ed7c299f1a5f29cc13964e22510145fd616"
#. >
#. {ph3}: </a >
#: website/public/blog/reverse-engineering-models/index.html:282
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"A {ph0}GPT-6-Sol checkpoint{ph1} recorded this mismatch after testing "
"several ordinary source arrangements. When {ph2}GPT-6.1-Sol returned to the "
"problem{ph3}, it found a useful hypothesis about how long those temporary "
"values needed to stay alive."
msgstr ""
"여러 가지 일반적인 소스 코드 배열을 테스트한 후 {ph0}GPT-6-Sol 세션 레코드{ph1}에서 이러한 불일치를 보고했습니다. "
"{ph2}GPT-6.1-Sol이 문제를 다시 조사했을 때{ph3} 이러한 임시 변수의 수명에 대한 유용한 가설을 제안했습니다."
#: website/public/blog/reverse-engineering-models/index.html:296
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"The function produced temporary results and copied them into animation "
"positions. In C++, a temporary result stays alive until the expression using"
" it finishes. Grouping the real operations into one expression kept those "
"results alive together, so the compiler could no longer reuse the same "
"storage for all of them."
msgstr ""
"이 함수는 임시 결과를 생성하고 이를 애니메이션 위치에 복사했습니다. C++에서 임시 결과는 이를 사용하는 표현식이 완료될 때까지 활성 "
"상태로 유지됩니다. 실제 작업을 하나의 표현식으로 그룹화하면 해당 결과가 함께 유지되므로 컴파일러는 더 이상 모든 작업에 대해 동일한 "
"저장소를 재사용할 수 없습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:303
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"One result still shared storage with a value used later for collision "
"checks. Giving that value its own lifetime resolved the remaining overlap. "
"After several targeted experiments, {ph0}a clean rebuild confirmed that the "
"full function matched{ph1}."
msgstr ""
"한 결과는 나중에 충돌 확인을 위해 사용되는 값으로 여전히 저장 공간을 공유합니다. 해당 값에 고유한 수명을 부여하면 나머지 중복이 "
"해결되었습니다. 여러 번의 대상 실험 후 {ph0}소스에서 깔끔하게 재컴파일하여 전체 함수가 {ph1}과 일치함을 확인했습니다."
#: website/public/blog/reverse-engineering-models/index.html:312
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"What interests me is how the discovery and the tests worked together. The "
"lifetime hypothesis gave the agent a new direction; compiler feedback helped"
" it refine that hypothesis into a source arrangement that matched."
msgstr ""
"나는 발견과 테스트가 어떻게 서로를 지원하는지에 관심이 있습니다. 임시 개체 수명에 대한 가설은 AI 에이전트에 새로운 방향을 "
"제시했습니다. 컴파일러 피드백은 해당 가설을 일치하는 소스 코드 배열로 구체화하는 데 도움이 되었습니다."
#: website/public/blog/reverse-engineering-models/index.html:318
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "A different control-flow graph"
msgstr "다른 제어 흐름 그래프"
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/f8d12d72aaf02212ee1b585a8f3f86d7ed000269"
#. >
#. {ph1}: </a >
#: website/public/blog/reverse-engineering-models/index.html:319
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"A second TH09 function shows why that new direction can matter. Here, the "
"obstacle was how several branches shared their final work. "
"{ph0}GPT-6.1-Sol's earlier work{ph1} got parts of the function to match, but"
" the branches still joined up differently from the original."
msgstr ""
"두 번째 TH09 함수는 새로운 방향이 중요한 이유를 보여줍니다. 여기서 장애물은 여러 지점이 최종 작업을 공유하는 방식이었습니다. "
"{ph0}GPT-6.1-Sol의 이전 작업{ph1}에서는 일치하는 함수의 일부를 얻었지만 분기는 여전히 원본과 다르게 결합되었습니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/da33a646221198ceb7f3df2b96e2ca0e9b2f705f"
#. >
#. {ph1}: </a >
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/5f825b28a862f8e1a6d4aea2f78a42f04c09a1c0"
#. >
#. {ph3}: </a >
#: website/public/blog/reverse-engineering-models/index.html:330
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}GPT-6-Astra changed the surrounding control-flow graph{ph1}. The main "
"paths now led to a shared final update and return. In that source structure,"
" the compiler combined the branches in the same way as the original. The "
"complete function matched, and a {ph2}separate rebuild check confirmed "
"it{ph3}."
msgstr ""
"{ph0}GPT-6-Astra이 주변 제어 흐름 그래프{ph1}를 변경했습니다. 이제 주요 경로는 공유된 최종 업데이트 및 복귀로 "
"이어졌습니다. 해당 소스 구조에서 컴파일러는 원본과 동일한 방식으로 분기를 결합했습니다. 전체 함수이 일치했으며 {ph2}별도의 재구축 "
"검사를 통해 이를 확인했습니다{ph3}."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:342
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Changing the representation opened a more productive search space.{ph1}"
" Both cases give me a reason to take general model capability seriously: an "
"agent can keep trying local variations for a long time before finding a "
"better way to express the surrounding work."
msgstr ""
"{ph0}표현을 변경하면 보다 생산적인 검색 공간이 열렸습니다.{ph1} 두 경우 모두 일반 모델 기능을 진지하게 받아들여야 하는 이유가"
" 됩니다. 에이전트는 주변 작업을 표현하는 더 나은 방법을 찾기 전에 오랫동안 지역 변형을 계속 시도할 수 있습니다."
#: website/public/blog/reverse-engineering-models/index.html:351
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"At the same time, the later sessions started with earlier source and "
"recorded failures. That accumulated work was part of their advantage. The "
"history lets us inspect the discoveries and their checks; a controlled "
"comparison would help separate the effect of the model from the experience "
"it inherited."
msgstr ""
"다만 이후 세션은 이전 소스 코드와 실패 기록을 이어받았다. 그 축적도 이점의 일부였다. 이력에서 발견과 검증 과정을 확인할 수는 "
"있지만, 모델 자체의 효과와 물려받은 경험의 효과를 구분하려면 조건을 맞춘 비교가 필요하다."
#: website/public/blog/reverse-engineering-models/index.html:358
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"This is where the question becomes interesting to me. Some of the progress "
"came from finding a new representation, while much of the remaining work "
"involved testing source forms against a familiar compiler. How much needs "
"broad reasoning ability, and how much could a model learn through repeated "
"experience with that compiler and code?"
msgstr ""
"이것이 나에게 그 질문을 흥미롭게 만드는 이유이다. 새로운 표현을 찾는 과정에서 약간의 진전이 있었습니다. 나머지 작업의 대부분은 익숙한"
" 컴파일러에 대해 다양한 소스 코드 배열을 테스트하는 것과 관련되었습니다. 이 중 얼마나 폭넓은 추론 능력이 필요한가요? 해당 컴파일러와"
" 코드를 반복적으로 사용하여 모델이 얼마나 학습할 수 있습니까?"
#: website/public/blog/reverse-engineering-models/index.html:368
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Why might a specialist do well?"
msgstr "특화된 AI 모델이 왜 좋은 성과를 낼 수 있을까요?"
#: website/public/blog/reverse-engineering-models/index.html:369
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Touhou gives us a concrete reason to expect that experience to help. Much of"
" the game code comes from the same author, ZUN, so recurring habits are a "
"reasonable starting assumption. The repositories back that up with useful "
"examples: related loops and helper arrangements have supplied hypotheses "
"across games."
msgstr ""
"Touhou은 그 경험이 도움이 될 것으로 기대하는 구체적인 이유를 제공합니다. 대부분의 게임 코드는 동일한 작성자인 ZUN에서 "
"제공되므로 반복되는 습관은 합리적인 시작 가정입니다. 저장소는 유용한 예를 통해 이를 뒷받침합니다. 관련 루프 및 도우미 배열은 게임 "
"전반에 걸쳐 가설을 제공했습니다."
#: website/public/blog/reverse-engineering-models/index.html:376
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Those source patterns become more specific when we include the compiler. "
"Under a particular version and set of options, small changes in source can "
"produce repeatable differences in machine code. Some of those differences "
"are surprisingly obscure."
msgstr ""
"이러한 소스 패턴은 컴파일러를 포함하면 더욱 구체적이 됩니다. 특정 버전 및 옵션 세트에서는 소스의 작은 변경으로 인해 기계어 코드에 "
"반복 가능한 차이가 발생할 수 있습니다. 이러한 차이점 중 일부는 놀라울 정도로 모호합니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th095/commit/26bb64bdb093a13f73abd0ee8ae7ce199ee4658f"
#. >
#. {ph3}: <code>Supervisor::LoadDat</code>
#. {ph4}: </a >
#: website/public/blog/reverse-engineering-models/index.html:382
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"In TH095, for example, {ph0}even the name used for a local variable could "
"change where VC7.1 stored it{ph1}. Moving the declaration alone did not "
"solve the layout, but an earlier background function had revealed a naming "
"pattern that affected the compiler's choice. That gave us a more promising "
"hypothesis for {ph2}the reconstruction of {ph3}{ph4}."
msgstr ""
"예를 들어 TH095에서는 {ph0}로컬 변수의 이름도 VC7.1이 변수를 저장한 위치에 영향을 미칠 수 있습니다{ph1}. 선언을 "
"이동해도 스토리지 레이아웃이 해결되지 않았습니다. 그러나 이전 백그라운드 함수에서는 컴파일러의 선택에 영향을 미치는 명명 패턴이 "
"드러났습니다. 이는 {ph2}{ph3}{ph4} 재구성에 대한 더 유망한 가설을 제시했습니다."
#: website/public/blog/reverse-engineering-models/index.html:396
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Reusing that pattern for the file-size variable produced the required layout"
" without adding storage. The full function then matched."
msgstr ""
"파일 크기 변수에 해당 패턴을 재사용하면 저장소를 추가하지 않고도 필요한 레이아웃이 생성되었습니다. 그런 다음 전체 함수이 일치했습니다."
#: website/public/blog/reverse-engineering-models/index.html:401
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"This is the sort of narrow detail a general model may not know when it "
"arrives. A specialist trained on this compiler could encounter many such "
"cases and learn which source variations are worth testing first."
msgstr ""
"이는 범용 AI 모델이 처음 문제에 직면했을 때 알 수 없는 매우 구체적인 세부 사항입니다. 이 컴파일러에 특화된 모델은 이러한 사례를 "
"많이 확인하고 먼저 테스트할 가치가 있는 소스 코드 변형을 학습할 수 있습니다."
#: website/public/blog/reverse-engineering-models/index.html:407
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"The opportunity is especially clear in final matching problems where we "
"already understand the behavior. We are then asking which ordinary source "
"form this compiler turns into the observed instructions. Specialization "
"could help the model propose those forms more efficiently, while the target "
"still determines which hypotheses survive."
msgstr ""
"우리가 이미 동작을 이해하고 있는 최종 매칭 문제에서 기회는 특히 분명합니다. 그런 다음 이 컴파일러가 관찰된 명령으로 변환하는 일반적인"
" 소스 코드 배열을 묻습니다. 전문화는 모델이 이러한 형태를 보다 효율적으로 제안하는 데 도움이 될 수 있으며, 목표는 여전히 어떤 "
"가설이 살아남는지 결정합니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th04/commit/6dce0a79d5b931f0e2a08475b90e0c33d2321b98"
#. >
#. {ph1}: </a >
#: website/public/blog/reverse-engineering-models/index.html:415
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"The useful patterns would have to retain their context, though. TH08 uses an"
" earlier Visual C++ version than TH095 and TH09. TH04 uses a different DOS-"
"era compiler, and its {ph0}player reconstruction{ph1} needed different "
"hypotheses about source patterns and how the compiled code was combined into"
" an executable. Shared authorship gives us a prior, but each target tells us"
" whether it applies. Distinguishing those contexts is part of what a "
"specialist would need to learn."
msgstr ""
"유용한 패턴에는 적용 조건이 함께 남아야 한다. TH08은 TH095와 TH09보다 오래된 Visual C++ 버전을 사용한다. "
"TH04은 DOS 시대의 다른 컴파일러를 사용하며, {ph0}플레이어 코드 재구성{ph1}에는 소스 패턴과 실행 파일의 링크 방식에 관한"
" 다른 가설이 필요했다. 같은 저자라는 사실은 초기 가정을 제공하지만, 그것이 적용되는지는 각 대상에서 확인해야 한다. 이런 맥락을 "
"구별하는 것도 특화 모델이 배울 일이다."
#: website/public/blog/reverse-engineering-models/index.html:431
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Where should that experience live?"
msgstr "이 경험은 어디에 저장되어야 합니까?"
#. {ph0}: <a href="../touhou-reconstruction/">
#. {ph1}: </a>
#: website/public/blog/reverse-engineering-models/index.html:432
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Before deciding to teach those patterns through model training, I would look"
" at the knowledge we already keep in the repository. In the {ph0}previous "
"essay{ph1}, I wrote about it becoming the project's working memory. That "
"memory includes compiler lessons, along with the source and failed "
"experiments that made them useful."
msgstr ""
"모델 훈련을 통해 이러한 패턴을 가르치기로 결정하기 전에 우리가 이미 저장소에 보관하고 있는 지식을 살펴보겠습니다. {ph0}이전 "
"에세이{ph1}에서는 그것이 프로젝트의 작업 메모리가 되는 것에 대해 썼습니다. 그 메모리에는 컴파일러 교훈과 이를 유용하게 만든 소스 "
"및 실패한 실험이 포함됩니다."
#: website/public/blog/reverse-engineering-models/index.html:441
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"By retrieving that record, an agent can start with a known result and "
"inspect how we reached it. It can also avoid alternatives that have already "
"failed in the same context. The starting point improves without changing the"
" model's weights."
msgstr ""
"에이전트는 해당 기록을 검색하여 알려진 결과로 시작하고 해당 기록에 어떻게 도달했는지 검사할 수 있습니다. 또한 동일한 맥락에서 이미 "
"실패한 대안을 피할 수도 있습니다. 모델의 훈련된 매개변수를 변경하지 않고도 시작점이 향상됩니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/1eb843383941d00065622a9e353146c4bb96979e"
#. >
#. {ph1}: </a >
#: website/public/blog/reverse-engineering-models/index.html:447
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"When reconstructing TH09's enemy-spawn function, a {ph0}GPT-6-Luna-max "
"session{ph1} drew a hypothesis from TH08's corresponding source family. That"
" earlier source suggested how to structure the loop and handle failures "
"within it. TH09's own evidence supplied the game-specific details, and clean"
" rebuilds confirmed the complete match."
msgstr ""
"TH09의 적 생성 함수를 재구성할 때, {ph0}GPT-6-Luna-max 세션{ph1}은 TH08의 관련 소스 코드에서 가설을 "
"얻었다. 이전 코드는 루프의 구성과 내부 실패 처리에 대한 단서를 제공했다. TH09 자체의 증거로 게임별 세부 사항을 채웠고, 소스에서"
" 새로 빌드해 함수 전체의 일치를 확인했다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:458
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}\"The model did not know that compiler quirk\" and \"the model could "
"not use it\" are different problems.{ph1} Retrieval may solve the first, but"
" turning that fact into a useful candidate still takes work. And if the "
"candidate fails, the model must decide what the result means for its next "
"attempt. Knowing the relevant pattern is only the beginning of that process."
msgstr ""
"{ph0}\"모델이 컴파일러의 이상한 점을 몰랐습니다\"와 \"모델이 이를 사용할 수 없었습니다\"는 다른 문제입니다.{ph1} 검색을 "
"통해 첫 번째 문제를 해결할 수 있지만 해당 사실을 유용한 후보로 바꾸는 작업은 여전히 필요합니다. 그리고 후보 소스 코드가 실패하면 "
"모델은 다음 시도에서 결과가 무엇을 의미하는지 결정해야 합니다. 관련 패턴을 아는 것은 해당 프로세스의 시작일뿐입니다."
#: website/public/blog/reverse-engineering-models/index.html:468
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"For that reason, I would include a smaller general model with good retrieval"
" in any comparison. Giving it the same library of experience would help us "
"identify what training adds: better candidate generation, better decisions "
"after feedback, or both."
msgstr ""
"그러한 이유로 저는 어떤 비교에서도 검색 성능이 좋은 더 작은 범용 AI 모델을 포함하겠습니다. 동일한 경험 라이브러리를 제공하면 교육이"
" 추가하는 것이 무엇인지 식별하는 데 도움이 됩니다. 즉, 더 나은 후보 코드 생성, 피드백 후 더 나은 결정 또는 둘 다입니다."
#: website/public/blog/reverse-engineering-models/index.html:476
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Learning the next useful experiment"
msgstr "다음 유용한 실험 학습"
#: website/public/blog/reverse-engineering-models/index.html:477
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Those decisions after feedback are what I would most like to study. In "
"agentic reconstruction, the model proposes an explanation and tests it "
"against the program. Even when the candidate fails, the result can narrow "
"the remaining possibilities and suggest a more useful next experiment."
msgstr ""
"피드백 이후의 결정은 제가 가장 연구하고 싶은 것입니다. 에이전트 재구성에서 모델은 설명을 제안하고 이를 프로그램에 대해 테스트합니다. "
"후보 소스 코드가 실패하더라도 그 결과는 남은 가능성을 좁히고 보다 유용한 다음 실험을 제안할 수 있습니다."
#: website/public/blog/reverse-engineering-models/index.html:484
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Consider the temporary-results example again. Its final source shows the "
"arrangement that worked, but the route to that source contains more "
"information. Each of the following experiments helped identify what still "
"needed to change."
msgstr ""
"임시 결과 예제를 다시 고려해보세요. 최종 소스에는 제대로 작동한 배열이 표시되지만 해당 소스로의 경로에는 더 많은 정보가 포함되어 "
"있습니다. 다음 각 실험은 여전히 ​​변경해야 할 사항을 식별하는 데 도움이 되었습니다."
#: website/public/blog/reverse-engineering-models/index.html:497
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Experiment"
msgstr "실험"
#: website/public/blog/reverse-engineering-models/index.html:498
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "What its result taught us"
msgstr "그 결과가 우리에게 가르쳐준 것"
#: website/public/blog/reverse-engineering-models/index.html:503
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Try a different way to copy the results"
msgstr "결과를 복사하는 다른 방법을 시도해 보세요."
#: website/public/blog/reverse-engineering-models/index.html:504
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "The copy code changes, but the function still differs."
msgstr "복사 코드는 변경되지만 기능은 여전히 다릅니다."
#: website/public/blog/reverse-engineering-models/index.html:509
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Use the returned values directly"
msgstr "반환된 값을 직접 사용"
#: website/public/blog/reverse-engineering-models/index.html:510
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Copying follows the original pattern, but temporary storage still differs."
msgstr "복사는 원래 패턴을 따르지만 임시 저장소는 여전히 다릅니다."
#: website/public/blog/reverse-engineering-models/index.html:516
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Keep the temporary results alive together"
msgstr "모든 임시 변수를 동시에 유효한 상태로 유지"
#: website/public/blog/reverse-engineering-models/index.html:517
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"They get separate storage, but one still overlaps a value used later for "
"collision checks."
msgstr "별도의 저장소를 갖지만 하나는 나중에 충돌 검사에 사용되는 값과 여전히 겹칩니다."
#: website/public/blog/reverse-engineering-models/index.html:523
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Keep the collision-check value separate"
msgstr "충돌 검사 값을 별도로 유지하십시오."
#: website/public/blog/reverse-engineering-models/index.html:524
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "A clean rebuild confirms the complete match."
msgstr "소스에서 완전히 재컴파일하면 완전한 일치가 확인됩니다."
#: website/public/blog/reverse-engineering-models/index.html:529
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Selected experiments from the attack-function reconstruction above, grouped "
"by what they taught us."
msgstr "위의 공격 함수 재구성에서 선택한 실험을 우리에게 가르친 내용을 기준으로 그룹화했습니다."
#: website/public/blog/reverse-engineering-models/index.html:533
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"A training record that keeps this sequence can teach more than the final "
"source alone. It connects each proposed change to an observed result and the"
" next decision. Keeping ineffective variations matters too: they tell a "
"later agent which hypotheses have already been tested in that context."
msgstr ""
"이 시퀀스를 유지하는 훈련 기록은 최종 소스보다 더 많은 것을 가르칠 수 있습니다. 이는 제안된 각 변경 사항을 관찰된 결과 및 다음 "
"결정에 연결합니다. 비효과적인 변형을 유지하는 것도 중요합니다. 이는 해당 맥락에서 어떤 가설이 이미 테스트되었는지 나중에 에이전트에게 "
"알려줍니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:540
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}I would want the model to learn how to use feedback.{ph1} A neutral "
"result is a reason to reconsider the variation; a changed mismatch may point"
" to another cause. When local edits stop being informative, the agent should"
" be able to revisit the source representation or inspect the evidence again."
msgstr ""
"{ph0}모델이 피드백을 사용하는 방법을 배우기를 원합니다.{ph1} 중립적인 결과는 변화를 재고해야 하는 이유입니다. 변경된 불일치는 "
"다른 원인을 가리킬 수도 있습니다. 로컬 편집이 더 이상 정보를 제공하지 않으면 에이전트는 소스 표현을 다시 방문하거나 증거를 다시 "
"검사할 수 있어야 합니다."
#: website/public/blog/reverse-engineering-models/index.html:549
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Learning to make those choices requires autonomy. Sometimes the useful next "
"step is inspecting another caller rather than compiling another edit. A "
"rigid sequence of required rewrites would remove that choice, along with "
"part of the behavior we want the model to learn."
msgstr ""
"그러한 선택을 하는 방법을 배우려면 자율성이 필요합니다. 때때로 유용한 다음 단계는 다른 편집 내용을 컴파일하는 대신 다른 호출자를 "
"검사하는 것입니다. 필수 재작성의 엄격한 순서는 모델이 학습하기를 원하는 동작의 일부와 함께 해당 선택을 제거합니다."
#: website/public/blog/reverse-engineering-models/index.html:558
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Why RE is interesting for reinforcement learning"
msgstr "강화 학습에 리버스 엔지니어링이 흥미로운 이유"
#: website/public/blog/reverse-engineering-models/index.html:559
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Bounded reconstruction gives us a practical environment for studying these "
"choices. Once the target and compiler are pinned, many source experiments "
"produce quick, repeatable feedback. The agent can compile a candidate, "
"inspect the mismatch and use that observation to choose its next step."
msgstr ""
"범위가 정해진 재구성은 이런 선택을 연구할 실용적인 환경을 제공한다. 대상과 컴파일러 버전을 고정하면 많은 소스 코드 실험에서 빠르고 "
"반복 가능한 피드백을 얻을 수 있다. 에이전트는 후보 코드를 컴파일하고 차이를 살펴본 뒤 다음 단계를 선택할 수 있다."
#: website/public/blog/reverse-engineering-models/index.html:566
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Reinforcement learning could train that decision-making process through the "
"feedback it receives. A candidate accepted by a defined check gives us a "
"concrete outcome, while the sequence of attempts lets us observe how much "
"work it took to reach it."
msgstr ""
"강화 학습은 이런 피드백을 통해 의사 결정 과정을 훈련할 수 있다. 정의된 검증을 통과한 후보는 구체적인 결과가 되고, 시도 기록은 그 "
"결과에 도달하는 데 얼마나 많은 작업이 필요했는지 보여 준다."
#. {ph0}: <a href="https://aclanthology.org/2024.emnlp-main.203/" >
#. {ph1}: </a >
#. {ph2}: <a href="https://arxiv.org/html/2606.16162v1">
#. {ph3}: </a>
#: website/public/blog/reverse-engineering-models/index.html:572
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"There is already research supporting this direction. {ph0}LLM4Decompile{ph1}"
" studies models specialized for decompilation. {ph2}AutoDecompiler{ph3} "
"trains multi-turn refinement using compiler and execution feedback. Their "
"studies focus on functional recovery. For this work, I would use them as a "
"starting point for the related task of finding source that matches a "
"historical compiler's output."
msgstr ""
"이미 이 방향을 뒷받침하는 연구가 있다. {ph0}LLM4Decompile{ph1}은 디컴파일에 특화된 모델을 연구한다. "
"{ph2}AutoDecompiler{ph3}는 컴파일과 실행 피드백으로 여러 차례 개선하는 과정을 학습한다. 이 연구들은 기능 복원에 "
"초점을 맞춘다. 나는 이를 출발점으로 삼아, 당시 컴파일러의 출력과 일치하는 소스 코드를 찾는 관련 과제를 연구하고 싶다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/af9cb1d3e839b15a78b47ac1701506083cc82847"
#. >
#. {ph1}: </a >
#: website/public/blog/reverse-engineering-models/index.html:584
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"To reach such a well-defined task, though, we may first need to establish "
"what a function owns or devise a new runtime measurement. In TH08, for "
"example, a {ph0}collision difference led back to how the original program "
"handled floating-point calculations{ph1}. Before the agent could test a "
"useful correction, it had to work out what to measure."
msgstr ""
"그처럼 명확한 과제를 만들려면, 먼저 함수가 어떤 리소스를 책임지는지 확인하거나 실행 중인 프로그램의 동작을 관찰할 새로운 방법을 "
"설계해야 할 수 있다. TH08에서는 {ph0}충돌 판정의 차이를 추적하다가 원본 프로그램의 부동 소수점 계산 방식에 도달했다{ph1}."
" 에이전트는 유용한 수정을 검증하기 전에 무엇을 측정할지부터 알아내야 했다."
#: website/public/blog/reverse-engineering-models/index.html:595
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"This suggests another role for a broadly capable model: helping make the "
"problem checkable in the first place. Once that check exists, we can "
"investigate how far a learned search policy can get with it."
msgstr ""
"이는 광범위하게 역량을 갖춘 모델의 또 다른 역할을 제시합니다. 즉, 우선 문제를 확인할 수 있도록 돕는 것입니다. 해당 검사가 존재하면"
" 학습된 검색 정책이 얼마나 멀리까지 도달할 수 있는지 조사할 수 있습니다."
#: website/public/blog/reverse-engineering-models/index.html:603
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "When the oracle is wrong"
msgstr "검증체커가 잘못된 경우"
#: website/public/blog/reverse-engineering-models/index.html:604
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Once we train against that check, its coverage becomes part of what the "
"model learns. I call the reference or checker an oracle. Even if it gives a "
"repeatable answer, we still need to understand what that answer covers."
msgstr ""
"검증 결과를 학습에 사용하면 그 검증의 범위도 학습 환경의 일부가 된다. 나는 이런 참조 기준이나 검증기를 oracle이라고 부른다. "
"반복 가능한 답이라도, 실제로 무엇을 확인한 답인지 이해해야 한다."
#: website/public/blog/reverse-engineering-models/index.html:610
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"TH08 showed how much can hide outside that coverage. Some reconstructed "
"functions passed their exact comparisons with wrong floating constants. The "
"comparator adjusted relocated addresses before checking instructions, but it"
" checked the values behind those addresses only when they had been "
"explicitly recorded for verification. Other literal references could pass "
"without their values being examined."
msgstr ""
"TH08은 해당 적용 범위 외부에 얼마나 많은 것을 숨길 수 있는지 보여주었습니다. 재구성된 일부 함수는 잘못된 부동 상수와의 정확한 "
"비교를 통과했습니다. 비교기는 명령을 확인하기 전에 재배치된 주소를 조정했지만 확인을 위해 명시적으로 기록된 경우에만 해당 주소 뒤에 "
"있는 값을 확인했습니다. 다른 리터럴 참조는 해당 값을 검사하지 않고 통과할 수 있습니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/a393f400786e4cc6cbb1000af0dad3276da12c78"
#. >
#. {ph1}: </a >
#. {ph2}: <code>1.0f</code>
#. {ph3}: <code>32.0f</code>
#: website/public/blog/reverse-engineering-models/index.html:619
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"To close that gap, a {ph0}wider audit{ph1} found incorrect constants in "
"functions that had already been accepted. In one calculation, the "
"reconstructed source added {ph2} where the original added {ph3}."
msgstr ""
"이러한 격차를 해소하기 위해 {ph0}광범위한 감사{ph1}를 통해 이미 검증을 통과한 함수에서 잘못된 상수가 발견되었습니다. 한 "
"계산에서는 재구성된 소스 코드에 {ph2}가 추가된 반면 원본 코드에는 {ph3}가 추가되었습니다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:629
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}A learner rewarded by the old check could learn to produce the wrong "
"reconstruction.{ph1} We had not trained an RL model against this oracle; the"
" observed failure was in the check itself. But using that check as a reward "
"would have made the same blind spot part of the learning environment."
msgstr ""
"{ph0}기존 검증으로 보상하면 모델이 잘못된 재구성을 학습할 수도 있다.{ph1} 이 검증기로 RL 모델을 훈련한 것은 아니다. 실제로"
" 관찰한 실패는 검증 자체의 오류였다. 하지만 이를 보상으로 사용했다면 같은 사각지대가 학습 환경에 들어갔을 것이다."
#. {ph0}: <a href="https://arxiv.org/html/2609.05370v1" >
#. {ph1}: </a >
#: website/public/blog/reverse-engineering-models/index.html:639
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"A functional test can have a similar blind spot. {ph0}Differential-fuzzing "
"research on LLM decompilers{ph1} has found behavior differences beyond the "
"supplied tests. Passing those tests therefore needs to be read in terms of "
"the cases they exercise, just as an instruction match needs to be read in "
"terms of the bytes and data it checks."
msgstr ""
"기능 테스트에도 비슷한 사각지대가 있을 수 있습니다. {ph0}LLM 디컴파일러에서 차등 퍼징을 사용한 연구{ph1}에서는 제공된 테스트"
" 외부의 동작 차이를 발견했습니다. 그러므로 우리는 그것이 수행되는 사례의 관점에서 합격 테스트를 이해해야 합니다. 마찬가지로 명령어 "
"일치는 확인하는 바이트와 데이터 측면에서 이해되어야 합니다."
#: website/public/blog/reverse-engineering-models/index.html:649
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Before using either kind of check as a reward, I would test it with "
"deliberate failures. I would also keep final acceptance outside the "
"candidate's editable source, so the model has to satisfy the check through "
"its reconstruction. Otherwise, something like a byte array copied from the "
"target could satisfy a naive score without recovering useful source."
msgstr ""
"어느 검증이든 보상으로 사용하기 전에는 의도적으로 틀린 결과를 넣어 시험해 보고 싶다. 최종 승인 기준도 에이전트가 수정할 수 있는 소스"
" 코드 밖에 두어야 한다. 올바르게 재구성해 검증을 통과하도록 해야 하기 때문이다. 그렇지 않으면 대상에서 복사한 바이트 배열이 유용한 "
"소스 복원 없이 단순한 채점 기준을 통과할 수 있다."
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:657
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Improving the learner and improving its oracle belong to the same "
"research problem.{ph1} As the learner gets better at optimizing the feedback"
" we give it, understanding that feedback becomes more important too."
msgstr ""
"{ph0}학습 모델의 개선과 검증기의 개선은 같은 연구 문제다.{ph1} 모델이 우리가 주는 피드백을 더 잘 최적화할수록, 그 피드백 "
"자체를 이해하는 일도 중요해진다."
#: website/public/blog/reverse-engineering-models/index.html:667
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "A comparison worth running"
msgstr "실행할 가치가 있는 비교"
#: website/public/blog/reverse-engineering-models/index.html:668
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"With those checks in place, I would start the comparison on a fixed VC7.1 "
"task family. First, I would establish baselines for a strong general model "
"and a smaller one. Adding repository knowledge to the smaller model would "
"show what retrieval changes. From there, supervised specialization and an "
"RL-trained version would let us examine what training adds."
msgstr ""
"이러한 점검을 마친 후 고정된 VC7.1 작업 계열에 대한 비교를 시작합니다. 첫째, 강력한 범용 AI 모델과 더 작은 모델에 대한 "
"기준선을 설정하겠습니다. 더 작은 모델에 저장소 지식을 추가하면 검색이 어떻게 변경되는지 확인할 수 있습니다. 거기에서 감독 전문화와 "
"RL 훈련 버전을 통해 훈련에 추가되는 것이 무엇인지 검토할 수 있습니다."
#: website/public/blog/reverse-engineering-models/index.html:676
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"To make those comparisons informative, each model would receive the same "
"target evidence and tools. For the training-specific comparisons, I would "
"keep the base model and available knowledge fixed as well. Repeated trials "
"would help distinguish a reliable search strategy from a lucky candidate."
msgstr ""
"이러한 비교를 유익하게 만들기 위해 각 모델은 동일한 대상 증거와 도구를 받게 됩니다. 훈련별 비교를 위해 기본 모델과 사용 가능한 "
"지식도 고정된 상태로 유지합니다. 반복적인 시도는 우연히 성공한 후보 솔루션과 신뢰할 수 있는 검색 전략을 구별하는 데 도움이 됩니다."
#: website/public/blog/reverse-engineering-models/index.html:683
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"I would then separate two starting conditions: reconstructing a function "
"from its instructions, and closing the last few differences in maintained "
"source. A specialist might be excellent at the second task while a general "
"model does much of the work needed to reach it. Measuring them separately "
"would reveal that division of work."
msgstr ""
"그런 다음 두 가지 시작 조건을 분리합니다. 즉, 명령에서 함수를 재구성하는 것과 유지 관리되는 소스에서 마지막 몇 가지 차이점을 닫는 "
"것입니다. 특화 AI 모델은 두 번째 작업에 탁월할 수 있지만 범용 AI 모델은 두 번째 작업에 도달하는 데 필요한 많은 작업을 "
"수행합니다. 그것들을 개별적으로 측정하면 업무 분할이 드러날 것입니다."
#: website/public/blog/reverse-engineering-models/index.html:691
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Both tasks need genuinely held-out examples. Because related Touhou games "
"share engine code, holding out a game's name would still allow nearly "
"identical functions to appear in training. I would instead hold out source "
"families and keep their accepted answers out of both training and retrieval."
msgstr ""
"두 과제 모두 학습 데이터와 검색 자료에서 제외한 테스트 사례가 필요하다. 관련 Touhou 게임은 엔진 코드를 공유하므로, 게임 하나만"
" 제외해도 거의 같은 함수가 학습 데이터에 남을 수 있다. 대신 관련 소스 코드 계열 전체를 따로 남겨 두고, 검증된 정답을 학습 "
"데이터와 검색 라이브러리 양쪽에서 제외하겠다."
#: website/public/blog/reverse-engineering-models/index.html:698
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"On those examples, the outcome would be complete, independently validated "
"matches. Giving each model the same candidate or compile budget would help "
"compare search quality. Measuring elapsed time and total cost, including "
"compilation, would tell us whether that quality produces an efficient "
"workflow. Training costs would need their own accounting too."
msgstr ""
"측정할 결과는 완전하고 독립적으로 검증된 일치다. 후보 제안 수나 컴파일 횟수의 예산을 같게 하면 탐색 품질을 비교할 수 있다. 컴파일을"
" 포함한 총 시간과 비용은 그 품질이 효율적인 워크플로로 이어지는지 보여 준다. 학습 비용은 별도로 계산해야 한다."
#: website/public/blog/reverse-engineering-models/index.html:706
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Both views matter because a cheaper proposal can become an expensive "
"workflow if it causes more uninformative compiles. Conversely, a slower "
"model may pay for itself by finding a useful experiment sooner. The "
"comparison should capture those costs."
msgstr ""
"두 측정 모두 중요합니다. 유용한 정보를 제공하지 않는 컴파일이 더 많이 발생하면 값싼 제안으로 인해 비용이 많이 드는 작업 흐름이 "
"발생할 수 있습니다. 반대로, 유용한 실험을 더 빨리 발견하면 느린 모델이 더 경제적일 수 있습니다. 비교에는 이러한 비용이 포함되어야 "
"합니다."
#. {ph0}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/ab72fd77728293fc0beacfc656ca701b0e266016"
#. >
#. {ph1}: </a >
#: website/public/blog/reverse-engineering-models/index.html:712
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"Counting accepted results also keeps intermediate progress in perspective. "
"One TH09 {ph0}replay-save candidate{ph1} looked promising because the "
"compiled function had the expected size, but a full comparison still found "
"substantial differences. Changes in how the compiler arranges instructions "
"can also make a candidate look closer without resolving the underlying "
"problem. Such diagnostics can guide the next experiment, but I would "
"validate any reward for \"getting closer\" against the full acceptance "
"check."
msgstr ""
"승인된 결과를 계산하면 중간 진행 상황을 관점에서 볼 수 있습니다. 하나의 TH09 {ph0}재생 저장 후보{ph1}는 컴파일된 함수의 "
"크기가 예상과 같았기 때문에 유망해 보였지만 전체 비교에서는 여전히 상당한 차이가 발견되었습니다. 컴파일러가 명령을 배열하는 방식을 "
"변경하면 근본적인 문제를 해결하지 않고도 후보가 더 가까워 보이게 만들 수도 있습니다. 이러한 진단은 다음 실험의 지침이 될 수 있지만 "
"전체 승인 확인에 대해 \"가까워지는\" 것에 대한 보상을 검증하겠습니다."
#: website/public/blog/reverse-engineering-models/index.html:727
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"I would be interested in the pattern across these results. If a specialist "
"does well within a familiar compiler family, does that advantage survive a "
"toolchain change? And once both models have good retrieval, how much does "
"training still add? The answers would help us decide where each kind of "
"model is most useful."
msgstr ""
"나는 이러한 결과의 패턴에 관심이 있습니다. 전문화된 AI 모델이 친숙한 컴파일러 제품군 내에서 잘 작동한다면 툴체인 변경 후에도 해당 "
"장점이 유지됩니까? 두 AI 모델 모두 좋은 검색 결과를 얻은 후에도 훈련을 통해 얼마나 추가되나요? 답변은 각 모델 종류가 가장 유용한"
" 위치를 결정하는 데 도움이 됩니다."
#: website/public/blog/reverse-engineering-models/index.html:736
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "What kind of agent does this suggest?"
msgstr "어떤 에이전트가 필요할까?"
#: website/public/blog/reverse-engineering-models/index.html:737
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"If the models turn out to help at different stages, a useful arrangement "
"might be a broad agent with access to a specialist. Once a task becomes a "
"familiar compiler search, it could ask the specialist for candidates. If the"
" results stop making sense, the broader agent could return to the target "
"evidence or investigate the measurement itself."
msgstr ""
"모델이 여러 단계에서 도움이 되는 것으로 밝혀지면 특화 AI 모델에 액세스할 수 있는 광범위한 에이전트가 유용한 배열이 될 수 있습니다."
" 작업이 익숙한 컴파일러 검색이 되면 특화 AI 모델에 후보를 요청할 수 있습니다. 결과가 더 이상 이해되지 않는 경우 더 넓은 범위의 "
"에이전트는 대상 증거로 돌아가거나 측정 자체를 조사할 수 있습니다."
#: website/public/blog/reverse-engineering-models/index.html:745
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"In that arrangement, specialization becomes a tool the agent can choose as "
"the investigation develops. The agent keeps the freedom to change direction "
"that made the earlier breakthroughs possible."
msgstr ""
"이러한 배열에서 전문화는 조사가 진행됨에 따라 에이전트가 선택할 수 있는 도구가 됩니다. 에이전트는 이전의 돌파구를 가능하게 했던 방향을"
" 자유롭게 변경할 수 있습니다."
#: website/public/blog/reverse-engineering-models/index.html:750
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"This follows naturally from the industrial shift I described in the previous"
" essay. Being able to run many more experiments changes how we organize the "
"work. It also gives us a reason to ask which decisions need broad judgment "
"and which improve through repeated experience with a particular craft."
msgstr ""
"이는 이전 에세이에서 설명한 산업 변화에서 자연스럽게 나온 것입니다. 더 많은 실험을 실행할 수 있게 되면 작업 구성 방식이 변경됩니다."
" 또한 어떤 결정에 폭 넓은 판단이 필요한지, 어떤 결정은 특정 기술에 대한 반복적인 경험을 통해 개선되는지 질문할 이유를 제공합니다."
#: website/public/blog/reverse-engineering-models/index.html:757
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"For now, the strongest general model has earned its place in my workflow by "
"opening problems I had left unresolved. Those successes are what make me "
"want to examine the work more closely: how much depended on the model's "
"breadth, and how much could be handled by a model trained in this particular"
" kind of reconstruction?"
msgstr ""
"지금까지 가장 강한 범용 모델은 내가 해결하지 못했던 문제를 풀어내며 워크플로에서 자리를 얻었다. 그 성공 때문에 작업을 더 자세히 "
"살펴보고 싶다. 얼마나 많은 부분이 모델의 폭넓은 능력에 의존했을까? 이 종류의 재구성을 전문적으로 학습한 모델은 어디까지 담당할 수 "
"있을까?"
#. {ph0}: <strong >
#. {ph1}: </strong >
#: website/public/blog/reverse-engineering-models/index.html:765
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}The repositories give us a way to test the question.{ph1} I would like "
"to use that record to build the comparison and see what we learn."
msgstr ""
"{ph0}저장소는 질문을 테스트할 수 있는 방법을 제공합니다.{ph1} 해당 기록을 사용하여 비교를 구축하고 배운 내용을 확인하고 "
"싶습니다."
#: website/public/blog/reverse-engineering-models/index.html:775
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Evidence and model attribution"
msgstr "증거 및 모델 속성"
#: website/public/blog/reverse-engineering-models/index.html:783
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"The examples describe historical function-level comparisons recorded in the "
"linked commits. Whole-game runtime checks are separate milestones. Source "
"and matching records were reviewed on 13 October 2026."
msgstr ""
"예제에서는 연결된 커밋에 기록된 기능 수준 비교 기록을 설명합니다. 전체 게임 런타임 확인은 별도의 마일스톤입니다. 출처 및 일치 기록은"
" 2026년 10월 13일에 검토되었습니다."
#. {ph0}: <code>gpt-dots</code>
#. {ph1}: <code>gpt-web</code>
#: website/public/blog/reverse-engineering-models/index.html:789
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"The TH09 label {ph0} identifies GPT-6-Astra. {ph1} changed with the model "
"used at the time, so that label alone does not identify an individual run. "
"Explicit model names in the other cited commits establish their recorded "
"attribution; the histories do not contain uniform per-run cost or effort "
"measurements."
msgstr ""
"TH09 라벨 {ph0}은 GPT-6-Astra을 의미합니다. {ph1}과(와) 관련된 모델은 시간이 지남에 따라 변경되었으므로 "
"라벨만으로는 특정 실행에 사용된 모델을 식별할 수 없습니다. 다른 인용 커밋의 명시적인 모델 이름은 기록된 속성을 제공합니다. 이러한 "
"기록에는 모든 실행에 대한 일관된 비용 또는 노력 측정이 포함되지 않습니다."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/de63c0f9121963f3a6b1ab5471c4878625fd3425"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/52929ed7c299f1a5f29cc13964e22510145fd616"
#. >
#. {ph5}: </a >
#: website/public/blog/reverse-engineering-models/index.html:798
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}TH09 temporary lifetimes:{ph1} the {ph2}earlier context review{ph3} and"
" {ph4}complete cold reconstruction{ph5}."
msgstr ""
"{ph0}TH09 임시 객체 수명:{ph1} {ph2}이전 컨텍스트 검토{ph3} 및 {ph4}소스에서 깔끔한 재컴파일을 통해 확인된 "
"완전한 재구성{ph5}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/f8d12d72aaf02212ee1b585a8f3f86d7ed000269"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/da33a646221198ceb7f3df2b96e2ca0e9b2f705f"
#. >
#. {ph5}: </a >
#. {ph6}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/5f825b28a862f8e1a6d4aea2f78a42f04c09a1c0"
#. >
#. {ph7}: </a >
#: website/public/blog/reverse-engineering-models/index.html:810
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}TH09 Front callback:{ph1} {ph2}non-exact diagnostic regions{ph3}, "
"{ph4}Astra's new graph{ph5} and its {ph6}accepted recompile replay{ph7}."
msgstr ""
"{ph0}TH09 Front 콜백:{ph1} {ph2}일치하지 않는 진단 영역{ph3}, {ph4}Astra의 새로운 제어 흐름 "
"그래프{ph5} 및 {ph6}승인된 재컴파일 확인{ph7}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th095/commit/26bb64bdb093a13f73abd0ee8ae7ce199ee4658f"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th04/commit/6dce0a79d5b931f0e2a08475b90e0c33d2321b98"
#. >
#. {ph5}: </a >
#. {ph6}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/1eb843383941d00065622a9e353146c4bb96979e"
#. >
#. {ph7}: </a >
#: website/public/blog/reverse-engineering-models/index.html:826
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Compiler knowledge:{ph1} {ph2}TH095 identifier-bucket reuse{ph3}, "
"{ph4}TH04 player source and linker order{ph5} and {ph6}Luna's TH09 enemy-"
"spawn closure{ph7}."
msgstr ""
"{ph0}컴파일러 지식:{ph1} {ph2}TH095 식별자 버킷 동작 재사용{ph3}, {ph4}TH04 플레이어 소스 코드 및 링커 "
"순서{ph5} 및 {ph6}Luna의 TH09 적 생성 기능에 대한 완전한 재구성{ph7}."
#. {ph0}: <strong>
#. {ph1}: </strong>
#. {ph2}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/a393f400786e4cc6cbb1000af0dad3276da12c78"
#. >
#. {ph3}: </a >
#. {ph4}: <a
#. href="https://github.com/N0zoM1z0/th08/commit/af9cb1d3e839b15a78b47ac1701506083cc82847"
#. >
#. {ph5}: </a >
#. {ph6}: <a
#. href="https://github.com/N0zoM1z0/th09/commit/ab72fd77728293fc0beacfc656ca701b0e266016"
#. >
#. {ph7}: </a >
#: website/public/blog/reverse-engineering-models/index.html:842
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Checks and diagnostics:{ph1} {ph2}TH08 floating-literal audit{ph3}, "
"{ph4}TH08 numerical investigation{ph5} and {ph6}TH09 replay-save "
"reconstruction{ph7}."
msgstr ""
"{ph0}검사 및 진단:{ph1} {ph2}TH08 부동 소수점 상수 감사{ph3}, {ph4}TH08 수치 조사{ph5} 및 "
"{ph6}TH09 재생 저장 재구성{ph7}."
#: website/public/blog/reverse-engineering-models/index.html:859
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"The proposed specialist and RL comparisons are future experiments. The "
"project histories motivate them; no trained specialist was evaluated for "
"this essay."
msgstr ""
"제안한 특화 모델과 RL의 비교는 앞으로 해 볼 실험이다. 프로젝트 이력이 그 동기를 제공하지만, 이 글에서 학습된 특화 모델을 평가한 "
"것은 아니다."
#: website/public/blog/reverse-engineering-models/index.html:6
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Does reverse engineering need a bigger model? | REA"
msgstr "리버스 엔지니어링에 더 큰 모델이 필요할까? | REA"
#: website/public/blog/reverse-engineering-models/index.html:7
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"What Touhou reconstruction taught me about general models, specialist models"
" and learning to propose better hypotheses from compiler feedback."
msgstr ""
"Touhou 재구성을 통해 일반 모델, 전문 모델 및 컴파일러 피드백을 통해 더 나은 가설을 제안하는 방법에 대해 배운 내용."
#: website/public/blog/reverse-engineering-models/index.html:240
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "On this page"
msgstr "이 페이지에"
#: website/public/blog/reverse-engineering-models/index.html:253
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Models and reverse engineering essay"
msgstr "모델 및 리버스 엔지니어링 에세이"
#: website/public/blog/reverse-engineering-models/index.html:491
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Selected reconstruction experiments"
msgstr "선정된 재구성 실험"
#: website/public/blog/reverse-engineering-models/index.html:883
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid "Back to top"
msgstr "맨 위로"
#. {ph0}: <a
#. href="https://github.com/morluto/rea/blob/main/website/evidence/reverse-
#. engineering-models.md" >
#. {ph1}: </a >
#: website/public/blog/reverse-engineering-models/index.html:776
#, python-brace-format
msgctxt "page:blog/reverse-engineering-models/index.html"
msgid ""
"{ph0}Detailed evidence notes{ph1} include the recorded comparisons and "
"experiment context."
msgstr "{ph0}상세 증거 기록{ph1}에는 비교 결과와 실험 맥락이 담겨 있다."
#~ msgctxt "page:blog/index.html"
#~ msgid "By N0zoM1z0 · 13 October 2026 · Draft for review"
#~ msgstr "작성: N0zoM1z0 · 2026년 10월 13일 · 검토용 초안"
#~ msgctxt "page:index.html"
#~ msgid "Setup guide"
#~ msgstr "설정 가이드"
#~ msgctxt "page:get-started/index.html"
#~ msgid "Windows PowerShell"
#~ msgstr "WindowsPowerShell"
#~ msgctxt "page:get-started/index.html"
#~ msgid "macOS · Homebrew"
#~ msgstr "macOS · Homebrew"
#~ msgctxt "runtime"
#~ msgid "Copy"
#~ msgstr "복사"
#~ msgctxt "figure:dx-ball-sound-pan-investigation.svg"
#~ msgid "DXBALL.EXE"
#~ msgstr "DXBALL.EXE"
#~ msgctxt "page:examples/dino-lab/index.html"
#~ msgid "Reconstruction · dino-speed.js"
#~ msgstr "재건*디노-속도.제이에스"
#~ msgctxt "page:faq/index.html"
#~ msgid ""
#~ "With Node.js and npm available, run setup, choose your coding agent and "
#~ "review the proposed changes."
#~ msgstr "함께 Node.js 그리고 npm 사용 가능,설치 실행,코딩 에이전트를 선택하고 제안 된 변경 사항을 검토하십시오."
#~ msgctxt "page:first-investigation/index.html"
#~ msgid "A supplied example · Node.js and npm · Your coding agent"
#~ msgstr "제공된 예·Node.js및npm·코딩의 에이전트"
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "Use a coding agent such as Claude Code, Codex or Cursor. You’ll need Node.js"
#~ " and npm; the {ph0}setup guide lists supported versions{ph1}."
#~ msgstr ""
#~ "다음과 같은 코딩 에이전트 사용 Claude Code, Codex 또는 Cursor. 당신이 필요합니다 Node.js 그리고 npm; "
#~ "{ph0}설치 가이드 목록 지원되는 버전{ph1}."
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "{ph0}Page · renderer.js{ph1}{ph2}Export notes{ph3}{ph4}Calls {ph5}.{ph6}"
#~ msgstr "{ph0}페이지*렌더러.제이에스{ph1}{ph2}노트 내보내기{ph3}{ph4}통화 {ph5}.{ph6}"
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "{ph0}Bridge · preload.js{ph1}{ph2}{ph3}{ph4}{ph5}Sends a named message to "
#~ "the main process.{ph6}"
#~ msgstr "{ph0}브리지*예압.제이에스{ph1}{ph2}{ph3}{ph4}{ph5}주 프로세스에 명명된 메시지를 보냅니다.{ph6}"
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "{ph0}Handler · main.js{ph1}{ph2}Write notes.csv{ph3}{ph4}Calls the formatter"
#~ " in {ph5} and writes the file.{ph6}"
#~ msgstr ""
#~ "{ph0}핸들러*메인.제이에스{ph1}{ph2}메모를 작성하십시오.2015 년{ph3}{ph4}포맷터를 호출합니다 {ph5} 그리고 "
#~ "파일을 씁니다.{ph6}"
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Predict the CSV for a note with id 1 and title Hello, "
#~ "\"REA\". Then run the example’s toCsv formatter with Node.js to check it. "
#~ "Show the prediction and actual output.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}예측 CSV 아이디 1 과 제목이 있는 메모를 위해 안녕하세요,\"REA\". 그런 다음 예제를 "
#~ "실행하십시오. Node.js 그것을 확인합니다. 예측 및 실제 출력을 표시합니다.{ph3}{ph4}{ph5}"
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "The title stays in one quoted field; each quotation mark is doubled. This "
#~ "checks the formatter directly with Node.js."
#~ msgstr ""
#~ "제목은 하나의 인용 필드에 남아 있으며 각 인용 부호는 두 배로 표시됩니다. 이것은 포맷터를 직접 확인합니다. Node.js."
#~ msgctxt "page:first-investigation/index.html"
#~ msgid "Node.js · CSV formatter"
#~ msgstr "Node.js·CSV포맷터"
#~ msgctxt "page:get-started/index.html"
#~ msgid ""
#~ "You'll need Node.js 22 (22.19+), 24 (24.11+) or 26+. npm comes with Node.js."
#~ msgstr "당신이 필요합니다Node.js 22 (22.19+), 24 (24.11+) 또는 26+. npm와 함께 제공Node.js."
#~ msgctxt "page:get-started/index.html"
#~ msgid "Don't have Node.js, or not sure?"
#~ msgstr "이 없Node.js,또는 확신할 수 없으십니까?"
#, python-brace-format
#~ msgctxt "page:get-started/index.html"
#~ msgid ""
#~ "If {ph0} prints v22.19+, v24.11+ or v26+, you're ready. If it prints an "
#~ "older version or \"not recognized\" / \"command not found\", install Node.js"
#~ " 24 LTS:"
#~ msgstr ""
#~ "만약 {ph0} 이 응용 프로그램을 설치하려면 다음을 수행하십시오. 이전 버전 또는\"인식되지 않음\"/\"명령을 찾을 수 없음\"을 "
#~ "인쇄하는 경우 다음을 설치하십시오 Node.js 24 리터:"
#, python-brace-format
#~ msgctxt "page:guides/browser/index.html"
#~ msgid ""
#~ "{ph0}Open the example{ph1} · {ph2}Download export.js{ph3} · {ph4}Download "
#~ "notes.json{ph5}"
#~ msgstr "{ph0}예제 열기{ph1} · {ph2}다운로드 내보내기.제이에스{ph3} · {ph4}다운로드 노트.제이슨은{ph5}"
#, python-brace-format
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid ""
#~ "Download the example and unzip it. The archive contains the complete {ph0} "
#~ "folder. Analyze it with Node.js and npm; Electron is not needed for this "
#~ "example."
#~ msgstr ""
#~ "예제를 다운로드하고 압축을 풉니 다. 아카이브에는 전체 {ph0} 폴더 그것을 분석 Node.js 그리고 npm; Electron 이 "
#~ "예제에는 필요하지 않습니다."
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid ""
#~ "First time, or missing Node.js or a coding agent? {ph0}Follow the step-by-"
#~ "step setup guide →{ph1}"
#~ msgstr "처음 또는 누락 Node.js 아니면 코딩 에이전트? {ph0}단계별 설치 가이드를 따르십시오.{ph1}"
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid "One question: {ph0}why does Calculator give 220 for 200 + 10%?{ph1}"
#~ msgstr "예를 들어: {ph0}계산기에서 200 + 10%가 왜 220이 될까요?{ph1}"
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Use REA to inspect Windows Calculator. Why does 200 + 10% "
#~ "give 220?{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}사용 REA 검사 Windows 계산기 왜 200+10%는 220 을 제공합니까?{ph3}{ph4}{ph5}"
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid ""
#~ "We saw why {ph0}200 + 10% gives 220.{ph1} Now let’s recover the rules for "
#~ "both + and ×, and try them."
#~ msgstr ""
#~ "우리는 이유를 보았다 {ph0}200+10%제공 220.{ph1} 이제+와 200 에 대한 규칙을 복구하고 시도해 보겠습니다."
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid ""
#~ "{ph0}01 · REA reads calc.exe{ph1}{ph2}It launches the Calculator "
#~ "app{ph3}{ph4}The code opens {ph5}. The agent then selects the installed "
#~ "app’s library.{ph6}"
#~ msgstr ""
#~ "{ph0}01 · REA 석회질을 읽습니다.엑스{ph1}{ph2}그것은 계산기 응용 프로그램을 시작합니다{ph3}{ph4}코드가 열립니다"
#~ " {ph5}. 그런 다음 에이전트는 설치된 앱의 라이브러리를 선택합니다.{ph6}"
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Use REA to inspect aegis-v3.4.3.apk. Find how it generates "
#~ "the six-digit login code, explain why it changes every 30 seconds, and "
#~ "rebuild a small demo where I can change the time.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}사용 REA 이지스-3.4.3 을 검사합니다.-아뇨 이 6 자리 로그인 코드를 생성하는 방법을 찾아 30 "
#~ "초마다 변경 이유를 설명하고 시간을 변경할 수있는 작은 데모를 다시 작성하십시오.{ph3}{ph4}{ph5}"
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "tab_browser_view/preload.js · API member"
#~ msgstr "탭 _브라우저 _뷰/프리로드.회원가입"
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "tab_browser_view/preload.js · IPC helper"
#~ msgstr "탭 _브라우저 _뷰/프리로드.쨩챌쨔챈쨀"
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "main/index.js · handler helper"
#~ msgstr "주/색인.쨩챌쨔챈쨀"
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "main/index.js · clipboard receiver"
#~ msgstr "주/색인.클립보드 수신기"
#~ msgctxt "page:first-investigation/index.html"
#~ msgid "main.js · lines 8–12"
#~ msgstr "메인8-12 호선"
#~ msgctxt "page:guides/browser/index.html"
#~ msgid "export.js · example source excerpt"
#~ msgstr "수출.*예 출처 발췌"
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid "renderer.js · example source"
#~ msgstr "렌더러예시 소스"
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid "preload.js · example source"
#~ msgstr "사전 로드예시 소스"
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid "main.js · example source"
#~ msgstr "메인예시 소스"
#~ msgctxt "page:index.html"
#~ msgid "REA · loaded index.js · selected lines"
#~ msgstr "REA·드 인덱스입니다.선택 라인"
#, python-brace-format
#~ msgctxt "page:faq/index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Use REA to analyze /absolute/path/to/app and explain how it "
#~ "exports data. Show the relevant code and source locations.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}사용 REA 앱/절대/경로/를 분석하고 데이터를 내보내는 방법을 설명합니다. 관련 코드 및 소스 위치를 "
#~ "표시합니다.{ph3}{ph4}{ph5}"
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Install REA and connect it to this coding agent using npx "
#~ "rea-agents@latest setup. Show me the setup plan for approval, then verify "
#~ "the installation.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}설치 REA 그리고 그것을 사용하여 이 코딩 에이전트에 연결하십시오 npx 정말이야-에이전트@최신 설정. "
#~ "승인을 위해 설치 계획을 표시한 다음 설치를 확인합니다.{ph3}{ph4}{ph5}"
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Download https://rea.tools/examples/notes-example.zip into a"
#~ " new example folder and unpack it. Use REA to find what happens when I click"
#~ " Export notes. Show where notes.csv is written, which fields it contains, "
#~ "and the relevant files and lines.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}다운로드 https://rea.tools/examples/notes-example.zip 새 예제 폴더에 "
#~ "넣고 압축을 풉니 다. 사용 REA 노트 내보내기를 클릭하면 어떤 일이 발생하는지 찾을 수 있습니다. 어디 메모를 표시합니다.그리고 관련"
#~ " 파일과 라인.{ph3}{ph4}{ph5}"
#, python-brace-format
#~ msgctxt "page:get-started/index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Install REA and connect it to this coding agent using npx "
#~ "rea-agents@latest setup. Show me the setup plan for approval, then verify "
#~ "the installation.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}설치 REA 그리고 그것을 사용하여 이 코딩 에이전트에 연결하십시오 npx 정말이야-에이전트@최신 설정. "
#~ "승인을 위해 설치 계획을 표시한 다음 설치를 확인합니다.{ph3}{ph4}{ph5}"
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Install REA and connect it to this coding agent using npx "
#~ "rea-agents@latest setup. Show me the setup plan for approval, then verify "
#~ "the installation.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}설치 REA 그리고 그것을 사용하여 이 코딩 에이전트에 연결하십시오 npx 정말이야-에이전트@최신 설정. "
#~ "승인을 위해 설치 계획을 표시한 다음 설치를 확인합니다.{ph3}{ph4}{ph5}"
#~ msgctxt "page:index.html"
#~ msgid "0x5b"
#~ msgstr "00000000000"
#~ msgctxt "page:index.html"
#~ msgid "0x5c"
#~ msgstr "00000000000"
#~ msgctxt "page:index.html"
#~ msgid "0x64"
#~ msgstr "0*64"
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid ""
#~ "{ph0}›{ph1}{ph2}Use REA to inspect https://rea.tools/. Clone this website "
#~ "for me.{ph3}{ph4}{ph5}"
#~ msgstr ""
#~ "{ph0}›{ph1}{ph2}사용 REA 검사 https://rea.tools/. 나를 위해이 웹 사이트를 "
#~ "복제.{ph3}{ph4}{ph5}"
#~ msgctxt "figure:ctf-mask-equation.svg"
#~ msgid "code[21] = 55"
#~ msgstr "코드[21]=55"
#~ msgctxt "figure:dx-ball-sound-pan-investigation.svg"
#~ msgid "0x00406400"
#~ msgstr "0x00406400"
#~ msgctxt "figure:dx-ball-sound-pan-investigation.svg"
#~ msgid "× pan_scale"
#~ msgstr " 이 경우 다음 단계를 수행 할 수 있습니다."
#, python-brace-format
#~ msgctxt "shared"
#~ msgid "{ph0}REA{ph1}{ph2}Reverse Engineer Anything{ph3}"
#~ msgstr "{ph0}REA{ph1}{ph2}리버스 엔지니어링 아무것도{ph3}"
#, python-brace-format
#~ msgctxt "shared"
#~ msgid ""
#~ "{ph0}Showcases{ph1} {ph2}Blog{ph3} {ph4}Get started{ph5} {ph6}Guides{ph7} "
#~ "{ph8}FAQ{ph9}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "shared"
#~ msgid ""
#~ "{ph0}Source{ph1}{ph2}MIT license{ph3}{ph4}Join the community{ph5}{ph6}Follow"
#~ " us on X{ph7}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:blog/touhou-reconstruction/index.html"
#~ msgid "{ph0}TH08{ph1}{ph2}→{ph3}{ph4}TH095{ph5}{ph6}→{ph7}{ph8}TH04{ph9}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:examples/dino-lab/index.html"
#~ msgid "{ph0}REA · selected script source{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid "{ph0}main.js · lines 8–12{ph1}{ph2}Source{ph3}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:first-investigation/index.html"
#~ msgid "{ph0}Expected formatter output{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/browser/index.html"
#~ msgid "{ph0}export.js · example source excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/index.html"
#~ msgid ""
#~ "{ph0}Instructions{ph1} {ph2}→{ph3} {ph4}Caller{ph5} {ph6}→{ph7} "
#~ "{ph8}Constants{ph9} {ph10}→{ph11} {ph12}C function{ph13}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/index.html"
#~ msgid ""
#~ "{ph0}Button{ph1} {ph2}→{ph3} {ph4}Preload API{ph5} {ph6}→{ph7} {ph8}IPC{ph9}"
#~ " {ph10}→{ph11} {ph12}CSV file{ph13}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/index.html"
#~ msgid ""
#~ "{ph0}Your click{ph1} {ph2}→{ph3} {ph4}Captured request{ph5} {ph6}→{ph7} "
#~ "{ph8}Export script{ph9}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid "{ph0}renderer.js · example source{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid "{ph0}preload.js · example source{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid "{ph0}main.js · example source{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/javascript/index.html"
#~ msgid "{ph0}REA result · summary.ipc excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/native/index.html"
#~ msgid "{ph0}REA instruction excerpt · 0x406409{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/native/index.html"
#~ msgid "{ph0}REA caller excerpt · 0x411f5b{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/native/index.html"
#~ msgid "{ph0}REA byte results · interpreted as little-endian doubles{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:guides/native/index.html"
#~ msgid "{ph0}Recovered C · excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid ""
#~ "{ph0}See how REA works ↓{ph1} {ph2}Setup guide{ph3} {ph4}Showcases →{ph5}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid "{ph0}REA · loaded index.js · selected lines{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid "{ph0}Selected settings from the inspected script{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid "{ph0}Readable summary of the % handler{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid "{ph0}REA · selected original instructions{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid "{ph0}Operator IDs · Microsoft’s source{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:index.html"
#~ msgid "{ph0}Join the community{ph1} {ph2}Follow @reatools on X{ph3}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid "{ph0}Agent → REA{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid "{ph0}REA → agent · selected results{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid "{ph0}REA → agent · methods and callers{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid "{ph0}REA · selected decompiled Java{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid "{ph0}Readable summary · agent's interpretation{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid "{ph0}REA · generateOTP, complete body{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/aegis/index.html"
#~ msgid ""
#~ "{ph0}Download Aegis APK{ph1}{ph2}Download Android analysis provider{ph3}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/ctf/index.html"
#~ msgid "{ph0}Agent → REA{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/ctf/index.html"
#~ msgid "{ph0}REA → agent · selected results{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/ctf/index.html"
#~ msgid "{ph0}REA → agent · selected instructions{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/ctf/index.html"
#~ msgid "{ph0}Agent → REA · read_bytes{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/ctf/index.html"
#~ msgid "{ph0}REA → agent · seventh entries{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/ctf/index.html"
#~ msgid "{ph0}Original executable · SHA-256{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/ctf/index.html"
#~ msgid "{ph0}Download the original challenge{ph1}{ph2}Download solver{ph3}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/dx-ball/index.html"
#~ msgid "{ph0}REA result · pseudocode excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/dx-ball/index.html"
#~ msgid "{ph0}Agent → REA · {ph1}{ph2}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/dx-ball/index.html"
#~ msgid "{ph0}REA → agent · instruction excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/dx-ball/index.html"
#~ msgid "{ph0}REA → agent · caller excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/dx-ball/index.html"
#~ msgid "{ph0}Agent → REA · two {ph1} requests{ph2}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/dx-ball/index.html"
#~ msgid "{ph0}REA byte results · decoded as doubles{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/dx-ball/index.html"
#~ msgid "{ph0}Start with your own target{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/index.html"
#~ msgid ""
#~ "{ph0}APK{ph1} {ph2}→{ph3} {ph4}Generating code{ph5} {ph6}→{ph7} "
#~ "{ph8}Recovered rule{ph9} {ph10}→{ph11} {ph12}Adjustable clock{ph13}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/index.html"
#~ msgid ""
#~ "{ph0}Binary{ph1} {ph2}→{ph3} {ph4}Checking code{ph5} {ph6}→{ph7} "
#~ "{ph8}Equations{ph9} {ph10}→{ph11} {ph12}Correct!{ph13}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/index.html"
#~ msgid ""
#~ "{ph0}Executable{ph1} {ph2}→{ph3} {ph4}REA findings{ph5} {ph6}→{ph7} "
#~ "{ph8}Recovered C{ph9} {ph10}→{ph11} {ph12}Validation{ph13}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/index.html"
#~ msgid ""
#~ "{ph0}Packaged app{ph1} {ph2}→{ph3} {ph4}Exposed API{ph5} {ph6}→{ph7} "
#~ "{ph8}IPC wrappers{ph9} {ph10}→{ph11} {ph12}Clipboard{ph13}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/index.html"
#~ msgid ""
#~ "{ph0}Original DOS code{ph1} {ph2}→{ph3} {ph4}REA instructions{ph5} "
#~ "{ph6}→{ph7} {ph8}Angle calculation{ph9} {ph10}→{ph11} {ph12}Bullet "
#~ "ring{ph13}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "{ph0}Exposed page API{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "{ph0}Renderer IPC call{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "{ph0}Sent to the system clipboard{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "{ph0}Saved locally by Notion{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "{ph0}Markdown input{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "{ph0}Structured parser output · excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/notion/index.html"
#~ msgid "{ph0}Analyze your own app{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}Agent → REA{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}REA → agent · selected fields{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}Agent → REA · {ph1}{ph2}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}REA → agent · instruction excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}Same function result · aim excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}Corresponding maintained C++{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}Ring macro · TH04 branch, excerpt{ph1}"
#~ msgstr ""
#, python-brace-format
#~ msgctxt "page:showcase/th04/index.html"
#~ msgid "{ph0}Angle and velocity · source excerpt{ph1}"
#~ msgstr ""