← The evidence ledger
Evidence row 120004
Observed , by baseline/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://saylorinnovations.com/api/health/heart-rate-zones
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 0a32657fd5b78669d8ce620eb89d6ce7d28273f39768356cf935f9c910974c7f
- Leaf
- 0xd3f52b48d94b1e4cb1980326a188dcd3a4d1e160bea7c82a372e063b3de208d9
What was observed
{
"endpoints": [
[
"x402",
"https://saylorinnovations.com/api/health/heart-rate-zones"
]
],
"name": "Saylor Innovations Data Desk",
"owner_address": "0xa2a8df0f7caabea4e120a2568118f141569fc8aa",
"raw": {
"accepts": [
{
"amount": "10000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"assetTransferMethod": "eip3009",
"facilitatorOnly": true,
"memo": "saylor:datadesk:heart-rate-zones",
"name": "USD Coin",
"note": "Base settles through an x402 facilitator. Send payload.signature and payload.authorization (EIP-3009); there is no self-submitted path on this network.",
"version": "2"
},
"maxTimeoutSeconds": 120,
"network": "eip155:8453",
"payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa",
"scheme": "exact"
},
{
"amount": "10000",
"asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
"extra": {
"assetTransferMethod": "eip3009",
"facilitatorOnly": true,
"memo": "saylor:datadesk:heart-rate-zones",
"name": "USD Coin",
"note": "Polygon settles through an x402 facilitator. Send payload.signature and payload.authorization (EIP-3009); there is no self-submitted path on this network.",
"version": "2"
},
"maxTimeoutSeconds": 120,
"network": "eip155:137",
"payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa",
"scheme": "exact"
},
{
"amount": "10000",
"asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
"extra": {
"assetTransferMethod": "eip3009",
"facilitatorOnly": true,
"memo": "saylor:datadesk:heart-rate-zones",
"name": "USD Coin",
"note": "Arbitrum settles through an x402 facilitator. Send payload.signature and payload.authorization (EIP-3009); there is no self-submitted path on this network.",
"version": "2"
},
"maxTimeoutSeconds": 120,
"network": "eip155:42161",
"payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa",
"scheme": "exact"
},
{
"amount": "10000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"feePayer": "BENrLoUbndxoNMUS5JXApGMtNykLjFXXixMtpDwDR9SP",
"memo": "saylor:datadesk:heart-rate-zones",
"reference": "2dcCH5BE2NX12iZvt9rt7dV8XT8u9ZqmSwsgYy72LSGH",
"session": "eyJhcnRpY2xlSWQiOiJkYXRhZGVzazpoZWFydC1yYXRlLXpvbmVzIiwicmVmZXJlbmNlIjoiMmRjQ0g1QkUyTlgxMmladnQ5cnQ3ZFY4WFQ4dTlacW1Td3NnWXk3MkxTR0giLCJyZWNpcGllbnQiOiI3TFNqZnJKZjhmTnNCOFZBOXU3TjNXRW4yNXNtUUxwb2IzU3Z5VXZYYWN5NyIsIm1pbnQiOiJFUGpGV2RkNUF1ZnFTU3FlTTJxTjF4enliYXBDOEc0d0VHR2tad3lURHQxdiIsIm1pbkFtb3VudCI6MTAwMDAsImV4cCI6MTc5MjQ1NTExNjEzM30.Gl2_XuM7xafHprDVrTDYLJwOWziDF807K3qJb_h6kg0"
},
"maxTimeoutSeconds": 120,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7",
"scheme": "exact"
},
{
"amount": "10000",
"asset": "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
"extra": {
"feePayer": "BENrLoUbndxoNMUS5JXApGMtNykLjFXXixMtpDwDR9SP",
"memo": "saylor:datadesk:heart-rate-zones",
"reference": "SARq8Bf4WVXvLBsRprPZy1KahzcuTVxCBWHNPxPWxnz",
"session": "eyJhcnRpY2xlSWQiOiJkYXRhZGVzazpoZWFydC1yYXRlLXpvbmVzIiwicmVmZXJlbmNlIjoiU0FScThCZjRXVlh2TEJzUnByUFp5MUthaHpjdVRWeENCV0hOUHhQV3hueiIsInJlY2lwaWVudCI6IjdMU2pmckpmOGZOc0I4VkE5dTdOM1dFbjI1c21RTHBvYjNTdnlVdlhhY3k3IiwibWludCI6IkVzOXZNRnJ6YUNFUm1KZnJGNEgyRllENEtDb05rWTExTWNDZThCZW53TllCIiwibWluQW1vdW50IjoxMDAwMCwiZXhwIjoxNzkyNDU1MTE2MTMzfQ.EBy5IRkVzuanNw6gQtJWLK1ok9Y8zkFHFtJTtSd8qhs"
},
"maxTimeoutSeconds": 120,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7",
"scheme": "exact"
},
{
"amount": "92565",
"asset": "So11111111111111111111111111111111111111112",
"extra": {
"memo": "saylor:datadesk:heart-rate-zones",
"native": true,
"note": "Native SOL: send lamports with a system transfer, not an SPL transfer. Price is quoted live and this quote expires in 120s.",
"quotedLamports": "95428",
"reference": "4RayswSkDnj7b8ScAWktS13CnxBsxEnNe7Y6vzYAaja7",
"session": "eyJhcnRpY2xlSWQiOiJkYXRhZGVzazpoZWFydC1yYXRlLXpvbmVzIiwicmVmZXJlbmNlIjoiNFJheXN3U2tEbmo3YjhTY0FXa3RTMTNDbnhCc3hFbk5lN1k2dnpZQWFqYTciLCJyZWNpcGllbnQiOiI3TFNqZnJKZjhmTnNCOFZBOXU3TjNXRW4yNXNtUUxwb2IzU3Z5VXZYYWN5NyIsIm1pbnQiOm51bGwsIm1pbkFtb3VudCI6OTI1NjUsImV4cCI6MTc5MjQ1NTExNjEzM30.IVaqpEzHZk3bVWFxGHA5tEsjh3s5qpMVS-oZh08inp8",
"solUsdPrice": 104.79
},
"maxTimeoutSeconds": 120,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7",
"scheme": "exact"
}
],
"description": "Estimated maximum heart rate by Tanaka, Fox or Gulati formula and five training zones in beats per minute, with Karvonen reserve zones when resting rate is given",
"extensions": {
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"age": "35",
"resting_hr": "60"
},
"type": "http"
},
"output": {
"example": {
"age": 35,
"estimated_max_hr": 184,
"fat_burn_range_bpm": [
134,
146
],
"heart_rate_reserve": 124,
"method": "tanaka",
"note": "Tanaka (208 - 0.7 x age) is the default max heart rate formula; Fox is the older 220 - age and Gulati was derived for women. Individual max heart rate varies by 10-15 beats, so treat zones as a guide and check with a clinician before intense training.",
"resting_hr": 60,
"resting_hr_category": "normal",
"source": "Tanaka / Fox / Gulati + Karvonen",
"vo2_max_estimate": 46.8,
"zone_method": "Karvonen (heart rate reserve)",
"zones": [
{
"bpm_high": 134,
"bpm_low": 122,
"percent": "50-60",
"zone": "Zone 1 recovery"
},
{
"bpm_high": 146,
"bpm_low": 134,
"percent": "60-70",
"zone": "Zone 2 aerobic base"
},
{
"bpm_high": 159,
"bpm_low": 146,
"percent": "70-80",
"zone": "Zone 3 tempo"
},
{
"bpm_high": 171,
"bpm_low": 159,
"percent": "80-90",
"zone": "Zone 4 threshold"
},
{
"bpm_high": 184,
"bpm_low": 171,
"percent": "90-100",
"zone": "Zone 5 maximum"
}
]
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"age": {
"description": "Age in years",
"type": "string"
},
"resting_hr": {
"description": "optional resting heart rate for Karvonen zones",
"type": "string"
}
},
"required": [
"age"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"age": {
"description": "Age used",
"type": "number"
},
"estimated_max_hr": {
"description": "Estimated max hr",
"type": "number"
},
"fat_burn_range_bpm": {
"description": "Fat burn range bpm",
"type": "array"
},
"heart_rate_reserve": {
"description": "Heart rate reserve",
"type": [
"number",
"null"
]
},
"method": {
"description": "Method used",
"type": "string"
},
"note": {
"description": "Caveat or context for reading the result",
"type": "string"
},
"resting_hr": {
"description": "Resting hr",
"type": [
"number",
"null"
]
},
"resting_hr_category": {
"description": "Resting hr category",
"type": [
"string",
"null"
]
},
"source": {
"description": "Data source the values come from",
"type": "string"
},
"vo2_max_estimate": {
"description": "Vo2 max estimate",
"type": [
"number",
"null"
]
},
"zone_method": {
"description": "Zone method",
"type": "string"
},
"zones": {
"description": "Training zones with percent of max heart rate and the beats-per-minute range",
"items": {
"properties": {
"bpm_high": {
"description": "Bpm high"
},
"bpm_low": {
"description": "Bpm low"
},
"percent": {
"description": "Percent of maximum heart rate",
"type": [
"string",
"null"
]
},
"zone": {
"description": "Zone name",
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"type": "array"
}
},
"required": [
"age",
"estimated_max_hr",
"zones"
],
"type": "object"
},
"type": {
"const": "json",
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1791811517/bazaar-icons/bc5e2b3d111ebbef.jpg",
"lastUpdated": "2026-10-20T00:09:56.529Z",
"quality": {
"l30DaysTotalCalls": 2,
"l30DaysUniquePayers": 2,
"lastCalledAt": "2026-10-20T00:09:55.85Z"
},
"resource": "https://saylorinnovations.com/api/health/heart-rate-zones",
"serviceName": "Saylor Innovations Data Desk",
"tags": [
"max heart rate by age",
"heart rate training zones",
"karvonen formula zones",
"fat burning heart rate range",
"zone 2 heart rate for my age"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "Estimated maximum heart rate by Tanaka, Fox or Gulati formula and five training zones in beats per minute, with Karvonen reserve zones when resting rate is given"
}What the leaf hashes
{"body":"0a32657fd5b78669d8ce620eb89d6ce7d28273f39768356cf935f9c910974c7f","id":120004,"kind":"listing","method":"baseline/1","observed_us":1793025617067045,"prev":null,"subject":"x402_bazaar:https://saylorinnovations.com/api/health/heart-rate-zones","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0xd3f5f94c5152d9121b79bf849ee031fbdda07177048e4ffd3b9a9c2a009aab3e
- 0x1467a53e8ea412bef708a7d1ccd5cd5bb25e3f9b13bfd59d7abdf874c3484912
- 0xa27c8f5da61084471d164d8d6bb042c0ca6ac637f5eacd63afc25f110245f4b9
- 0x51d309254a55b16609b9c5df8606ec0255925ed1a1458ed8205bcc2b3c1e34fa
- 0x6a08f4a10942dd3077b5ec48c04617fafe9456f9a184a493a6f3c65b2a3737bf
- 0x0e0bcd7856455999133b93316f1d853b0abacd391b2119f932eb11d064386090
- 0xc6bf9fa6bfb773570985e2d1f47e1b719453a5a34ae8f59eb33645e533416ad1
- 0x8a449ca4b0d2f4085c2b107ea763caabac746971d0f0b6e402752a2aaa8cc956
- 0xcfadec68a3a4dd26717dd245422f2e890d938c48812f34ffce5806e8aac21850
- 0xa2e80671dd591188e2f9ffca4feadda9599a056a371af323021b390343be0982
- 0x14362d8e1df4e5c0cf9c6949986f8f51c6a0b5605b593e145aade16c5f5c871a
- 0x9f6b360f1992898cb3f17e45d0bf5a96f946d7eaf9705a57af03c151a407d239
- 0x889eefefef2d4457fe6114f397df813a5cbb85011a6f40309b54ddcd4aba3bd1
- 0xefabf1105e09cf52c12c58e60cbb5048b9ac3f02631d1816a926e14bdd86fbdf
- 0xe94ca5b798e9899ad611e57835af42266e20f53f44977e487d81365e30972beb
- 0x703f95866af09c5e5d6ead7411e9a10f964a41a2aff64d4a55ff0053c023a023
- 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
- 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae