{
  "schemaVersion": "1.0",
  "module": "LedgerEscrow",
  "stateRef": "accounts",
  "spec": "Demo/LedgerSpec::ledger_spec",
  "specLocation": "ledger.spec:28:15",
  "modelBinding": "declared-only+replay-verified",
  "searchBound": 8,
  "counts": {
    "batch": 8,
    "admitted": 6,
    "deferred": 2,
    "inconclusive": 0,
    "escrowFastPath": 6,
    "witnessSearched": 0
  },
  "operations": [
    {
      "index": 0,
      "operation": "transfer",
      "input": {
        "source": "A",
        "target": "B",
        "amount": 30
      },
      "verdict": "admitted",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "A",
          "amount": 30,
          "sign": "Dec"
        },
        {
          "key": "B",
          "amount": 30,
          "sign": "Inc"
        }
      ],
      "position": 0
    },
    {
      "index": 1,
      "operation": "transfer",
      "input": {
        "source": "B",
        "target": "C",
        "amount": 50
      },
      "verdict": "admitted",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "B",
          "amount": 50,
          "sign": "Dec"
        },
        {
          "key": "C",
          "amount": 50,
          "sign": "Inc"
        }
      ],
      "position": 1
    },
    {
      "index": 2,
      "operation": "transfer",
      "input": {
        "source": "A",
        "target": "C",
        "amount": 50
      },
      "verdict": "admitted",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "A",
          "amount": 50,
          "sign": "Dec"
        },
        {
          "key": "C",
          "amount": 50,
          "sign": "Inc"
        }
      ],
      "position": 2
    },
    {
      "index": 3,
      "operation": "transfer",
      "input": {
        "source": "A",
        "target": "B",
        "amount": 200
      },
      "verdict": "deferred",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "A",
          "amount": 200,
          "sign": "Dec"
        },
        {
          "key": "B",
          "amount": 200,
          "sign": "Inc"
        }
      ],
      "why": {
        "invariant": "lower-bound:A",
        "key": "A",
        "attempted": -80,
        "bound": 0,
        "intervalLow": 120,
        "intervalHigh": 200,
        "consumedBy": [
          0,
          2
        ]
      }
    },
    {
      "index": 4,
      "operation": "transfer",
      "input": {
        "source": "A",
        "target": "D",
        "amount": 30
      },
      "verdict": "admitted",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "A",
          "amount": 30,
          "sign": "Dec"
        },
        {
          "key": "D",
          "amount": 30,
          "sign": "Inc"
        }
      ],
      "position": 3
    },
    {
      "index": 5,
      "operation": "transfer",
      "input": {
        "source": "A",
        "target": "D",
        "amount": 30
      },
      "verdict": "deferred",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "A",
          "amount": 30,
          "sign": "Dec"
        },
        {
          "key": "D",
          "amount": 30,
          "sign": "Inc"
        }
      ],
      "why": {
        "invariant": "upper-bound:D",
        "key": "D",
        "attempted": 210,
        "bound": 200,
        "intervalLow": 150,
        "intervalHigh": 180,
        "consumedBy": [
          4
        ]
      }
    },
    {
      "index": 6,
      "operation": "transfer",
      "input": {
        "source": "D",
        "target": "A",
        "amount": 100
      },
      "verdict": "admitted",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "D",
          "amount": 100,
          "sign": "Dec"
        },
        {
          "key": "A",
          "amount": 100,
          "sign": "Inc"
        }
      ],
      "position": 4
    },
    {
      "index": 7,
      "operation": "transfer",
      "input": {
        "source": "B",
        "target": "A",
        "amount": 10
      },
      "verdict": "admitted",
      "path": "escrow",
      "location": "ledger_handlers:22:16",
      "deltas": [
        {
          "key": "B",
          "amount": 10,
          "sign": "Dec"
        },
        {
          "key": "A",
          "amount": 10,
          "sign": "Inc"
        }
      ],
      "position": 5
    }
  ],
  "witnessOrdering": [
    0,
    1,
    2,
    4,
    6,
    7
  ],
  "escrowIntervals": [
    {
      "key": "A",
      "initial": 200,
      "low": 90,
      "high": 310,
      "lower": 0,
      "upper": null,
      "exact": null
    },
    {
      "key": "B",
      "initial": 60,
      "low": 0,
      "high": 90,
      "lower": 0,
      "upper": null,
      "exact": null
    },
    {
      "key": "C",
      "initial": 40,
      "low": 40,
      "high": 140,
      "lower": 0,
      "upper": null,
      "exact": null
    },
    {
      "key": "D",
      "initial": 150,
      "low": 50,
      "high": 180,
      "lower": 0,
      "upper": 200,
      "exact": null
    }
  ],
  "replay": {
    "status": "verified",
    "note": "replayed 6 operation(s) through compiled handlers; every step matched the declared model",
    "divergence": null,
    "steps": [
      {
        "opIndex": 0,
        "operation": "transfer",
        "values": {
          "A": 170,
          "B": 90,
          "C": 40,
          "D": 150
        }
      },
      {
        "opIndex": 1,
        "operation": "transfer",
        "values": {
          "A": 170,
          "B": 40,
          "C": 90,
          "D": 150
        }
      },
      {
        "opIndex": 2,
        "operation": "transfer",
        "values": {
          "A": 120,
          "B": 40,
          "C": 140,
          "D": 150
        }
      },
      {
        "opIndex": 4,
        "operation": "transfer",
        "values": {
          "A": 90,
          "B": 40,
          "C": 140,
          "D": 180
        }
      },
      {
        "opIndex": 6,
        "operation": "transfer",
        "values": {
          "A": 190,
          "B": 40,
          "C": 140,
          "D": 80
        }
      },
      {
        "opIndex": 7,
        "operation": "transfer",
        "values": {
          "A": 200,
          "B": 30,
          "C": 140,
          "D": 80
        }
      }
    ]
  }
}