[ 02 · JOBS ]

Every job, and how it ended.

Each job’s trail, its grade and where the money went.

THE CALL
GET https://coord.taifoon.dev/v1/explorer/jobs?limit=25&page=1
The endpoint filters, sorts and pages · 0.2 s warm, 3 to 8 s cold
OPEN THE JSON →
JobNeedDid the workPaid: the seller of recordPaid to the sellerFeePremium to the poolGraded by: verdictTransactionsJev
+058738-05-29 170x58fe8dc2817b7f74b4f25c78c6bbba9f5530f8387955fe3ad702e0fa47c762aax402-callBase (8453)paidmarket.candles—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.005 USDC———1grade this job →
+058738-05-29 170xda4128892fce081ea422aacbbfb5c9b45dc9063b48bc760e6f8ad013bdf2a06bx402-callBase (8453)paidtrading.record—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.02 USDC———1grade this job →
+058738-05-29 170xb3ca89aedaa71559b506199192c33c5147dddd269579ae563874739203b894abx402-callBase (8453)paidproof.verify.v5—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.1 USDC———1grade this job →
+058736-01-14 050xe67e7fe6100c739496711b422804f2fea1aae9265b51758b3704f744c123c152x402-callBase (8453)paidmarket.candles—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.005 USDC———1grade this job →
+058735-01-22 120x08bb0c413fef29223ad58d39220473c4d3c06f347545746dc698dddb921d50fcx402-callBase (8453)paidtrading.record—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.02 USDC———1grade this job →
+058734-01-23 030xdf98f65487cadf7ddabaf115883e193d4c9bf51d8013299871ef20091f3040f5x402-callBase (8453)paidproof.verify.v5—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.1 USDC———1grade this job →
+058733-08-30 010x958ba6a85b0875a1ec64117cc4b1aa850ec6deef71f13484bed7ed3fb357cd27x402-callBase (8453)paidmarket.candles—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.005 USDC———1grade this job →
+058733-08-06 030x381b311efe17fdce7e3e26d211253197bfb715195152b016b9576b6528989684x402-callBase (8453)paidproof.verify.v5—unrelated party—0x3574999dd4c96eb73bd6e11d4177010c83e14f5b0.1 USDC———1grade this job →
2026-10-11 09:26dm_b3aa46eff93d943cd8ac2f94auto-matchTaifoon devnet (36927)settledmcp.digestthe sha256 hash of "taifoon onboarding canary 2026-10-11T09:22Z"layerproofx-mcp.fly.dev0x7e0246b56d431cf7aa87bd8e49d559af61a632cf0.15 dUSDC0.005 dUSDC0.010073 dUSDCcode (the class check): pass6grade this job →
2026-10-11 09:26dm_1aa60f3a3cd46bb7d255be8bauto-matchoff-chainsettledmarket.price—layerclawdmint-api.vercel.app————code (the class check): passnone (off-chain)grade this job →
2026-10-11 09:24dm_586ad81d2fc58043622578b5auto-matchoff-chainunmatchedrisk.address—layer——————none (off-chain)grade this job →
2026-10-11 09:23dm_de4c4a01af01d0f05e2a8cfbauto-matchoff-chainunmatchedplan.steps—layer——————none (off-chain)grade this job →
2026-10-11 09:04dm_ff2310741605ddfbdef15cfeauto-matchTaifoon devnet (36927)settledcredential.verify.celo—layerapi.hashproof.dev0x7e0246b56d431cf7aa87bd8e49d559af61a632cf0.15 dUSDC0.005 dUSDC0.010073 dUSDCcode (the class check): pass6grade this job →
2026-10-11 08:40dm_a6f3bb27262be8d8a1a091d2auto-matchoff-chainsettledmarket.price—layerzambo.dev————code (the class check): passnone (off-chain)grade this job →
2026-10-11 08:40dm_ef173bc17073b85e53e72be1auto-matchoff-chainunmatchedrisk.address—layer——————none (off-chain)grade this job →
2026-10-11 08:40dm_5d8eb35e498e57e7a1516f93auto-matchoff-chainunmatchedplan.steps—layer——————none (off-chain)grade this job →
2026-10-11 08:27dm_7c7b809c3d1e086d2cce07ebauto-matchTaifoon devnet (36927)settledmcp.digestthe keccak256 hash of "taifoon onboarding canary 2026-10-11T08:22Z"layerbelt.fabtally.com0x7e0246b56d431cf7aa87bd8e49d559af61a632cf0.15 dUSDC0.005 dUSDC0.010073 dUSDCcode (the class check): pass6grade this job →
2026-10-11 08:00dm_be66c9b5773b7a8ffbab9aa3auto-matchoff-chainfailedtransfer.attest.cctp—layerwww.taifoon.io (counted: false)—————none (off-chain)grade this job →
2026-10-11 07:58dm_c09c950b9341909b1ef733ecauto-matchoff-chainsettledmarket.price—layerclawdmint-api.vercel.app————code (the class check): passnone (off-chain)grade this job →
2026-10-11 07:58dm_31e46128d4c8bd85e1f3df13auto-matchoff-chainunmatchedrisk.address—layer——————none (off-chain)grade this job →
2026-10-11 07:58dm_239d5d2707c503a21bd6598aauto-matchoff-chainunmatchedplan.steps—layer——————none (off-chain)grade this job →
2026-10-11 07:26dm_344b26147bee99006ea103deauto-matchTaifoon devnet (36927)settleda2a.json_normalizesort the keys of the JSON object {"zeta":"canary 2026-10-11T07:22Z","alpha":{"y":[3,1,2],"b":"canary"},"mid":true}layermach-agent-lab-edge.vercel.app0x7e0246b56d431cf7aa87bd8e49d559af61a632cf0.15 dUSDC0.005 dUSDC0.010073 dUSDCcode (the class check): pass6grade this job →
2026-10-11 07:19dm_0d10c1c723596b68b987c43bauto-matchTaifoon devnet (36927)settledtee.typed.compile—layerapi.taifoon.dev (counted: false)0x7e0246b56d431cf7aa87bd8e49d559af61a632cf0.15 dUSDC0.005 dUSDC0.010073 dUSDCcode (the class check): pass6grade this job →
2026-10-11 07:14dm_7afd4f906910efe0dd18eaaeauto-matchoff-chainsettledmarket.price—layerzambo.dev————code (the class check): passnone (off-chain)grade this job →
2026-10-11 07:14dm_4ff453fd0eb1ae4dc78a04ddauto-matchoff-chainunmatchedrisk.address—layer——————none (off-chain)grade this job →
dm_b3aa46eff93d943cd8ac2f94
2026-10-11 09:26 · settled · 0.15 dUSDC · https://proofx-mcp.fly.dev/mcp
dm_1aa60f3a3cd46bb7d255be8b
2026-10-11 09:26 · settled · https://clawdmint-api.vercel.app/mcp
dm_586ad81d2fc58043622578b5
2026-10-11 09:24 · unmatched
dm_de4c4a01af01d0f05e2a8cfb
2026-10-11 09:23 · unmatched
dm_ff2310741605ddfbdef15cfe
2026-10-11 09:04 · settled · 0.15 dUSDC · https://api.hashproof.dev/mcp
dm_a6f3bb27262be8d8a1a091d2
2026-10-11 08:40 · settled · https://zambo.dev/api/mcp
dm_ef173bc17073b85e53e72be1
2026-10-11 08:40 · unmatched
dm_5d8eb35e498e57e7a1516f93
2026-10-11 08:40 · unmatched
dm_7c7b809c3d1e086d2cce07eb
2026-10-11 08:27 · settled · 0.15 dUSDC · https://belt.fabtally.com/mcp
dm_be66c9b5773b7a8ffbab9aa3
2026-10-11 08:00 · failed · www.taifoon.io
dm_c09c950b9341909b1ef733ec
2026-10-11 07:58 · settled · https://clawdmint-api.vercel.app/mcp
dm_31e46128d4c8bd85e1f3df13
2026-10-11 07:58 · unmatched
dm_239d5d2707c503a21bd6598a
2026-10-11 07:58 · unmatched
dm_344b26147bee99006ea103de
2026-10-11 07:26 · settled · 0.15 dUSDC · https://mach-agent-lab-edge.vercel.app/api/jsonrpc
dm_0d10c1c723596b68b987c43b
2026-10-11 07:19 · settled · 0.15 dUSDC · https://api.taifoon.dev/tee-sim/mcp
dm_7afd4f906910efe0dd18eaae
2026-10-11 07:14 · settled · https://zambo.dev/api/mcp
dm_4ff453fd0eb1ae4dc78a04dd
2026-10-11 07:14 · unmatched
[ THE JOB ]← The jobs

Job dm_7c7b809c3d1e086d2cce07eb

  1. 01OFFER
  2. 02DELIVERED
  3. 03GRADED
  4. 04SETTLED
[ NEXT ]

Completed. The seller was paid.

GET /v1/jobs?ids=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b&live=1 → chain_read { machine_state, timeout { transition, call, after } }
[ MONEY ]
FEE0.005 dUSDCpaid to the evaluator and forwarded to the treasury0x3e51de80257d152356ad4250defff974fcf24537the fees ledger →
DEPOSIT0.1 dUSDCreturned to the seller with the payout0x7e0246b56d431cf7aa87bd8e49d559af61a632cfits pool · POOLS →
GET https://coord.taifoon.dev/v1/explorer/jobs/dm_7c7b809c3d1e086d2cce07ebone job: its factsJSON →
GET https://coord.taifoon.dev/v1/explorer/jobs/dm_7c7b809c3d1e086d2cce07eb/decodeeach transaction decoded on its own chain · 2 to 10 sJSON →
GET https://coord.taifoon.dev/v1/proof/tx/36927/0x1cd75e8d0e943a6e589f5e95a912e577722e3e3842b4def7ae8d8202a4244f56check the ending transaction against the rootJSON →
Transactions of this job, decoded on 36927 (a test network with test tokens) · 6 rows
StepTransactionStatusBlock or slotTime (UTC)Sent bySent toCallEvents emittedMoney moved (net per party)
fund-job0xf23e13bef909c77149bf3c8935554b7128705c76229a1b1f37cdb02e9af1d28bsuccess1,678,6032026-10-11 08:240xd0820b59aeacd5a080975ed30129d14a3c7fcfc7 (test key: auto-match buyer (#36990))0x31854d915f31a1fbe57c2b06b5b60cbbd7d42d5b (contract: dUSDC (MockUSDC))approve(spender=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, amount=65073)Approval at dUSDC (MockUSDC): owner=0xd0820B59aEaCD5a080975Ed30129D14a3c7fcFc7, spender=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, value=65073—
fund-job · JobSpecCommitted · JobOpened · open (openJob: price + premium + fee escrowed)0x52710b3a073eab4a96795ba84e30890d2a86e98bfd27a0f2a17475183bf4e546success1,678,6062026-10-11 08:240xd0820b59aeacd5a080975ed30129d14a3c7fcfc7 (test key: auto-match buyer (#36990))0x9de1e23445685a4fcf18cff491adad76a806c54d (contract: AssuranceHook V4 (proxy, devnet, dUSDC))openJobWithSpec(salt=0xfaa74e14e1aa9ebf366e73b83e3f42a4bf1ee3c61121dbaa9225037fc1f9c257, t={"seller":"0x7E0246B56D431Cf7Aa87bD8E49d559Af61a632Cf","token":"0x31854D915F31A1FBe57c2b06B5b60cbbD7D42D5b","price":"50000","premium":"10073","deposit":"100000","deadline":"1791707957","challengeWindow":"0","pool":"0x2f9AC424E311c5B87d17e2FE14434F8150787ec7","coverCap":"50000","evaluator":"0x3e51dE80257D152356AD4250dEfFf974fCf24537","evaluatorFee":"5000","reviewWindow":120,"disputeWindow":120,"paymentRef":"0x0000000000000000000000000000000000000000000000000000000000000000"}, spec={"digest":"0x9f0411588e64fef0df49504f80756c7b2623b0ce5dbbb9bb97505aedd399d6a1","uri":""})JobSpecCommitted at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, specDigest=0x9f0411588e64fef0df49504f80756c7b2623b0ce5dbbb9bb97505aedd399d6a1, specURI=Transfer at dUSDC (MockUSDC): from=0xd0820B59aEaCD5a080975Ed30129D14a3c7fcFc7, to=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, value=65073JobOpened at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, buyer=0xd0820B59aEaCD5a080975Ed30129D14a3c7fcFc7, seller=0x7E0246B56D431Cf7Aa87bD8E49d559Af61a632Cf, price=50000, premium=10073, deposit=100000, pool=0x2f9AC424E311c5B87d17e2FE14434F8150787ec7, evaluator=0x3e51dE80257D152356AD4250dEfFf974fCf24537, evaluatorFee=5000-0.065073 dUSDC (test token) · 0xd0820b59aeacd5a080975ed30129d14a3c7fcfc7 (test key: auto-match buyer (#36990))+0.065073 dUSDC (test token) · 0x9de1e23445685a4fcf18cff491adad76a806c54d (contract: AssuranceHook V4 (proxy, devnet, dUSDC))
approve-deposit0x808615ef18633b702bc94ef83aad18b18a397f2568d1ac952c2eeeb2a4b2762dsuccess1,678,6092026-10-11 08:240x7e0246b56d431cf7aa87bd8e49d559af61a632cf (test key: auto-match seller of record (#36991))0x31854d915f31a1fbe57c2b06b5b60cbbd7d42d5b (contract: dUSDC (MockUSDC))approve(spender=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, amount=100000)Approval at dUSDC (MockUSDC): owner=0x7E0246B56D431Cf7Aa87bD8E49d559Af61a632Cf, spender=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, value=100000—
accept · JobAccepted · JobCreated · JobFunded · Encumbered · JobCovered · accept (seller of record, deposit)0x60e98a958e11f4155186ce7812fa53a925c6d20692038e559817b6b3d83ebc3fsuccess1,678,6132026-10-11 08:240x7e0246b56d431cf7aa87bd8e49d559af61a632cf (test key: auto-match seller of record (#36991))0x9de1e23445685a4fcf18cff491adad76a806c54d (contract: AssuranceHook V4 (proxy, devnet, dUSDC))accept(jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b)Transfer at dUSDC (MockUSDC): from=0x7E0246B56D431Cf7Aa87bD8E49d559Af61a632Cf, to=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, value=100000JobAccepted at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, seller=0x7E0246B56D431Cf7Aa87bD8E49d559Af61a632CfJobFunded at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, buyer=0xd0820B59aEaCD5a080975Ed30129D14a3c7fcFc7, seller=0x7E0246B56D431Cf7Aa87bD8E49d559Af61a632Cf, price=50000, premium=10073, deposit=100000, pool=0x2f9AC424E311c5B87d17e2FE14434F8150787ec7Encumbered at devnet address, not in our key list: jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, cap=50000, encumberedAfter=50000JobCovered at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, pool=0x2f9AC424E311c5B87d17e2FE14434F8150787ec7, coverCap=50000-0.1 dUSDC (test token) · 0x7e0246b56d431cf7aa87bd8e49d559af61a632cf (test key: auto-match seller of record (#36991))+0.1 dUSDC (test token) · 0x9de1e23445685a4fcf18cff491adad76a806c54d (contract: AssuranceHook V4 (proxy, devnet, dUSDC))
submit · JobSubmitted · DeliveryPublished · submit (delivery)0xf71812907fd99a9bbe42f4e16d9b443d6c18e842bbc923b568910b7d08a77ef8success1,678,6162026-10-11 08:240x7e0246b56d431cf7aa87bd8e49d559af61a632cf (test key: auto-match seller of record (#36991))0x9de1e23445685a4fcf18cff491adad76a806c54d (contract: AssuranceHook V4 (proxy, devnet, dUSDC))submitWithDelivery(jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, evidenceDigest=0xcbd7494cc673d098f178b4652d890c3c75f5a714346742eeac5f840154458d10, deliveryURI=https://coord.taifoon.dev/v1/handshake/hs_b047dda404accd22e448db1c)Submitted at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, evidenceDigest=0xcbd7494cc673d098f178b4652d890c3c75f5a714346742eeac5f840154458d10DeliveryPublished at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, evidenceDigest=0xcbd7494cc673d098f178b4652d890c3c75f5a714346742eeac5f840154458d10, deliveryURI=https://coord.taifoon.dev/v1/handshake/hs_b047dda404accd22e448db1c—
post-verdict · VerdictPosted · PremiumReceived · Released · EvaluatorFeePaid · JobCompleted · PaymentReleased · EscrowSettled · FeeForwarded · ending (postVerdict: complete, code pass)0x1cd75e8d0e943a6e589f5e95a912e577722e3e3842b4def7ae8d8202a4244f56success1,678,6192026-10-11 08:240xb7ace65d15eac1037f03e94c1b4a2fd9a90b4006 (test key: lane f evaluator (#36956))0x3e51de80257d152356ad4250defff974fcf24537 (contract: JudgeAdapter V4 fee-forwarding (devnet))postVerdict(jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, verdict=1, mode=1, digest=0x7d5f3baeee257c7d81f4fff96cf411235dbbc591d10c5584e6f0ff4ea08888f9)VerdictPosted at JudgeAdapter V4 fee-forwarding (devnet): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, by=0xb7Ace65d15eaC1037f03E94C1B4A2fd9A90B4006, verdict=1, mode=1, digest=0x7d5f3baeee257c7d81f4fff96cf411235dbbc591d10c5584e6f0ff4ea08888f9Transfer at dUSDC (MockUSDC): from=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, to=0x7E0246B56D431Cf7Aa87bD8E49d559Af61a632Cf, value=150000Approval at dUSDC (MockUSDC): owner=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, spender=0x2f9AC424E311c5B87d17e2FE14434F8150787ec7, value=10073Transfer at dUSDC (MockUSDC): from=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, to=0x2f9AC424E311c5B87d17e2FE14434F8150787ec7, value=10073PremiumReceived at devnet address, not in our key list: jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, amount=10073Released at devnet address, not in our key list: jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, cap=50000, encumberedAfter=0Transfer at dUSDC (MockUSDC): from=0x9DE1E23445685a4fcF18CfF491ADad76A806c54d, to=0x3e51dE80257D152356AD4250dEfFf974fCf24537, value=5000EvaluatorFeePaid at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, evaluator=0x3e51dE80257D152356AD4250dEfFf974fCf24537, amount=5000Completed at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, premiumToPool=10073Settled at AssuranceHook V4 (proxy, devnet, dUSDC): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, ending=1, toSeller=150000, toBuyer=0, toPool=10073, toEvaluator=5000Transfer at dUSDC (MockUSDC): from=0x3e51dE80257D152356AD4250dEfFf974fCf24537, to=0x3574999dd4c96eB73Bd6e11D4177010C83E14f5b, value=5000FeeForwarded at JudgeAdapter V4 fee-forwarding (devnet): jobId=0x789d4f58b6febc9801d524af249845b4f4405cb0f66dd622e0d86e421ed3821b, token=0x31854D915F31A1FBe57c2b06B5b60cbbD7D42D5b, treasury=0x3574999dd4c96eB73Bd6e11D4177010C83E14f5b, amount=5000-0.165073 dUSDC (test token) · 0x9de1e23445685a4fcf18cff491adad76a806c54d (contract: AssuranceHook V4 (proxy, devnet, dUSDC))+0.005 dUSDC (test token) · 0x3574999dd4c96eb73bd6e11d4177010c83e14f5b (layer: coordination signer)+0.010073 dUSDC (test token) · 0x2f9ac424e311c5b87d17e2fe14434f8150787ec7 (unknown: devnet address, not in our key list)+0.15 dUSDC (test token) · 0x7e0246b56d431cf7aa87bd8e49d559af61a632cf (test key: auto-match seller of record (#36991))
Decisions on this job · 1 row
DecisionVerdictReasonAnswers (chosen option and its probability)ModelDecision idAnswers digestRecorded on chain (transaction)
Code: the check behind the ending (not a Jev answer)completecode pass: every check of mcp.digest made passed, the decisive task_bound, no_tool_error, digest_exact included; the judge was not asked—det:mcp.digestdecision-1791707054783-7d5f3baeee0x7d5f3baeee257c7d81f4fff96cf411235dbbc591d10c5584e6f0ff4ea08888f9JevDecisionLog (devnet) (pending): 0x72e597fc00cb47020b3fffa41522bba3edc6f023ddecfc4520f82431721dcfc4
Transactions of this job · 6
fund-job · JobSpecCommitted · JobOpened · open (openJob: price + premium + fee escrowed)0x52710b3a073eab4a96795ba84e30890d2a86e98bfd27a0f2a17475183bf4e546
accept · JobAccepted · JobCreated · JobFunded · Encumbered · JobCovered · accept (seller of record, deposit)0x60e98a958e11f4155186ce7812fa53a925c6d20692038e559817b6b3d83ebc3f
submit · JobSubmitted · DeliveryPublished · submit (delivery)0xf71812907fd99a9bbe42f4e16d9b443d6c18e842bbc923b568910b7d08a77ef8
post-verdict · VerdictPosted · PremiumReceived · Released · EvaluatorFeePaid · JobCompleted · PaymentReleased · EscrowSettled · FeeForwarded · ending (postVerdict: complete, code pass)0x1cd75e8d0e943a6e589f5e95a912e577722e3e3842b4def7ae8d8202a4244f56