{
 "about": {
  "method": "bisubstrate-initial-rate",
  "origin": "Original synthetic rates from known constants with recorded noise vectors (NumPy default_rng seeds named per case); no published dataset",
  "ruling": "CSO memo of 13 October 2026, rulings B1 to B6 (docs/board/memos/2026-10-13-cso-hill-and-bisubstrate.md)",
  "models": {
   "ping-pong": "v = Vmax A B / (KmB A + KmA B + A B)",
   "sequential": "v = Vmax A B / (KiA KmB + KmB A + KmA B + A B)"
  },
  "design": "at least 12 rows with both positive, four levels of one substrate, three levels of A each at the same three levels of B",
  "withheld": "sequential with KiA at its lower box ('kia-lower-bound'): no constant; any other parameter at its box: 'bound'",
  "comparison": "AICc (K = parameters + 1) for both, dAicc = AICc_pingpong - AICc_sequential, the approximate F of ping-pong within sequential (boundary KiA -> 0); withheld at an exact fit",
  "interval": "none this stage (B4)",
  "tolerances": {
   "statuses, refusals, reasons and the parameters at the box": "exact",
   "vmax, kmA, kmB and kiA": "within 1e-5 relative; hand values within 1e-9 relative",
   "rss": "within 1e-6 relative, or both at the rates' numeric resolution",
   "correlations": "within 1e-4 absolute",
   "aicc and dAicc": "within 1e-6 absolute",
   "F": "within 1e-5 relative",
   "p": "within 1e-4 relative or 1e-10 absolute"
  },
  "recordedOn": "2026-10-13",
  "script": "pipeline/assay-analyser/oracles/bisubstrate.py",
  "scriptSha256": "4bb5b18244b42fa00e9416d57443b31bc55153b9f9d460f42f0eb64089c5c184",
  "helper": {
   "script": "pipeline/assay-analyser/oracles/stage_a_oracle.py",
   "sha256": "492d85ca2fa6750db80b1c64214fd4a0b13cd4c588267244f6262c504c73e3e8"
  },
  "environment": {
   "image": "ghcr.io/biotechmat/drybench/oracle-env:11b8a5e4456df7eb@sha256:7e69891ca1d9f24838660e0a9887bdb654ce7771d2f2ac7e7275e9b1eb3b6a09",
   "r": "R version 4.4.3 (2025-02-28)",
   "packages": {
    "jsonlite": "2.0.0"
   },
   "python": "3.11.15",
   "numpy": "2.0.2",
   "scipy": "1.13.1",
   "recordedOn": "2026-10-13",
   "cpu": "AMD EPYC 9V74 80-Core Processor",
   "cpuClass": "x86-64-v3",
   "simd": [
    "SSSE3",
    "SSE41",
    "POPCNT",
    "SSE42",
    "AVX",
    "F16C",
    "FMA3",
    "AVX2"
   ],
   "openblasCore": "Haswell",
   "threads": 1
  },
  "crossCheck": {
   "tool": "R stats::nls",
   "version": "R version 4.4.3 (2025-02-28)",
   "script": "pipeline/assay-analyser/oracles/r/bisubstrate_nls.R",
   "scriptSha256": "610001695af8879a63d7e3393e7193fbb03c0799149fb6fa7ef23cb985e5fb9f",
   "ran": true,
   "settings": "nls on each estimate from the SciPy values, the same rows, tol 1e-8 then 1e-6, scaleOffset 1",
   "tolerances": {
    "parameters": "1e-5 relative"
   },
   "cases": 15,
   "agreeing": 15,
   "result": [
    {
     "case": "sequential-hand/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 115.732431900634,
      "kmA": 3.0778217320739,
      "kmB": 1.24451454280988
     },
     "relativeDifferences": {
      "vmax": 1.473487196128725e-15,
      "kmA": 1.2985816712514537e-15,
      "kmB": 0.0
     },
     "rss": 100.725599472713,
     "agrees": true
    },
    {
     "case": "sequential-hand/sequential",
     "converged": true,
     "parameters": {
      "vmax": 100,
      "kmA": 2,
      "kmB": 0.8,
      "kiA": 1.5
     },
     "relativeDifferences": {
      "vmax": 1.4210854715202006e-16,
      "kmA": 3.3306690738754706e-16,
      "kmB": 5.551115123125786e-16,
      "kiA": 5.921189464667498e-16
     },
     "rss": 2.77679038637796e-28,
     "agrees": true
    },
    {
     "case": "ping-pong-hand/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 100,
      "kmA": 2,
      "kmB": 0.8
     },
     "relativeDifferences": {
      "vmax": 0.0,
      "kmA": 3.3306690738754706e-16,
      "kmB": 2.775557561562892e-16
     },
     "rss": 9.71876635232287e-28,
     "agrees": true
    },
    {
     "case": "sequential-noisy/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 115.546479482448,
      "kmA": 2.89298970166317,
      "kmB": 1.27296379478021
     },
     "relativeDifferences": {
      "vmax": 1.2720149102621923e-09,
      "kmA": 1.6481346689848632e-09,
      "kmB": 2.537879093217245e-09
     },
     "rss": 127.708012497411,
     "agrees": true
    },
    {
     "case": "sequential-noisy/sequential",
     "converged": true,
     "parameters": {
      "vmax": 100.180087500985,
      "kmA": 1.87413838198674,
      "kmB": 0.832869531860487,
      "kiA": 1.3924031002281
     },
     "relativeDifferences": {
      "vmax": 8.511185248303322e-16,
      "kmA": 2.2510864374397373e-15,
      "kmB": 2.6660190633822565e-16,
      "kiA": 9.568117374429414e-16
     },
     "rss": 26.2823592897936,
     "agrees": true
    },
    {
     "case": "ping-pong-noisy/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 99.0306973771363,
      "kmA": 1.94656062782386,
      "kmB": 0.835162709362511
     },
     "relativeDifferences": {
      "vmax": 2.8699898297359517e-16,
      "kmA": 2.281404460268608e-15,
      "kmB": 2.6586987473916353e-16
     },
     "rss": 51.4428115867294,
     "agrees": true
    },
    {
     "case": "ping-pong-noisy/sequential",
     "converged": true,
     "parameters": {
      "vmax": 95.2068226818543,
      "kmA": 1.71009584726813,
      "kmB": 0.732075647107401,
      "kiA": 0.354778972507889
     },
     "relativeDifferences": {
      "vmax": 2.1868396256843093e-09,
      "kmA": 7.701200724625528e-09,
      "kmB": 7.924198226303907e-09,
      "kiA": 6.849099316105719e-08
     },
     "rss": 36.802864953515,
     "agrees": true
    },
    {
     "case": "metamorphic-a-unit/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 115.546479629425,
      "kmA": 2892.98970643121,
      "kmB": 1.27296379801084
     },
     "relativeDifferences": {
      "vmax": 1.229882101192384e-15,
      "kmA": 1.1003258840253823e-15,
      "kmB": 1.3954496130809263e-15
     },
     "rss": 127.708012497411,
     "agrees": true
    },
    {
     "case": "metamorphic-a-unit/sequential",
     "converged": true,
     "parameters": {
      "vmax": 100.180087500985,
      "kmA": 1874.13838198674,
      "kmB": 0.832869531860487,
      "kiA": 1392.4031002281
     },
     "relativeDifferences": {
      "vmax": 8.511185248303322e-16,
      "kmA": 2.1837908007836444e-15,
      "kmB": 2.6660190633822565e-16,
      "kiA": 1.1430710889985007e-15
     },
     "rss": 26.2823592897936,
     "agrees": true
    },
    {
     "case": "metamorphic-b-unit/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 115.546479629425,
      "kmA": 2.89298970643121,
      "kmB": 0.00127296379801084
     },
     "relativeDifferences": {
      "vmax": 1.229882101192384e-15,
      "kmA": 1.2280422812783287e-15,
      "kmB": 1.362743762774342e-15
     },
     "rss": 127.708012497411,
     "agrees": true
    },
    {
     "case": "metamorphic-b-unit/sequential",
     "converged": true,
     "parameters": {
      "vmax": 100.18008734204,
      "kmA": 1.87413837318877,
      "kmB": 0.000832869528332881,
      "kiA": 1.39240311313619
     },
     "relativeDifferences": {
      "vmax": 1.5865935897487425e-09,
      "kmA": 4.69440570446521e-09,
      "kmB": 4.235484178428306e-09,
      "kiA": 9.270367608260414e-09
     },
     "rss": 26.2823592897936,
     "agrees": true
    },
    {
     "case": "metamorphic-row-order/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 115.546479480369,
      "kmA": 2.89298970162284,
      "kmB": 1.27296379455679
     },
     "relativeDifferences": {
      "vmax": 2.090799574724196e-15,
      "kmA": 1.0745369979045001e-15,
      "kmB": 1.7443120210841609e-15
     },
     "rss": 127.708012497411,
     "agrees": true
    },
    {
     "case": "metamorphic-row-order/sequential",
     "converged": true,
     "parameters": {
      "vmax": 100.180087281185,
      "kmA": 1.87413836983461,
      "kmB": 0.832869526714118,
      "kiA": 1.39240311953438
     },
     "relativeDifferences": {
      "vmax": 1.4185308778295494e-15,
      "kmA": 2.606521154989089e-15,
      "kmB": 2.6660190798558065e-16,
      "kiA": 2.2325606897447704e-15
     },
     "rss": 26.2823592897936,
     "agrees": true
    },
    {
     "case": "relabelled/ping-pong",
     "converged": true,
     "parameters": {
      "vmax": 115.546479320081,
      "kmA": 1.27296379310673,
      "kmB": 2.89298969159391
     },
     "relativeDifferences": {
      "vmax": 2.5827524194186075e-15,
      "kmA": 3.139761641528063e-15,
      "kmB": 6.140211437882984e-16
     },
     "rss": 127.708012497411,
     "agrees": true
    },
    {
     "case": "relabelled/sequential",
     "converged": true,
     "parameters": {
      "vmax": 100.180087301598,
      "kmA": 0.832869527703535,
      "kmB": 1.8741383719097,
      "kiA": 0.618785752276501
     },
     "relativeDifferences": {
      "vmax": 1.5603839652945512e-15,
      "kmA": 2.666019076688677e-16,
      "kmB": 1.3032605760515456e-15,
      "kiA": 5.38258849952831e-16
     },
     "rss": 26.2823592897936,
     "agrees": true
    }
   ]
  }
 },
 "oracle": {
  "engine": "scipy.optimize.least_squares",
  "method": "trf with bounds, log parameters, nine crossed starts (eighteen for sequential), lowest RSS; AICc and F by hand, p from scipy.stats.f.sf"
 },
 "cases": [
  {
   "name": "sequential-hand",
   "about": "Sequential rates from Vmax 100, KmA 2, KmB 0.8, KiA 1.5 on a 5 x 5 grid: the hand values exactly",
   "a": [
    0.5,
    0.5,
    0.5,
    0.5,
    0.5,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0,
    5.0,
    5.0,
    5.0,
    5.0,
    5.0,
    10.0,
    10.0,
    10.0,
    10.0,
    10.0
   ],
   "b": [
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0
   ],
   "rate": [
    4.761904761904762,
    8.771929824561402,
    12.195121951219512,
    15.151515151515152,
    17.73049645390071,
    7.692307692307692,
    14.285714285714286,
    20.0,
    25.0,
    29.41176470588235,
    11.11111111111111,
    20.83333333333333,
    29.41176470588235,
    37.03703703703704,
    43.859649122807014,
    15.15151515151515,
    28.73563218390805,
    40.98360655737705,
    52.083333333333336,
    62.189054726368155,
    17.24137931034483,
    32.89473684210527,
    47.16981132075472,
    60.24096385542168,
    72.25433526011561
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 115.73243190063417,
     "kmA": 3.077821732073896,
     "kmB": 1.24451454280988,
     "rss": 100.72559947271336,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       1.0,
       0.8632372562938762,
       0.8515609985924791
      ],
      [
       0.8632372562938759,
       1.0000000000000002,
       0.5823854845625255
      ],
      [
       0.8515609985924792,
       0.5823854845625258,
       1.0
      ]
     ]
    },
    "sequential": {
     "status": "estimated",
     "model": "sequential",
     "vmax": 99.99999999999999,
     "kmA": 1.9999999999999993,
     "kmB": 0.7999999999999996,
     "kiA": 1.5000000000000009,
     "rss": 3.559357146878245e-28,
     "n": 25,
     "df": 21,
     "order": [
      "vmax",
      "kmA",
      "kmB",
      "kiA"
     ],
     "correlation": [
      [
       0.9999999999999999,
       0.8722333885906078,
       0.8638977975569877,
       -0.6144694523037401
      ],
      [
       0.8722333885906077,
       0.9999999999999998,
       0.7457923143878984,
       -0.7120180944175061
      ],
      [
       0.8638977975569879,
       0.7457923143878991,
       1.0000000000000002,
       -0.8245668115612222
      ],
      [
       -0.6144694523037403,
       -0.7120180944175064,
       -0.8245668115612222,
       1.0
      ]
     ]
    },
    "comparison": {
     "status": "not-available",
     "reason": "zero-residual"
    }
   },
   "hand": {
    "vmax": 100.0,
    "kmA": 2.0,
    "kmB": 0.8,
    "kiA": 1.5
   }
  },
  {
   "name": "ping-pong-hand",
   "about": "Ping-pong rates from Vmax 100, KmA 2, KmB 0.8 on the grid: the hand values; the sequential fit withheld at KiA's lower bound",
   "a": [
    0.5,
    0.5,
    0.5,
    0.5,
    0.5,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0,
    5.0,
    5.0,
    5.0,
    5.0,
    5.0,
    10.0,
    10.0,
    10.0,
    10.0,
    10.0
   ],
   "b": [
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0
   ],
   "rate": [
    11.11111111111111,
    15.151515151515152,
    17.24137931034483,
    18.51851851851852,
    19.37984496124031,
    14.285714285714285,
    21.73913043478261,
    26.315789473684212,
    29.411764705882355,
    31.645569620253163,
    16.666666666666668,
    27.77777777777778,
    35.714285714285715,
    41.66666666666667,
    46.29629629629629,
    18.51851851851852,
    33.333333333333336,
    45.45454545454545,
    55.55555555555556,
    64.1025641025641,
    19.23076923076923,
    35.714285714285715,
    50.0,
    62.5,
    73.52941176470588
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 100.0,
     "kmA": 1.9999999999999993,
     "kmB": 0.7999999999999998,
     "rss": 3.08215432276504e-28,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       1.0,
       0.8208866652449529,
       0.8112748460451207
      ],
      [
       0.8208866652449529,
       1.0000000000000002,
       0.4858398670214
      ],
      [
       0.8112748460451207,
       0.4858398670213999,
       1.0
      ]
     ]
    },
    "sequential": {
     "status": "withheld",
     "model": "sequential",
     "reason": "kia-lower-bound",
     "n": 25
    },
    "comparison": {
     "status": "not-available",
     "reason": "not-both-estimated"
    }
   },
   "hand": {
    "vmax": 100.0,
    "kmA": 2.0,
    "kmB": 0.8
   }
  },
  {
   "name": "sequential-noisy",
   "about": "Sequential rates with noise SD 1.5 (seed 20261026)",
   "a": [
    0.5,
    0.5,
    0.5,
    0.5,
    0.5,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0,
    5.0,
    5.0,
    5.0,
    5.0,
    5.0,
    10.0,
    10.0,
    10.0,
    10.0,
    10.0
   ],
   "b": [
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0
   ],
   "rate": [
    4.231368255799834,
    8.631377811397826,
    12.644574650677466,
    16.548977376246743,
    18.08293283020067,
    8.270129916632172,
    14.830703367245807,
    18.703429550302847,
    24.75549113575206,
    32.41035772331647,
    11.417995272841756,
    22.867603051939444,
    31.606587056706747,
    36.34939900231059,
    45.146958145786364,
    14.75035145757773,
    26.62602201558471,
    41.98701878987441,
    53.27848997959418,
    62.27244068251588,
    16.836690873294383,
    33.03410459348146,
    45.827550500107044,
    60.89835800920653,
    72.83901270681291
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 115.54647962942485,
     "kmA": 2.8929897064312065,
     "kmB": 1.2729637980108381,
     "rss": 127.70801249741099,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       1.0,
       0.8568502203801033,
       0.8536640883981769
      ],
      [
       0.8568502203801036,
       1.0000000000000002,
       0.5771740879807229
      ],
      [
       0.8536640883981766,
       0.5771740879807226,
       1.0
      ]
     ]
    },
    "sequential": {
     "status": "estimated",
     "model": "sequential",
     "vmax": 100.18008750098508,
     "kmA": 1.8741383819867359,
     "kmB": 0.8328695318604867,
     "kiA": 1.3924031002281014,
     "rss": 26.28235928979353,
     "n": 25,
     "df": 21,
     "order": [
      "vmax",
      "kmA",
      "kmB",
      "kiA"
     ],
     "correlation": [
      [
       1.0000000000000002,
       0.8665327114687346,
       0.8668536304533573,
       -0.6120860756666658
      ],
      [
       0.8665327114687346,
       0.9999999999999999,
       0.7431855180343567,
       -0.7143921409485207
      ],
      [
       0.8668536304533574,
       0.7431855180343568,
       0.9999999999999999,
       -0.8176746865042458
      ],
      [
       -0.6120860756666663,
       -0.7143921409485209,
       -0.817674686504246,
       1.0
      ]
     ]
    },
    "comparison": {
     "status": "computed",
     "aiccPingPong": 50.771767022395665,
     "aiccSequential": 14.408448232466203,
     "dAicc": 36.363318789929465,
     "F": 81.04062096841912,
     "p": 1.1806159148404956e-08,
     "df1": 1,
     "df2": 21,
     "boundary": true
    }
   }
  },
  {
   "name": "ping-pong-noisy",
   "about": "Ping-pong rates with noise SD 1.5 (seed 20261027)",
   "a": [
    0.5,
    0.5,
    0.5,
    0.5,
    0.5,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0,
    5.0,
    5.0,
    5.0,
    5.0,
    5.0,
    10.0,
    10.0,
    10.0,
    10.0,
    10.0
   ],
   "b": [
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0
   ],
   "rate": [
    9.31659246244267,
    14.170979235143072,
    17.725061448829717,
    17.1730442080209,
    19.545585468759384,
    13.7874103931065,
    20.554431380225655,
    23.164189800991906,
    29.926225656271345,
    33.020480459347176,
    14.782574376322296,
    24.603463033128328,
    35.034952244015436,
    42.55457512844001,
    48.075917403046425,
    17.783429362075264,
    33.428433872884646,
    46.40985239553781,
    57.47859207525648,
    62.81745284157333,
    19.799600017832113,
    33.42197370777848,
    49.59461530738752,
    61.204612615335705,
    70.56802157350366
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 99.03069737713633,
     "kmA": 1.9465606278238645,
     "kmB": 0.8351627093625112,
     "rss": 51.44281158672933,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       0.9999999999999999,
       0.8179379974095973,
       0.81547840146534
      ],
      [
       0.8179379974095972,
       0.9999999999999999,
       0.48727332598248285
      ],
      [
       0.8154784014653401,
       0.4872733259824832,
       0.9999999999999999
      ]
     ]
    },
    "sequential": {
     "status": "estimated",
     "model": "sequential",
     "vmax": 95.20682289005636,
     "kmA": 1.7100958604379215,
     "kmB": 0.7320756529085136,
     "kiA": 0.35477894820872646,
     "rss": 36.80286495351489,
     "n": 25,
     "df": 21,
     "order": [
      "vmax",
      "kmA",
      "kmB",
      "kiA"
     ],
     "correlation": [
      [
       1.0000000000000002,
       0.8585922591242375,
       0.8580405009628184,
       -0.5491538060339549
      ],
      [
       0.8585922591242375,
       1.0000000000000002,
       0.7046254744188247,
       -0.6750703370085782
      ],
      [
       0.8580405009628184,
       0.7046254744188247,
       1.0000000000000002,
       -0.7211327897673454
      ],
      [
       -0.5491538060339548,
       -0.6750703370085782,
       -0.7211327897673454,
       1.0
      ]
     ]
    },
    "comparison": {
     "status": "computed",
     "aiccPingPong": 28.039872779082952,
     "aiccSequential": 22.825391468693663,
     "dAicc": 5.214481310389289,
     "F": 8.35366702254904,
     "p": 0.008755429685415273,
     "df1": 1,
     "df2": 21,
     "boundary": true
    }
   }
  },
  {
   "name": "metamorphic-a-unit",
   "about": "The noisy sequential rates with A in nM (x 1e3): KmA and KiA x 1e3, the rest unchanged",
   "a": [
    500.0,
    500.0,
    500.0,
    500.0,
    500.0,
    1000.0,
    1000.0,
    1000.0,
    1000.0,
    1000.0,
    2000.0,
    2000.0,
    2000.0,
    2000.0,
    2000.0,
    5000.0,
    5000.0,
    5000.0,
    5000.0,
    5000.0,
    10000.0,
    10000.0,
    10000.0,
    10000.0,
    10000.0
   ],
   "b": [
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0
   ],
   "rate": [
    4.231368255799834,
    8.631377811397826,
    12.644574650677466,
    16.548977376246743,
    18.08293283020067,
    8.270129916632172,
    14.830703367245807,
    18.703429550302847,
    24.75549113575206,
    32.41035772331647,
    11.417995272841756,
    22.867603051939444,
    31.606587056706747,
    36.34939900231059,
    45.146958145786364,
    14.75035145757773,
    26.62602201558471,
    41.98701878987441,
    53.27848997959418,
    62.27244068251588,
    16.836690873294383,
    33.03410459348146,
    45.827550500107044,
    60.89835800920653,
    72.83901270681291
   ],
   "unitA": "nM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 115.54647962942485,
     "kmA": 2892.9897064312067,
     "kmB": 1.2729637980108381,
     "rss": 127.70801249741099,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       1.0,
       0.8568502203801033,
       0.8536640883981769
      ],
      [
       0.8568502203801036,
       1.0000000000000002,
       0.5771740879807229
      ],
      [
       0.8536640883981766,
       0.5771740879807226,
       1.0
      ]
     ]
    },
    "sequential": {
     "status": "estimated",
     "model": "sequential",
     "vmax": 100.18008750098508,
     "kmA": 1874.1383819867358,
     "kmB": 0.8328695318604867,
     "kiA": 1392.4031002281015,
     "rss": 26.28235928979353,
     "n": 25,
     "df": 21,
     "order": [
      "vmax",
      "kmA",
      "kmB",
      "kiA"
     ],
     "correlation": [
      [
       1.0000000000000002,
       0.8665327114687346,
       0.8668536304533573,
       -0.6120860756666658
      ],
      [
       0.8665327114687346,
       0.9999999999999999,
       0.7431855180343567,
       -0.7143921409485207
      ],
      [
       0.8668536304533574,
       0.7431855180343568,
       0.9999999999999999,
       -0.8176746865042458
      ],
      [
       -0.6120860756666663,
       -0.7143921409485209,
       -0.817674686504246,
       1.0
      ]
     ]
    },
    "comparison": {
     "status": "computed",
     "aiccPingPong": 50.771767022395665,
     "aiccSequential": 14.408448232466203,
     "dAicc": 36.363318789929465,
     "F": 81.04062096841912,
     "p": 1.1806159148404956e-08,
     "df1": 1,
     "df2": 21,
     "boundary": true
    }
   }
  },
  {
   "name": "metamorphic-b-unit",
   "about": "The noisy sequential rates with B in mM (x 1e-3): KmB x 1e-3, the rest unchanged",
   "a": [
    0.5,
    0.5,
    0.5,
    0.5,
    0.5,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0,
    5.0,
    5.0,
    5.0,
    5.0,
    5.0,
    10.0,
    10.0,
    10.0,
    10.0,
    10.0
   ],
   "b": [
    0.0002,
    0.0005,
    0.001,
    0.002,
    0.005,
    0.0002,
    0.0005,
    0.001,
    0.002,
    0.005,
    0.0002,
    0.0005,
    0.001,
    0.002,
    0.005,
    0.0002,
    0.0005,
    0.001,
    0.002,
    0.005,
    0.0002,
    0.0005,
    0.001,
    0.002,
    0.005
   ],
   "rate": [
    4.231368255799834,
    8.631377811397826,
    12.644574650677466,
    16.548977376246743,
    18.08293283020067,
    8.270129916632172,
    14.830703367245807,
    18.703429550302847,
    24.75549113575206,
    32.41035772331647,
    11.417995272841756,
    22.867603051939444,
    31.606587056706747,
    36.34939900231059,
    45.146958145786364,
    14.75035145757773,
    26.62602201558471,
    41.98701878987441,
    53.27848997959418,
    62.27244068251588,
    16.836690873294383,
    33.03410459348146,
    45.827550500107044,
    60.89835800920653,
    72.83901270681291
   ],
   "unitA": "µM",
   "unitB": "mM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 115.54647962942485,
     "kmA": 2.8929897064312065,
     "kmB": 0.0012729637980108382,
     "rss": 127.70801249741099,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       1.0,
       0.8568502203801033,
       0.8536640883981769
      ],
      [
       0.8568502203801036,
       1.0000000000000002,
       0.5771740879807229
      ],
      [
       0.8536640883981766,
       0.5771740879807226,
       1.0
      ]
     ]
    },
    "sequential": {
     "status": "estimated",
     "model": "sequential",
     "vmax": 100.18008750098508,
     "kmA": 1.8741383819867359,
     "kmB": 0.0008328695318604867,
     "kiA": 1.3924031002281014,
     "rss": 26.28235928979353,
     "n": 25,
     "df": 21,
     "order": [
      "vmax",
      "kmA",
      "kmB",
      "kiA"
     ],
     "correlation": [
      [
       1.0000000000000002,
       0.8665327114687346,
       0.8668536304533573,
       -0.6120860756666658
      ],
      [
       0.8665327114687346,
       0.9999999999999999,
       0.7431855180343567,
       -0.7143921409485207
      ],
      [
       0.8668536304533574,
       0.7431855180343568,
       0.9999999999999999,
       -0.8176746865042458
      ],
      [
       -0.6120860756666663,
       -0.7143921409485209,
       -0.817674686504246,
       1.0
      ]
     ]
    },
    "comparison": {
     "status": "computed",
     "aiccPingPong": 50.771767022395665,
     "aiccSequential": 14.408448232466203,
     "dAicc": 36.363318789929465,
     "F": 81.04062096841912,
     "p": 1.1806159148404956e-08,
     "df1": 1,
     "df2": 21,
     "boundary": true
    }
   }
  },
  {
   "name": "metamorphic-row-order",
   "about": "The noisy sequential rates permuted (seed 20261026)",
   "a": [
    1.0,
    10.0,
    2.0,
    5.0,
    0.5,
    5.0,
    0.5,
    2.0,
    1.0,
    5.0,
    10.0,
    0.5,
    5.0,
    10.0,
    1.0,
    10.0,
    10.0,
    1.0,
    1.0,
    5.0,
    0.5,
    0.5,
    2.0,
    2.0,
    2.0
   ],
   "b": [
    0.2,
    0.5,
    1.0,
    2.0,
    0.2,
    0.2,
    5.0,
    2.0,
    5.0,
    5.0,
    2.0,
    0.5,
    1.0,
    1.0,
    2.0,
    0.2,
    5.0,
    1.0,
    0.5,
    0.5,
    1.0,
    2.0,
    0.5,
    0.2,
    5.0
   ],
   "rate": [
    8.270129916632172,
    33.03410459348146,
    31.606587056706747,
    53.27848997959418,
    4.231368255799834,
    14.75035145757773,
    18.08293283020067,
    36.34939900231059,
    32.41035772331647,
    62.27244068251588,
    60.89835800920653,
    8.631377811397826,
    41.98701878987441,
    45.827550500107044,
    24.75549113575206,
    16.836690873294383,
    72.83901270681291,
    18.703429550302847,
    14.830703367245807,
    26.62602201558471,
    12.644574650677466,
    16.548977376246743,
    22.867603051939444,
    11.417995272841756,
    45.146958145786364
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 115.54647948036924,
     "kmA": 2.8929897016228368,
     "kmB": 1.2729637945567878,
     "rss": 127.708012497411,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       1.0,
       0.8568502202514312,
       0.8536640881340479
      ],
      [
       0.8568502202514311,
       1.0,
       0.5771740874543322
      ],
      [
       0.853664088134048,
       0.5771740874543322,
       1.0
      ]
     ]
    },
    "sequential": {
     "status": "estimated",
     "model": "sequential",
     "vmax": 100.18008728118485,
     "kmA": 1.8741383698346148,
     "kmB": 0.8328695267141177,
     "kiA": 1.392403119534377,
     "rss": 26.282359289793533,
     "n": 25,
     "df": 21,
     "order": [
      "vmax",
      "kmA",
      "kmB",
      "kiA"
     ],
     "correlation": [
      [
       1.0000000000000002,
       0.8665327108470997,
       0.8668536297730146,
       -0.6120860756613279
      ],
      [
       0.8665327108470996,
       0.9999999999999999,
       0.7431855175098685,
       -0.7143921410819329
      ],
      [
       0.8668536297730143,
       0.7431855175098683,
       1.0,
       -0.8176746877028489
      ],
      [
       -0.6120860756613276,
       -0.7143921410819329,
       -0.8176746877028489,
       1.0000000000000002
      ]
     ]
    },
    "comparison": {
     "status": "computed",
     "aiccPingPong": 50.771767022395665,
     "aiccSequential": 14.40844823246621,
     "dAicc": 36.36331878992945,
     "F": 81.04062096841912,
     "p": 1.1806159148404956e-08,
     "df1": 1,
     "df2": 21,
     "boundary": true
    }
   }
  },
  {
   "name": "relabelled",
   "about": "The noisy sequential rates with A and B exchanged: the product KiA KmB and the RSS kept",
   "a": [
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0
   ],
   "b": [
    0.5,
    0.5,
    0.5,
    0.5,
    0.5,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0,
    5.0,
    5.0,
    5.0,
    5.0,
    5.0,
    10.0,
    10.0,
    10.0,
    10.0,
    10.0
   ],
   "rate": [
    4.231368255799834,
    8.631377811397826,
    12.644574650677466,
    16.548977376246743,
    18.08293283020067,
    8.270129916632172,
    14.830703367245807,
    18.703429550302847,
    24.75549113575206,
    32.41035772331647,
    11.417995272841756,
    22.867603051939444,
    31.606587056706747,
    36.34939900231059,
    45.146958145786364,
    14.75035145757773,
    26.62602201558471,
    41.98701878987441,
    53.27848997959418,
    62.27244068251588,
    16.836690873294383,
    33.03410459348146,
    45.827550500107044,
    60.89835800920653,
    72.83901270681291
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "estimated",
     "model": "ping-pong",
     "vmax": 115.5464793200813,
     "kmA": 1.272963793106726,
     "kmB": 2.892989691593912,
     "rss": 127.708012497411,
     "n": 25,
     "df": 22,
     "order": [
      "vmax",
      "kmA",
      "kmB"
     ],
     "correlation": [
      [
       1.0000000000000002,
       0.8536640881359981,
       0.8568502199181934
      ],
      [
       0.8536640881359981,
       0.9999999999999998,
       0.5771740870881457
      ],
      [
       0.8568502199181932,
       0.5771740870881455,
       1.0
      ]
     ]
    },
    "sequential": {
     "status": "estimated",
     "model": "sequential",
     "vmax": 100.18008730159815,
     "kmA": 0.8328695277035352,
     "kmB": 1.8741383719097024,
     "kiA": 0.6187857522765013,
     "rss": 26.282359289793515,
     "n": 25,
     "df": 21,
     "order": [
      "vmax",
      "kmA",
      "kmB",
      "kiA"
     ],
     "correlation": [
      [
       1.0000000000000002,
       0.8668536300675703,
       0.8665327111465154,
       -0.609787925271395
      ],
      [
       0.8668536300675703,
       1.0,
       0.7431855178363379,
       -0.71004490257045
      ],
      [
       0.866532711146515,
       0.7431855178363375,
       1.0,
       -0.8182784879895286
      ],
      [
       -0.6097879252713952,
       -0.71004490257045,
       -0.8182784879895291,
       0.9999999999999999
      ]
     ]
    },
    "comparison": {
     "status": "computed",
     "aiccPingPong": 50.771767022395665,
     "aiccSequential": 14.408448232466192,
     "dAicc": 36.36331878992947,
     "F": 81.04062096841919,
     "p": 1.1806159148404873e-08,
     "df1": 1,
     "df2": 21,
     "boundary": true
    }
   }
  },
  {
   "name": "refused-two-by-six",
   "about": "Two levels of A by six of B",
   "a": [
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0,
    2.0
   ],
   "b": [
    0.1,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.1,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0
   ],
   "rate": [
    4.3478260869565215,
    7.692307692307692,
    14.285714285714286,
    20.0,
    25.0,
    29.41176470588235,
    6.249999999999999,
    11.11111111111111,
    20.83333333333333,
    29.41176470588235,
    37.03703703703704,
    43.859649122807014
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "refused",
     "model": "ping-pong",
     "reason": "design"
    },
    "sequential": {
     "status": "refused",
     "model": "sequential",
     "reason": "design"
    },
    "comparison": {
     "status": "not-available",
     "reason": "not-both-estimated"
    }
   }
  },
  {
   "name": "refused-eleven-rows",
   "about": "Eleven rows of the grid",
   "a": [
    0.5,
    0.5,
    0.5,
    0.5,
    0.5,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    2.0
   ],
   "b": [
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2,
    0.5,
    1.0,
    2.0,
    5.0,
    0.2
   ],
   "rate": [
    4.761904761904762,
    8.771929824561402,
    12.195121951219512,
    15.151515151515152,
    17.73049645390071,
    7.692307692307692,
    14.285714285714286,
    20.0,
    25.0,
    29.41176470588235,
    11.11111111111111
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "refused",
     "model": "ping-pong",
     "reason": "design"
    },
    "sequential": {
     "status": "refused",
     "model": "sequential",
     "reason": "design"
    },
    "comparison": {
     "status": "not-available",
     "reason": "not-both-estimated"
    }
   }
  },
  {
   "name": "refused-no-grid",
   "about": "Twelve rows with no three-by-three grid",
   "a": [
    0.5,
    1.0,
    2.0,
    5.0,
    10.0,
    0.5,
    1.0,
    2.0,
    5.0,
    10.0,
    20.0,
    40.0
   ],
   "b": [
    0.2,
    0.2,
    0.5,
    0.5,
    1.0,
    1.0,
    2.0,
    2.0,
    5.0,
    5.0,
    10.0,
    10.0
   ],
   "rate": [
    4.761904761904762,
    7.692307692307692,
    20.83333333333333,
    28.73563218390805,
    47.16981132075472,
    12.195121951219512,
    25.0,
    37.03703703703704,
    62.189054726368155,
    72.25433526011561,
    84.31703204047218,
    88.261253309797
   ],
   "unitA": "µM",
   "unitB": "µM",
   "rateUnit": "µM/min",
   "expected": {
    "ping-pong": {
     "status": "refused",
     "model": "ping-pong",
     "reason": "design"
    },
    "sequential": {
     "status": "refused",
     "model": "sequential",
     "reason": "design"
    },
    "comparison": {
     "status": "not-available",
     "reason": "not-both-estimated"
    }
   }
  }
 ]
}
