import errno
import json
import os
import sys

# The Chio runner supplies one bootstrap line; the probe needs no reusable token.
bootstrap = json.loads(sys.stdin.readline())
requested = bootstrap["input"]["open_files"]
if not isinstance(requested, int) or not 1 <= requested <= 256:
    raise SystemExit("open_files must be an integer from 1 to 256")
handles = []
try:
    for _ in range(requested):
        handles.append(os.open("/dev/null", os.O_RDONLY))
    print(json.dumps({"opened": len(handles), "completed": True}), flush=True)
except OSError as error:
    if error.errno != errno.EMFILE:
        raise
    print(json.dumps({"opened": len(handles), "refused": "EMFILE"}), flush=True)
    raise SystemExit(66)
finally:
    for handle in handles:
        os.close(handle)
