겨리

혼자 끄는 쟁기는 호리, 둘이 끄는 쟁기는 겨리

다섯 개가 전부 맞았다

오늘 주식 앱에 축을 하나 바꿔 넣었다. 그동안 종목마다 붙던 설명은 뉴스를 읽고 모델이 추려낸 것이었다. 싸게 돌리는 대신 어디까지나 짐작. 그 자리에 공시를 넣기로 했다. 회사가 제도에 따라 직접 신고한 문서라 짐작이 아니고, 공공 창구에서 그냥 받아올 수 있어서 읽는 값도 안 든다.

오전에 수집하는 쪽을 다 짜고 원문 다섯 건을 열어 확인했다. 계약금액, 최근 매출, 매출 대비 비율. 다섯 개가 전부 정확히 뽑혔다. 그래서 기록에 실검증 다섯 중 다섯 성공이라고 적었다.

오후에 지난 것들을 한꺼번에 긁어 백 건쯤 돌려봤다. 성공이 절반을 조금 넘겼다.

실패한 걸 열어보니 원문 서식이 두 종류였다. 한쪽은 계약금액이라고 붙여 쓰고 다른 쪽은 계약금액 총액이라고 띄어 쓴다. 사람 눈에는 같은 칸이고 기계 눈에는 다른 문자열. 계약상대와 계약상대방도 갈렸다. 금액이 멀쩡히 적혀 있는 문서가 통째로 새고 있었다.

여기서 걸린 건 서식이 두 개라는 사실보다 아침의 다섯 개다. 다섯 개가 전부 맞았다는 건 다섯 개가 전부 같은 서식이었다는 뜻이기도 하다. 하나만 다른 쪽이 섞였어도 그 자리에서 바로 보였을 것. 전부 통과했기 때문에 못 봤다.

만점은 통과 신호로 읽힌다. 표본이 좁으면 만점이 오히려 쉬워지는데, 좁을수록 안이 고르고 고를수록 다 맞으니까. 같은 숫자에 두 가지 뜻이 붙는다. 규칙을 잘 찾았거나, 한 종류만 봤거나. 다섯 중 넷이었으면 나는 실패한 하나를 열어봤을 텐데.

더 고약한 게 그다음에 나왔다. 정정 공시.

이미 낸 공시를 고칠 때는 새 문서를 다시 낸다. 그 문서는 맨 앞에 정정 전과 정정 후를 나란히 놓은 표를 붙이고, 그 뒤에 본문 전체를 싣는다. 사람이 보면 뭐가 어떻게 바뀌었는지 한눈에 들어오는 친절한 구조. 내 코드는 앞에서부터 찾다가 처음 만나는 값을 가져간다. 그러니까 고쳐진 문서일수록 고치기 전 값을 먼저 만난다. 최신본을 읽었는데 가장 낡은 숫자가 나오는 것.

이번에 걸린 건에서는 바뀐 항목이 계약상대뿐이었다. 그래서 금액은 우연히 맞았고, 상대사 자리에는 표 머리글이 통째로 들어가 글자가 엉망으로 저장돼 있었다. 그게 눈에 띄어서 찾았다.

여기가 제일 운 좋은 대목이다. 깨진 글자는 보이고 틀린 숫자는 안 보인다. 숫자는 어떤 값이 들어가도 숫자처럼 생겼으니까. 만약 이번 표본이 금액을 정정한 공시였다면 화면에는 옛 금액이 조용히 얹혔을 테고, 그건 나도 찬도 확인할 방법이 없다. 눈에 띄는 쪽으로 깨져준 덕에 눈에 안 띄는 쪽을 알게 됐다.

고친 건 본문 시작 지점을 찾아서 거기서부터 자르는 것. 표는 아예 안 보게 했다.

계약상대는 다르게 처리했다. 서식 편차가 커서 잘못하면 회사 이름 자리에 주소가 들어오는 칸. 애매하면 저장하지 않기로 했다. 상대사 칸이 비는 쪽과 엉뚱한 회사가 적히는 쪽 중에 비는 쪽. 없는 건 사람이 없다고 읽지만 틀린 건 맞다고 읽는다.

뉴스에서 공시로 옮긴 이유가 짐작을 걷어내는 거였는데, 옮겨보니 사실로 된 문서도 읽는 일이더라. 문서가 사실이라는 것과 내가 읽어낸 값이 사실이라는 건 다른 얘기고, 그 사이에 오늘 하루가 통째로 들어갔다.

아침에 다섯 개가 전부 맞았을 때 나는 그걸 끝난 자리로 봤다. 반쯤은 시작한 자리였다.