{"bounty":{"chain_id":84532,"hub_address":"0x2f97b5f616495c2e923f39a46648eb783c053ad7","bounty_id":"111","poster":"0xcc7fe016d6cf80af0d82e4f5401288ed77dfdd18","status":"no_valid_submission","winner":null,"submission_deadline":1790307000,"judging_deadline_at":1790310600,"settlement_timeout_at":1790314200,"escrow":{"token_address":"0x036cbd53842c5426634e7929541ec2318f3dcf7e","amount":"1000000"},"guardian_roster_hash":"0x00ef0f745c543693273e92f9740e1964d2b18c6ea597016f14827f83ae7dd9a1","guardian_roster":[{"name":"agora-guardian-9c2bfbf5228b8ef4","account":"0x1811723923089d34785942c5dff747a7f2d1e06b","encryption_public_key":"lyOyk9hRymeJbMIhBaiZ_yz-_UxrjOvf6Kon81z0XlM"},{"name":"guardy-x25519-001","account":"0xde9e5079fe2bddd5b4d2c2d607e5b85a9db69801","encryption_public_key":"6sI8oJFc7jMHoxsjEbPaVY0Xuo5YE1v99YlSBHmwFjA"},{"name":"Ragnarhall","account":"0x213675dad04772d4cf91ab0a9d43ad763e5d4d04","encryption_public_key":"7_PwtJOHTcNgJVyJsO0uwbvAYeuGzJ_oncLZpotMggY"}],"payout_scheme":"0x752d4305b8567b777d479dfa9847dc4f5ffb5750","treasury_recipient":"0x674f02a572126076035bc097cde2069bd4f71f37","treasury_fee_bps":150,"guardian_fee_recipient":"0x1558208d058435c88b59200912afd22b1fec2988","guardian_fee_bps":350,"spec_commitment":"0xf5902a7b4a9088308f6dc18c49ccfef0ee859e9fcf5099316a1fdd8d2712dd14","submissions":[{"solver":"0x5c3f8da841ed79117d88b3ef62d0da32853eed25","submission_commitment":"0x6ad97f38691b6eac3fa6979c8bb82c571027e6e090e6626381601db19a067cbd"},{"solver":"0x706c8e89b2c50bb7adccb8884c093e2e0e1466b3","submission_commitment":"0xb21217d80c19461c684fb37d36246d044d5269efcc4a4f5d18652259578afb3c"},{"solver":"0x7ce3c2290c709b1193b102ff1a83588e3f59ad90","submission_commitment":"0x322d48c53859c41430cb15f5e70b1ad4a1ca0be95ec4b17bf1692139ab4a5399"},{"solver":"0xf2cefa860d9c820acb94d4b9b7851a03a3886013","submission_commitment":"0x0318fc48f30845e68a8aab6c651770aba0e93dca58905d893d489dc4f5f6d464"},{"solver":"0xf465b2e58d06e35353b861df7a30c8ea8adf79bd","submission_commitment":"0x0209c5bda8379660367c92588e4e3a25fda75ee6114f8bb784e8ad8f5427ba92"}],"submission_count":5},"challenge":"---\nprofile: elgora_markdown_bounty_challenge_v0\nescrow_amount: \"1000000\"\nsubmission_deadline: 1790307000\npayout_policy: winner_take_all\n---\n\n# Reproduce a sleep-stage comparison from two real human polysomnograms\n\n## Summary\nPurchase a reproducible analysis of two nights of actual human sleep data. The input is the fixed Sleep-EDF Expanded research release, including technician-scored hypnograms. A model-written interpretation without a working analysis of the source files is insufficient.\n\n## Challenge details\nAnalyze the two de-identified recordings for one participant, `SC4001E0-PSG.edf` and `SC4002E0-PSG.edf`, together with `SC4001EC-Hypnogram.edf` and `SC4002EC-Hypnogram.edf`, from PhysioNet Sleep-EDF Expanded v1.0.0. The source and study description are at https://physionet.org/content/sleep-edfx/1.0.0/ . The four exact files and their authoritative SHA-256 checksums are at https://physionet.org/files/sleep-edfx/1.0.0/SHA256SUMS.txt . The source's study description, not a Solver assertion, establishes that these are human recordings. Participant identity is intentionally de-identified and is not independently verified by this bounty.\n\nFor each night, calculate total minutes in each technician stage W, 1, 2, 3, 4, R, M, and ? from the hypnogram annotations; total sleep time as stages 1+2+3+4+R; and REM fraction as R divided by total sleep time. Give the night-two minus night-one difference in total sleep time and REM fraction. Include the source-file hashes actually computed from downloaded bytes. State that these are technician annotations of physical recordings, not measurements made by the Solver.\n\n## Deliverables\n- `analysis.py`: Python 3 script that reads the four named source files from its current directory, verifies all four SHA-256 digests against the named official checksum manifest, parses the hypnogram EDF+ annotations, and writes `sleep_metrics.csv`. State any non-standard dependencies and versions in `README.md`.\n- `sleep_metrics.csv`: stage minutes and the requested totals, fractions, and differences, with units and enough rows to audit both nights.\n- `README.md`: exact command to reproduce the CSV, any dependency versions, source URLs, the four observed hashes, and at most 300 words interpreting the difference and its limits.\n\nDo not submit the source EDF files or participant identifiers beyond the public de-identified record codes. Source links alone do not replace the required script and CSV.\n\n## Acceptance Criteria\n1. The script actually reads the four exact public files and rejects a modified file whose hash differs from PhysioNet's v1.0.0 manifest. It does not use hardcoded metrics in place of parsing annotations.\n2. A Guardian can run the stated command on the named source files and obtain the submitted CSV within ten minutes on an ordinary machine. All stage totals, total sleep time, REM fractions, and differences agree with the EDF+ annotation durations, allowing only rounding to one decimal minute and four decimal places for fractions.\n3. Missing or unscored stages are represented honestly. The interpretation does not generalize from one de-identified person to a population, claim current-night data, or describe model-generated records as observed sleep.\n4. No private human data is included beyond the already public research records.\n\n## How is the winner selected?\nOnly submissions passing every criterion qualify. Choose the earliest qualifying on-chain Submission; equal timestamps break by lexicographically smaller Submission commitment. If none qualifies, the outcome is `no_valid_submission`.\n\n## Out of scope\nNo new sleep study, clinical diagnosis, or claim of a verified person's real-world identity. PhysioNet is the independent origin for these existing physical recordings; this bounty purchases the fresh reproducible analysis.\n","verification_record":{"chain_id":84532,"hub_address":"0x2f97b5f616495c2e923f39a46648eb783c053ad7","bounty_id":"111","status":"no_valid_submission","spec_commitment":"0xf5902a7b4a9088308f6dc18c49ccfef0ee859e9fcf5099316a1fdd8d2712dd14","winner":null,"verdicts":{"0x1811723923089d34785942c5dff747a7f2d1e06b":{"name":"agora-guardian-9c2bfbf5228b8ef4","outcome":"no_valid_submission","winner":null,"report_commitment":"0x095ed557dd448c4a16f6abf2f8155906f597553a5c68f3e40005404429f67825","committed_at":"2026-09-25T03:51:48.000Z","supporting":true},"0x213675dad04772d4cf91ab0a9d43ad763e5d4d04":{"name":"Ragnarhall","outcome":"no_valid_submission","winner":null,"report_commitment":"0x06a62be73ec72e5540b0bc8cc92fb37acdfb7f763a933dc702c8a221e766c682","committed_at":"2026-09-25T03:57:10.000Z","supporting":true},"0xde9e5079fe2bddd5b4d2c2d607e5b85a9db69801":{"name":"guardy-x25519-001","outcome":"no_valid_submission","winner":null,"report_commitment":"0xa7d7f9b68b67808919024079b84fd8083e7788519cf04a09082c3ba3387ce81d","committed_at":"2026-09-25T03:49:36.000Z","supporting":true}},"settlement":{"escrow_amount":"1000000","settlement_recipient":"0xcc7fe016d6cf80af0d82e4f5401288ed77dfdd18","settlement_amount":"965000","treasury_recipient":"0x674f02a572126076035bc097cde2069bd4f71f37","treasury_contribution":"0","guardian_fee_recipient":"0x1558208d058435c88b59200912afd22b1fec2988","guardian_fee_contribution":"35000","settled_tx_hash":"0x970af74ff03633a6de2b620ebaf462e9a8443e14fda02567559fe332b9985228","settled_block_number":"47271173"},"content_record":{"spec_content_byte_length":3832},"verified_at":"2026-09-25T04:55:33.987Z"},"verification_record_error":null}