Dead Fraction

시간 제한1초메모리 제한128 MB

문제

마이크는 마감에 쫓기며 학위 논문을 급하게 마무리하고 있습니다. 앞으로 3일 안에 연구 노트를 그럴듯한 형태로 정리해야 하는데, 그동안 계산을 너무 대충 해 왔다는 사실을 깨닫습니다. 계산이 필요할 때마다 그는 계산기에 값을 넣고, 화면에 나온 답에서 필요하다고 느낀 만큼만 받아 적었습니다. 순환소수가 표시되면 앞쪽 몇 자리만 적고 뒤에 "..."을 붙였습니다. 예를 들어 "1/3" 대신 "0.3333..."이라고 적었습니다.

문제는 그의 결과에는 정확한 분수가 필요하다는 점입니다. 모든 계산을 다시 할 시간이 없으니, 그가 적어 둔 소수로부터 원래 분수를 복원하는 프로그램을 작성하세요.

문제를 명확히 하기 위해, 원래 분수는 항상 주어진 자릿수 배열을 만들어 내는 가장 단순한 분수라고 가정합니다. 여기서 "가장 단순한"이란 분모가 가장 작은 분수를 뜻합니다. 또한 마이크는 순환 부분의 자릿수를 하나도 빠뜨리지 않았다고 가정합니다. 즉 끝에 붙은 "..."은 그가 적은 자릿수의 어떤 접미부(뒤쪽 일부)가 영원히 반복됨을 뜻하며, 그 반복되는 부분은 (설령 전부 0이더라도) 빠짐없이 기록되었습니다. 반복되는 접미부의 길이는 알 수 없으므로, 뒤에서부터 $1, 2, \ldots$ 자리, 나아가 전체 자릿수까지 반복되는 모든 경우를 고려하여 그중 분모가 가장 작은 분수를 답으로 삼습니다.

입력

여러 개의 테스트 케이스가 주어집니다. 각 테스트 케이스는 "0.dddd..." 형태의 한 줄이며, dddd는 $1$자리부터 $9$자리까지의 숫자 문자열로 전부 0은 아닙니다. 마지막 케이스 다음에는 $0$ 하나만 있는 줄이 오며, 이 줄은 처리하지 않습니다.

출력

각 테스트 케이스마다 복원한 분수를 한 줄에 하나씩, 기약분수 형태의 분자/분모로 출력합니다.

힌트

유한소수는 두 가지 순환 표현을 가진다는 점에 유의하세요. 예를 들어 $1/5 = 0.2000\ldots = 0.1999\ldots$ 입니다.