# -*- coding: utf-8 -*-
import sys, io, re
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')

with open('protection_page.html', encoding='utf-8', errors='replace') as f:
    html = f.read()

print("=== RUNTIME / KEEP-RUNNING related fields ===")
# Search around runtimeChecks in HTML
idx = html.lower().find('runtimechecks')
while idx >= 0:
    print(f"\n[pos {idx}]")
    print(html[max(0,idx-300):idx+600])
    print("---")
    idx = html.lower().find('runtimechecks', idx+1)

print("\n=== ALL hidden inputs near anti/runtime ===")
for m in re.finditer(r'<input[^>]+type=["\']hidden["\'][^>]*>', html, re.I):
    tag = m.group(0)
    if any(x in tag.lower() for x in ['runtime','keep','running','checks','anti','mode','soft']):
        print(tag)

print("\n=== Search for keepRunning / softMode / continueOnFail ===")
for kw in ['keeprunning','softmode','keepalive','continueon','allowrun','failsoft','graceful','mode']:
    idx2 = html.lower().find(kw)
    if idx2 >= 0:
        print(f"\n[{kw}]:", html[max(0,idx2-100):idx2+300])
