{"item":"a","blocked":null,"code":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.24;\n\nimport {AMMStrategyBase} from \"./AMMStrategyBase.sol\";\nimport {TradeInfo} from \"./IAMMStrategy.sol\";\n\ncontract Strategy is AMMStrategyBase {\n    uint256 constant ELAPSED_CAP = 8;\n    uint256 constant SIGNAL_THRESHOLD = WAD / 650;\n    uint256 constant DIR_DECAY = 750000000000000000;\n    uint256 constant ACT_DECAY = 530000000000000000;\n    uint256 constant SIZE_DECAY = 530000000000000000;\n    uint256 constant TOX_DECAY = 910000000000000000;\n    uint256 constant SIGMA_DECAY = 690000000000000000;\n    uint256 constant LAMBDA_DECAY = 990000000000000000;\n    uint256 constant SIZE_BLEND_DECAY = 828000000000000000;\n    uint256 constant TOX_BLEND_DECAY = 51000000000000000;\n    uint256 constant ACT_BLEND_DECAY = 985000000000000000;\n    uint256 constant PHAT_ALPHA = 270000000000000000;\n    uint256 constant PHAT_ALPHA_RETAIL = 60000000000000000;\n    uint256 constant PHAT_ALPHA_SAME = 120000000000000000;\n    uint256 constant REVERT_U = 0;\n    uint256 constant DIR_IMPACT_MULT = 4;\n    uint256 constant GATE_SIGMA_MULT = 7200000000000000000;\n    uint256 constant MIN_GATE = 30000000000000000;\n    uint256 constant TRADE_TOX_BOOST = 3500 * BPS;\n    uint256 constant STALE_ATTRACT_FRAC = 1050000000000000000;\n    uint256 constant RET_CAP = WAD / 35;\n    uint256 constant TOX_CAP = WAD / 5;\n    uint256 constant TRADE_RATIO_CAP = WAD / 5;\n    uint256 constant LAMBDA_CAP = 1820000000000000000;\n    uint256 constant STEP_COUNT_CAP = 64;\n    uint256 constant BASE_FEE = 4 * BPS;\n    uint256 constant SIGMA_COEF = 200000000000000000;\n    uint256 constant LAMBDA_COEF = 12 * BPS;\n    uint256 constant FLOW_SIZE_COEF = 4842 * BPS;\n    uint256 constant TOX_COEF = 300 * BPS;\n    uint256 constant TOX_QUAD_COEF = 15000 * BPS;\n    uint256 constant ACT_COEF = 91843 * BPS;\n    uint256 constant DIR_COEF = 20 * BPS;\n    uint256 constant DIR_TOX_COEF = 100 * BPS;\n    uint256 constant STALE_DIR_COEF = 6850 * BPS;\n    uint256 constant SIGMA_TOX_COEF = 500 * BPS;\n    uint256 constant TAIL_KNEE = 600 * BPS;\n    uint256 constant TAIL_SLOPE_PROTECT = 930000000000000000;\n    uint256 constant TAIL_SLOPE_ATTRACT = 850000000000000000;\n\n    function afterInitialize(uint256 initialX, uint256 initialY) external override returns (uint256, uint256) {\n        slots[0] = BASE_FEE; slots[1] = BASE_FEE; slots[3] = WAD; \n        slots[5] = initialX > 0 ? wdiv(initialY, initialX) : 100 * WAD;\n        slots[6] = 950000000000000; slots[7] = 800000000000000000; slots[8] = 2000000000000000;\n        slots[15] = 400000000000000000 | (uint256(2000000000000000) << 160); slots[13] = 902500000000; slots[14] = slots[5]; \n        return (BASE_FEE, BASE_FEE);\n    }\n\n    function afterSwap(TradeInfo calldata trade) external override returns (uint256, uint256) {\n        uint256 prevBidFee = slots[0]; uint256 prevAskFee = slots[1]; uint256 lastTs = uint64(slots[2]);\n        uint256 dirState = slots[3]; uint256 actEma = slots[4]; uint256 pHat = slots[5];\n        uint256 sigmaHat = slots[6]; uint256 lambdaHat = slots[7]; uint256 sizeHat = slots[8];\n        uint256 toxEma = slots[9]; uint256 stepTradeCount = slots[10];\n\n        uint256 sigmaForFast = sigmaHat;\n        uint256 fastHat = slots[14];\n        uint256 uncertainty = slots[13];\n        uint256 silent = trade.timestamp > lastTs ? trade.timestamp - lastTs : 0;\n        bool isNewStep = trade.timestamp > lastTs;\n        if (isNewStep) {\n            uint256 elapsedRaw = trade.timestamp - lastTs;\n            uint256 elapsed = elapsedRaw > ELAPSED_CAP ? ELAPSED_CAP : elapsedRaw;\n            dirState = _decayCentered(dirState, DIR_DECAY, elapsed);\n            actEma = wmul(actEma, _powWad(ACT_DECAY, elapsed));\n            sizeHat = wmul(sizeHat, _powWad(SIZE_DECAY, elapsed));\n            toxEma = wmul(toxEma, _powWad(TOX_DECAY, elapsed));\n            if (stepTradeCount > 0 && elapsedRaw > 0) {\n                uint256 lambdaInst = (stepTradeCount * WAD) / elapsedRaw;\n                if (lambdaInst > LAMBDA_CAP) lambdaInst = LAMBDA_CAP;\n                lambdaHat = wmul(lambdaHat, LAMBDA_DECAY) + wmul(lambdaInst, WAD - LAMBDA_DECAY);\n            }\n            // Process variance is propagated inside the censored update.\n            if (uncertainty > 100000000000000) uncertainty = 100000000000000;\n            stepTradeCount = 0;\n        }\n\n        bool firstInStep = stepTradeCount == 0;\n        uint256 spot = trade.reserveX > 0 ? wdiv(trade.reserveY, trade.reserveX) : pHat;\n        if (pHat == 0) pHat = spot;\n\n        uint256 feeUsed = trade.isBuy ? prevBidFee : prevAskFee;\n        uint256 gamma = feeUsed < WAD ? WAD - feeUsed : 0;\n        uint256 pImplied;\n        if (gamma == 0) { pImplied = spot; }\n        else { pImplied = trade.isBuy ? wmul(spot, gamma) : wdiv(spot, gamma); }\n\n        // S: infer a no-trade interval center from the last post-trade spot.\n        uint256 silenceScale = WAD;\n        if (firstInStep && silent > 1) {\n            uint256 g = silent - 1;\n            if (g > 1) g = 1;\n            uint256 w = WAD - _powWad(800000000000000000, g);\n            uint256 s = slots[2] >> 64;\n            if (s == 0) s = pHat;\n            uint256 c = (wmul(s, WAD - prevBidFee) + wdiv(s, WAD - prevAskFee)) / 2;\n            if (c >= pHat) pHat += wmul(w, c - pHat);\n            else pHat -= wmul(w, pHat - c);\n            silenceScale = WAD - wmul(300000000000000000, w);\n        }\n\n        {\n            uint256 ret = pHat > 0 ? wdiv(absDiff(pImplied, pHat), pHat) : 0;\n            uint256 alpha = firstInStep ? PHAT_ALPHA : PHAT_ALPHA_RETAIL;\n            uint256 prePhat = pHat;\n            bool secondPrint = !firstInStep && stepTradeCount == 1;\n            bool sameDir = false; bool oppDir = false;\n            if (secondPrint) {\n                bool up2 = pImplied >= pHat;\n                uint256 d1 = slots[12];\n                if (d1 != 0) { sameDir = (d1 == 1) == up2; oppDir = !sameDir; }\n                if (sameDir) alpha = PHAT_ALPHA_SAME;\n            }\n            if (firstInStep) { slots[12] = pImplied >= pHat ? 1 : 2; }\n            uint256 adaptiveGate = wmul(sigmaHat, GATE_SIGMA_MULT);\n            if (adaptiveGate < MIN_GATE) adaptiveGate = MIN_GATE;\n            alpha = wmul(alpha, silenceScale);\n            adaptiveGate = wmul(adaptiveGate, silenceScale);\n            if (ret <= adaptiveGate) { pHat = wmul(pHat, WAD - alpha) + wmul(pImplied, alpha); }\n            if (oppDir && REVERT_U > 0) {\n                uint256 pre = slots[11];\n                if (pre > pHat) pHat = pHat + wmul(pre - pHat, REVERT_U);\n                else pHat = pHat - wmul(pHat - pre, REVERT_U);\n            }\n            if (firstInStep) {\n                if (ret > RET_CAP) ret = RET_CAP;\n                sigmaHat = wmul(sigmaHat, SIGMA_DECAY) + wmul(ret, WAD - SIGMA_DECAY);\n            }\n        }\n\n        // Interior retail routing equalizes fee-adjusted marginal prices.\n        // Subsequent trades in a step cannot be the initial arbitrage trade.\n        if (!firstInStep && feeUsed > 30 * BPS && gamma > 0) {\n            uint256 normalSpot = trade.isBuy\n                ? wdiv(wmul(spot, gamma), WAD - 30 * BPS)\n                : wdiv(wmul(spot, WAD - 30 * BPS), gamma);\n            pHat = wmul(pHat, 90 * WAD / 100) + wmul(normalSpot, 10 * WAD / 100);\n        }\n\n        // Censored assumed-density posterior. No external or future inputs.\n        uint256 arbProbability;\n        (fastHat, uncertainty, arbProbability) = _posterior(PosteriorInput(\n            fastHat, uncertainty, pImplied, spot, slots[2] >> 64,\n            prevBidFee, prevAskFee, firstInStep, silent, trade.isBuy,\n            trade.reserveY > 0 ? wdiv(trade.amountY, trade.reserveY) : 0\n        ));\n        slots[13] = uncertainty;\n        slots[14] = fastHat;\n        uint256 tradeRatio = trade.reserveY > 0 ? wdiv(trade.amountY, trade.reserveY) : 0;\n        if (tradeRatio > TRADE_RATIO_CAP) tradeRatio = TRADE_RATIO_CAP;\n\n        if (tradeRatio > SIGNAL_THRESHOLD) {\n            uint256 push = tradeRatio * DIR_IMPACT_MULT;\n            if (push > WAD / 4) push = WAD / 4;\n            if (trade.isBuy) {\n                dirState = dirState + push;\n                if (dirState > 2 * WAD) dirState = 2 * WAD;\n            } else {\n                dirState = dirState > push ? dirState - push : 0;\n            }\n            actEma = wmul(actEma, ACT_BLEND_DECAY) + wmul(tradeRatio, WAD - ACT_BLEND_DECAY);\n            sizeHat = wmul(sizeHat, SIZE_BLEND_DECAY) + wmul(tradeRatio, WAD - SIZE_BLEND_DECAY);\n            if (sizeHat > WAD) sizeHat = WAD;\n        }\n\n        uint256 tox = pHat > 0 ? wdiv(absDiff(spot, pHat), pHat) : 0;\n        if (tox > TOX_CAP) tox = TOX_CAP;\n        toxEma = wmul(toxEma, TOX_BLEND_DECAY) + wmul(tox, WAD - TOX_BLEND_DECAY);\n        uint256 toxSignal = toxEma;\n\n        stepTradeCount = stepTradeCount + 1;\n        if (stepTradeCount > STEP_COUNT_CAP) stepTradeCount = STEP_COUNT_CAP;\n\n        uint256 originalLambda = lambdaHat; uint256 originalSize = sizeHat;\n\n        if (342406799193418304 > 0) {\n            uint256 packedFlow = slots[15];\n            uint256 rate = uint80(packedFlow);\n            uint256 count = uint80(packedFlow >> 80);\n            uint256 meanSize = uint80(packedFlow >> 160);\n            if (rate == 0) rate = 400000000000000000;\n            if (meanSize == 0) meanSize = 2000000000000000;\n            if (isNewStep) {\n                uint256 inst = count / silent;\n                if (inst > 3 * WAD) inst = 3 * WAD;\n                uint256 retention = _powWad(999000000000000000, silent > 64 ? 64 : silent);\n                rate = wmul(rate, retention) + wmul(inst, WAD-retention);\n                count = 0;\n            }\n            uint256 weight = firstInStep ? WAD-arbProbability : WAD;\n            uint256 correctedWeight = weight;\n            if (2 == 2) {\n                uint256 missing = wmul(feeUsed, 196030880396139429888);\n                if (missing > 333333333333333376) missing = 333333333333333376;\n                correctedWeight = wdiv(weight, WAD-missing);\n            }\n            count += correctedWeight;\n            uint256 learning = wmul(WAD-999000000000000000, weight);\n            meanSize = _blend(meanSize, tradeRatio, learning);\n            slots[15]=rate | (count << 80) | (meanSize << 160);\n            uint256 retailRate = wmul(rate, 366383424913407168);\n            uint256 retailSize = 2 == 0 ? sizeHat : wmul(meanSize,1883296158119298304);\n            lambdaHat = _blend(lambdaHat,retailRate,342406799193418304);\n            sizeHat = _blend(sizeHat,retailSize,342406799193418304);\n        }\n        uint256 flowSize = wmul(lambdaHat, sizeHat);\n        uint256 fBase = BASE_FEE + wmul(SIGMA_COEF, sigmaHat) + wmul(LAMBDA_COEF, lambdaHat) + wmul(FLOW_SIZE_COEF, flowSize);\n        uint256 fMid = fBase + wmul(TOX_COEF, toxSignal) + wmul(TOX_QUAD_COEF, wmul(toxSignal, toxSignal)) + wmul(ACT_COEF, actEma);\n        fMid = fMid + wmul(SIGMA_TOX_COEF, wmul(sigmaHat, toxSignal));\n\n        lambdaHat = originalLambda; sizeHat = originalSize;\n        uint256 dirDev; bool sellPressure;\n        if (dirState >= WAD) { dirDev = dirState - WAD; sellPressure = true; }\n        else { dirDev = WAD - dirState; sellPressure = false; }\n\n        uint256 skew = wmul(DIR_COEF, dirDev) + wmul(DIR_TOX_COEF, wmul(dirDev, toxSignal));\n        uint256 bidFee; uint256 askFee;\n        if (sellPressure) {\n            bidFee = fMid + skew;\n            askFee = fMid > skew ? fMid - skew : 0;\n        } else {\n            askFee = fMid + skew;\n            bidFee = fMid > skew ? fMid - skew : 0;\n        }\n\n        {\n            uint256 staleHat = wmul(pHat, 700000000000000000) + wmul(fastHat, 300000000000000000);\n            uint256 staleTox = wdiv(absDiff(spot, staleHat), staleHat);\n            if (staleTox > TOX_CAP) staleTox = TOX_CAP;\n            uint256 staleShift = wmul(STALE_DIR_COEF, staleTox);\n            uint256 attractShift = wmul(staleShift, STALE_ATTRACT_FRAC);\n            if (spot >= staleHat) {\n                bidFee = bidFee + staleShift;\n                askFee = askFee > attractShift ? askFee - attractShift : 0;\n            } else {\n                askFee = askFee + staleShift;\n                bidFee = bidFee > attractShift ? bidFee - attractShift : 0;\n            }\n        }\n\n        {\n            bool tradeAligned = (trade.isBuy && spot >= pHat) || (!trade.isBuy && spot < pHat);\n            if (tradeAligned) {\n                uint256 tradeBoost = wmul(TRADE_TOX_BOOST, tradeRatio);\n                if (!firstInStep && tradeBoost > 16 * BPS) tradeBoost = 16 * BPS;\n                if (trade.isBuy) { bidFee = bidFee + tradeBoost; }\n                else { askFee = askFee + tradeBoost; }\n            }\n        }\n\n        if (sellPressure) {\n            bidFee = clampFee(_compressTailWithSlope(bidFee, TAIL_SLOPE_PROTECT));\n            askFee = clampFee(_compressTailWithSlope(askFee, TAIL_SLOPE_ATTRACT));\n        } else {\n            askFee = clampFee(_compressTailWithSlope(askFee, TAIL_SLOPE_PROTECT));\n            bidFee = clampFee(_compressTailWithSlope(bidFee, TAIL_SLOPE_ATTRACT));\n        }\n\n        if (firstInStep) {\n            if (askFee > bidFee && bidFee > 30 * BPS) bidFee = 30 * BPS;\n            else if (bidFee > askFee && askFee > 30 * BPS) askFee = 30 * BPS;\n        }\n\n        if (bidFee > askFee && askFee > 36 * BPS) askFee = 36 * BPS;\n        else if (askFee > bidFee && bidFee > 36 * BPS) bidFee = 36 * BPS;\n\n        slots[0] = bidFee; slots[1] = askFee; slots[2] = (spot << 64) | trade.timestamp;\n        slots[3] = dirState; slots[4] = actEma; slots[5] = pHat;\n        slots[6] = sigmaHat; slots[7] = lambdaHat; slots[8] = sizeHat;\n        slots[9] = toxEma; slots[10] = stepTradeCount;\n\n        return (bidFee, askFee);\n    }\n\n\n    struct PosteriorInput {\n        uint256 mu; uint256 v; uint256 obs; uint256 spot; uint256 preSpot;\n        uint256 bid; uint256 ask; bool first; uint256 silent; bool buy; uint256 size;\n    }\n    function _posterior(PosteriorInput memory x) internal pure returns (uint256, uint256, uint256) {\n        if (x.mu == 0) x.mu = x.spot;\n        if (x.v < 10000000000) x.v = 10000000000;\n        uint256 lo = wmul(x.preSpot, WAD-x.bid);\n        uint256 hi = wdiv(x.preSpot, WAD-x.ask);\n        if (x.first) {\n            if (x.silent>1 && x.preSpot>0) {\n                uint256 elapsed=x.silent>8?8:x.silent;\n                x.v += 902500000000*(elapsed-1);\n                (x.mu,x.v)=_band(x.mu,x.v,lo,hi);\n            }\n            x.v+=902500000000;\n        }\n        uint256 mRetail = x.mu;\n        uint256 vRetail = x.v;\n        // A missing own-pool trade is a censored price observation.\n        if (x.first && x.preSpot > 0) {\n            (mRetail, vRetail) = _band(x.mu, x.v, lo, hi);\n        }\n        if (!x.first) {\n            // A later print is retail. Only an interior route is an observation\n            // of the other pool, with explicit observation uncertainty.\n            uint256 fee = x.buy ? x.bid : x.ask;\n            if (fee > 30 * BPS) {\n                uint256 normal = x.buy ? wdiv(wmul(x.spot, WAD-fee), WAD-30*BPS)\n                    : wdiv(wmul(x.spot, WAD-30*BPS), WAD-fee);\n                uint256 residual = wdiv(absDiff(normal, x.mu),x.mu);\n                uint256 noise = 9000000000000 + wmul(residual,residual);\n                uint256 k = wdiv(x.v,x.v+noise);\n                return (_blend(x.mu,normal,k),wmul(x.v,WAD-k),0);\n            }\n            return (x.mu,x.v,0);\n        }\n        uint256 e = wdiv(absDiff(x.obs,x.mu),x.mu);\n        uint256 totalV = x.v + 22500000000;\n        uint256 z = wdiv(wmul(e,e),totalV);\n        uint256 density = _powWad(wdiv(WAD,WAD+z/8),4);\n        uint256 odds = wmul(density,wdiv(4000000000000000,_isqrt(totalV*WAD)));\n        if (x.size > 3000000000000000) odds = wmul(odds,4*WAD/10);\n        if (x.silent > 1) odds = wmul(odds,8*WAD/10);\n        uint256 sd = _isqrt(x.v*WAD);\n        uint256 width = wdiv(hi-lo,x.mu);\n        uint256 distance = x.mu<lo?lo-x.mu:(x.mu>hi?x.mu-hi:0);\n        uint256 zBand = wdiv(wdiv(distance,x.mu),sd);\n        uint256 mass = wmul(wdiv(width,width+2*sd),wdiv(WAD,WAD+wmul(zBand,zBand)));\n        if (mass < WAD/100) mass = WAD/100;\n        odds = wdiv(odds,mass);\n        uint256 prob = wdiv(odds,WAD+odds);\n        uint256 kArb = wdiv(x.v,totalV);\n        uint256 mArb = _blend(x.mu,x.obs,kArb);\n        uint256 mean = _blend(mRetail,mArb,prob);\n        uint256 between = wdiv(absDiff(mArb,mRetail),x.mu);\n        uint256 variance = wmul(prob,wmul(x.v,WAD-kArb)) + wmul(WAD-prob,vRetail)\n            + wmul(wmul(prob,WAD-prob),wmul(between,between));\n        if (variance > 100000000000000) variance = 100000000000000;\n        return (mean,variance,prob);\n    }\n    function _blend(uint256 a,uint256 b,uint256 w) internal pure returns(uint256) {\n        return b>=a ? a+wmul(b-a,w) : a-wmul(a-b,w);\n    }\n    function _band(uint256 mu,uint256 v,uint256 lo,uint256 hi) internal pure returns(uint256,uint256) {\n        // Soft interval likelihood avoids discontinuities at quadrature nodes.\n        uint256 sd=wmul(mu,_isqrt(v*WAD));\n        uint256[3] memory acc;\n        for(uint256 j=0;j<7;j++) {\n            uint256 p=j<3 ? (mu>(3-j)*sd?mu-(3-j)*sd:1) : mu+(j-3)*sd;\n            uint256 w=j==3?72:(j==2||j==4?45:(j==1||j==5?10:1));\n            uint256 distance=p<lo?lo-p:(p>hi?p-hi:0);\n            uint256 z=sd>0?wdiv(distance,sd):0;\n            uint256 likelihood=wdiv(WAD,WAD+4*wmul(z,z));\n            w=wmul(w*WAD,likelihood);\n            acc[0]+=w;acc[1]+=wmul(w,p);\n            uint256 d=wdiv(absDiff(p,mu),mu);\n            acc[2]+=wmul(w,wmul(d,d));\n        }\n        uint256 m=wdiv(acc[1],acc[0]);\n        uint256 d=wdiv(absDiff(m,mu),mu);\n        uint256 second=wdiv(acc[2],acc[0]);\n        return(m,second>wmul(d,d)?second-wmul(d,d):10000000000);\n    }\n\n    function _compressTailWithSlope(uint256 fee, uint256 slope) internal pure returns (uint256) {\n        if (fee <= TAIL_KNEE) return fee;\n        return TAIL_KNEE + wmul(fee - TAIL_KNEE, slope);\n    }\n\n    function _powWad(uint256 factor, uint256 exp) internal pure returns (uint256 result) {\n        result = WAD;\n        while (exp > 0) {\n            if (exp & 1 == 1) result = wmul(result, factor);\n            factor = wmul(factor, factor);\n            exp >>= 1;\n        }\n    }\n\n    function _decayCentered(uint256 centered, uint256 decayFactor, uint256 elapsed) internal pure returns (uint256) {\n        uint256 mul = _powWad(decayFactor, elapsed);\n        if (centered >= WAD) { return WAD + wmul(centered - WAD, mul); }\n        uint256 below = wmul(WAD - centered, mul);\n        return below < WAD ? WAD - below : 0;\n    }\n\n    // Floor square root: bit-length seed and seven Newton steps (all uint256).\n    function _isqrt(uint256 x) internal pure returns (uint256 r) {\n        if (x == 0) return 0;\n        unchecked {\n            uint256 y = x;\n            r = 1;\n            if (y >> 128 != 0) { y >>= 128; r <<= 64; }\n            if (y >> 64 != 0) { y >>= 64; r <<= 32; }\n            if (y >> 32 != 0) { y >>= 32; r <<= 16; }\n            if (y >> 16 != 0) { y >>= 16; r <<= 8; }\n            if (y >> 8 != 0) { y >>= 8; r <<= 4; }\n            if (y >> 4 != 0) { y >>= 4; r <<= 2; }\n            if (y >> 2 != 0) { r <<= 1; }\n            r = (r + x / r) >> 1;\n            r = (r + x / r) >> 1;\n            r = (r + x / r) >> 1;\n            r = (r + x / r) >> 1;\n            r = (r + x / r) >> 1;\n            r = (r + x / r) >> 1;\n            r = (r + x / r) >> 1;\n            uint256 t = x / r;\n            return r < t ? r : t;\n        }\n    }\n\n    function getName() external pure override returns (string memory) { return \"censored_10\"; }\n}\n","sha256":"f24b6ca198b744c380842c3a17964a6dc21f311bb04984b26733afa3fee8eaf2","params":[2,0.3424,0.999,0.3664,1.883,196.0,1.5],"params_exact":[2,0.3424067991934183,0.999,0.36638342491340714,1.8832961581192982,196.03088039613942,1.5],"parameter_names":["structure (0=count,2=bounded correction)","mix","retention_per_step","rate_scale","size_scale","quote_correction_slope","correction_cap (max weight multiplier; missing<=1-1/cap)"],"evaluations":161,"log_note":"log/recheck params rounded to 4 significant digits (exact frozen params in params_exact); each log row block = 700000+64*gen .. +63","log":[{"params":[2,0.1651,0.991,0.6685,1.595,80.0,2.0],"sha256":"df2817ba4ec233a456eb45909faa4a706efe0fabd1734a908fe52545f4d07577","n":64,"gen":0,"mean_diff":0.06283,"se":0.0465,"max_ok":198574,"oog":0,"warm_start_rs1":true},{"params":[2,0.2875,0.999,0.4618,1.483,49.15,2.385],"sha256":"9996c842056116089933f7a9c20adee61e6cc8f892d166d747ee3af11348c3da","n":64,"gen":0,"mean_diff":0.08358,"se":0.0562,"max_ok":198418,"oog":0},{"params":[2,0.2323,0.9636,1.303,1.559,119.8,1.908],"sha256":"1c14b580bb4c966d95955173e60d5b5a4905012b1dd654b6430c96a0cdde8486","n":64,"gen":0,"mean_diff":-0.5882,"se":0.105,"max_ok":198941,"oog":0},{"params":[2,0.2068,0.999,0.5865,1.537,120.1,1.5],"sha256":"5967d33bba09cd0c43de8ab8ed3d9ea7c1fed67f10d481f88a7697c89442c4cf","n":64,"gen":0,"mean_diff":0.1284,"se":0.0385,"max_ok":198597,"oog":0},{"params":[2,0.2006,0.981,0.3,1.289,52.65,1.5],"sha256":"2180fdee825ee988bf334bd19e243698cbfa10aef7263c09b9e935ff6bb338f9","n":64,"gen":0,"mean_diff":-0.08882,"se":0.0574,"max_ok":198465,"oog":0},{"params":[2,0.1684,0.999,0.5741,1.316,102.5,2.484],"sha256":"de7db1d334668a40d2b214145baf372b16a1125ba4bd6e832617db00360be333","n":64,"gen":0,"mean_diff":0.1206,"se":0.0421,"max_ok":198574,"oog":0},{"params":[2,0.2141,0.999,0.5847,1.29,100.3,2.167],"sha256":"fd5c4a104527b541bbc95dd7d454aac76a9efb40e897fd5c8e7948208b9d5690","n":64,"gen":0,"mean_diff":0.1167,"se":0.0398,"max_ok":198574,"oog":0},{"params":[2,0.04948,0.9812,0.329,0.9444,87.4,2.356],"sha256":"55eeb8364976237781340e17e0bb0477cc3e065b069449d873e64c82e3562f2c","n":64,"gen":0,"mean_diff":0.01636,"se":0.0337,"max_ok":198558,"oog":0},{"params":[2,0.2898,0.999,0.9226,1.745,135.9,1.5],"sha256":"3f72c363b6a1779f85c4e0e1afffabe92867e414ac1f8270dae62c27cfce0342","n":64,"gen":0,"mean_diff":-0.1976,"se":0.0935,"max_ok":198956,"oog":0},{"params":[2,0.2193,0.9647,0.809,1.501,125.7,1.704],"sha256":"0d96a2395ad96251af363d0c46d55925e1f45184718bcc99b2f69adbb6e6a0c5","n":64,"gen":0,"mean_diff":-0.05105,"se":0.0587,"max_ok":198589,"oog":0},{"params":[2,0.1959,0.978,0.9109,1.555,108.8,1.648],"sha256":"5373351e85951b5ca6f7063b6adfa18330654b197fcca5a12f590086b39721ce","n":64,"gen":0,"mean_diff":-0.05663,"se":0.0622,"max_ok":198593,"oog":0},{"params":[2,0.1747,0.9785,0.7232,2.071,171.0,1.5],"sha256":"477eac693eb0e4a92d3ca545aa5d0410813fd6be3e1bb9b7b9c4a99aefd24572","n":64,"gen":1,"mean_diff":0.04177,"se":0.0561,"max_ok":197288,"oog":0},{"params":[2,0.1217,0.9948,0.3834,1.1,178.0,2.563],"sha256":"381b5ad3620abc67ba6f04a732a13b7234a3cea34cc9e776c95b5ffcf9426532","n":64,"gen":1,"mean_diff":0.07052,"se":0.0494,"max_ok":197288,"oog":0},{"params":[2,0.1551,0.999,0.3074,1.314,203.5,1.5],"sha256":"82a7cec48829664df809241f799975ae9068fb486101675a43f9c5a836ec92f6","n":64,"gen":1,"mean_diff":0.08874,"se":0.0587,"max_ok":197288,"oog":0},{"params":[0,0.1866,0.999,0.7341,1.464,13.06,1.706],"sha256":"16720863d479fa548d45bde0f8257b94f58ebfc431a70f4b8bc260fa5bc9381f","n":64,"gen":1,"mean_diff":-0.3145,"se":0.0739,"max_ok":196857,"oog":0},{"params":[2,0.1827,0.9989,0.8777,1.501,111.6,2.023],"sha256":"f4957d6f0b6f972c14ca842270829262f4a210ca0cce819111d26e25000e3855","n":64,"gen":1,"mean_diff":0.03388,"se":0.0645,"max_ok":197288,"oog":0},{"params":[2,0.2815,0.999,0.3,1.315,30.21,1.5],"sha256":"270fcb9572e7cbc59f2aa3284e3cbd1d6d6acb104093ac0945a678eed1cf5fc0","n":64,"gen":1,"mean_diff":-0.0743,"se":0.107,"max_ok":197337,"oog":0},{"params":[2,0.1257,0.9921,0.4469,1.754,249.4,1.5],"sha256":"fa8d0adbb629ec99b2f5aaa6b5fad40cd6897d5818318615442ecaf6d07eef13","n":64,"gen":1,"mean_diff":0.1455,"se":0.0452,"max_ok":197288,"oog":0},{"params":[2,0.2826,0.999,0.7581,1.042,125.8,1.794],"sha256":"8572575ce6d09b826da793394a0acd9f242ec135292cadba0ff13fdc368ccd3d","n":64,"gen":1,"mean_diff":0.25,"se":0.0593,"max_ok":197288,"oog":0},{"params":[2,0.3537,0.999,0.5294,1.166,69.73,3.104],"sha256":"02504d4865ba2407ec57ce0a1701ba6efc98446598951e520d0a5b97b02c6c68","n":64,"gen":1,"mean_diff":0.06873,"se":0.0936,"max_ok":197288,"oog":0},{"params":[2,0.2381,0.9898,0.6354,1.736,101.4,1.5],"sha256":"3f3d374f9420dd04c4c55d7e53b66ed5597bd14ce86a734143f36460a3b0ab01","n":64,"gen":1,"mean_diff":0.1682,"se":0.0486,"max_ok":197288,"oog":0},{"params":[2,0.1728,0.9972,0.4161,1.321,142.2,1.5],"sha256":"2e5505c54a1fd4b95e6e97b038d4daa8182f594200d6b153f53d5b9ac881acac","n":64,"gen":2,"mean_diff":0.08066,"se":0.0653,"max_ok":197184,"oog":0},{"params":[2,0.08776,0.999,0.7039,1.094,120.7,1.5],"sha256":"34526cdfda70d877e76a6211be33c52bf2af0b363a4aa758f010eb2f598ab946","n":64,"gen":2,"mean_diff":0.06881,"se":0.0516,"max_ok":197293,"oog":0},{"params":[2,0.3728,0.999,0.3,0.9643,163.5,2.626],"sha256":"bcdab1dc8ab2d29006c198a44fc778f41ed444a272c1d0e08b872d922d625bb4","n":64,"gen":2,"mean_diff":-0.2871,"se":0.119,"max_ok":197243,"oog":0},{"params":[2,0.2892,0.999,0.6868,1.354,101.2,2.231],"sha256":"db3b89d19b9990fbc7ab00ad2816b152700d0d0a353a57afccffc029c4351a5f","n":64,"gen":2,"mean_diff":0.04569,"se":0.0683,"max_ok":200004,"oog":0},{"params":[2,0.2321,0.9965,0.4596,1.05,179.5,1.533],"sha256":"ed54e92d7e4214ecaa1561b0ca8945b213f0796dd3ab7600835ff2d3223e0a2b","n":64,"gen":2,"mean_diff":0.01252,"se":0.0718,"max_ok":197184,"oog":0},{"params":[2,0.1919,0.999,0.5874,1.277,167.9,1.5],"sha256":"1f4cba81e128945ea6e6dc8db48c3772d53a0c3a23979e6a7c6170f1d1966ada","n":64,"gen":2,"mean_diff":0.1338,"se":0.0586,"max_ok":197184,"oog":0},{"params":[2,0.2581,0.9909,0.3,1.237,162.0,1.711],"sha256":"50571278f563428cdf1b3285f07f228e710381e0602f470cd9c4f09b311881a6","n":64,"gen":2,"mean_diff":0.02981,"se":0.0801,"max_ok":197233,"oog":0},{"params":[2,0.2363,0.9934,0.8545,0.717,106.7,1.559],"sha256":"c52edef40c27fd7dd5f67dd02fb9b41fce617b840b66e8160554db130b15e3a6","n":64,"gen":2,"mean_diff":0.08063,"se":0.063,"max_ok":197194,"oog":0},{"params":[2,0.3235,0.9853,0.3,0.8486,173.6,2.497],"sha256":"eab79a6d057c9fc23fc60e1756288f51d664f285b6b67e27297f1a8930def614","n":64,"gen":2,"mean_diff":-0.2456,"se":0.113,"max_ok":197243,"oog":0},{"params":[2,0.2733,0.999,0.9601,1.48,162.7,1.706],"sha256":"51bedfe3fc748d8d5c0aaca0c3d5f69452816c9e91348b3bce2574b4f25fb90a","n":64,"gen":2,"mean_diff":-0.2919,"se":0.097,"max_ok":200004,"oog":0},{"params":[0,0.2741,0.999,0.6538,1.288,160.2,1.5],"sha256":"1e0c1eb2fc376829ae0f2cb8e5ad26fbaf4346bc01b24f7e9dcf6de3b04eb48b","n":64,"gen":3,"mean_diff":-0.5497,"se":0.103,"max_ok":196846,"oog":0},{"params":[2,0.1323,0.9891,0.8196,1.783,64.72,2.049],"sha256":"07450518f9036210a701a28d09a9ab2bf10b085920471c35a46682d77b58a744","n":64,"gen":3,"mean_diff":0.02925,"se":0.0416,"max_ok":197277,"oog":0},{"params":[2,0.3014,0.999,0.7882,1.452,154.7,1.5],"sha256":"f29e1960472cc24cee305145f9f871989c99709d4a2951869057a34b09f9d194","n":64,"gen":3,"mean_diff":0.08317,"se":0.058,"max_ok":197277,"oog":0},{"params":[2,0.2778,0.999,0.969,1.669,169.5,1.792],"sha256":"81be596f46989367144cce48eec229e3e873b34db59c1d51b2893278861e6eb5","n":64,"gen":3,"mean_diff":-0.5015,"se":0.0862,"max_ok":197277,"oog":0},{"params":[2,0.2836,0.994,0.4661,1.566,153.3,1.526],"sha256":"8072228c3b686e82f3d63f2a2bcf82d4777c8a80fc53962f2fc28d90b44c7f77","n":64,"gen":3,"mean_diff":0.1734,"se":0.0608,"max_ok":197277,"oog":0},{"params":[0,0.1552,0.999,0.3,1.165,166.9,2.022],"sha256":"3aba54fae260a27666cb8807094be5adc2437303d0ac0e11f2ef08a77cc3f619","n":64,"gen":3,"mean_diff":-0.2796,"se":0.0773,"max_ok":196896,"oog":0},{"params":[2,0.08738,0.999,0.6842,1.092,189.6,1.758],"sha256":"3799145f3949ae22c449c02401426204661f736aaf93b75c4d0dacfe501d62da","n":64,"gen":3,"mean_diff":0.0559,"se":0.0248,"max_ok":197277,"oog":0},{"params":[2,0.2521,0.999,1.103,1.079,165.3,2.192],"sha256":"deed2dc31dfd32f7781d59012928e6ff05bbcf21f4939b03256b5cece6b9623f","n":64,"gen":3,"mean_diff":-0.369,"se":0.081,"max_ok":197277,"oog":0},{"params":[2,0.1347,0.9675,0.3,1.507,122.9,1.83],"sha256":"ddefd447393d2591fdf66944db78f85035c610086cf0b4288119bc4c1ac42912","n":64,"gen":3,"mean_diff":0.07452,"se":0.0428,"max_ok":197326,"oog":0},{"params":[2,0.1921,0.9984,0.32,1.178,135.3,1.883],"sha256":"0af1bc9548350c1701aec24c8dd54787835882bdbd81ee92f16630da4e38a31f","n":64,"gen":3,"mean_diff":0.1015,"se":0.0608,"max_ok":197277,"oog":0},{"params":[2,0.3702,0.999,0.3,1.315,159.7,1.5],"sha256":"b28617afe65130561f3f0c02922a89e9a483a78f59969a3919ce60606be11ae0","n":64,"gen":4,"mean_diff":-0.2076,"se":0.123,"max_ok":197221,"oog":0},{"params":[2,0.2389,0.9952,0.3,1.58,155.1,1.5],"sha256":"6ddc760ec3e8637a1a1fe0efa648bb22c1ce3906b707b9f847e1d0ee2d30a084","n":64,"gen":4,"mean_diff":0.1277,"se":0.0679,"max_ok":197221,"oog":0},{"params":[0,0.2188,0.977,0.6963,1.374,186.6,1.5],"sha256":"152b5543299c85c2ad8e7a810a5626370f45380e3a5d181816760182fbba0269","n":64,"gen":4,"mean_diff":-0.3188,"se":0.0835,"max_ok":196738,"oog":0},{"params":[0,0.1396,0.9977,0.3,1.852,230.7,2.226],"sha256":"b90b60b5fb6bd37043db73e28514b698114c99b3dca50e5973cd14133300ff3e","n":64,"gen":4,"mean_diff":-0.1902,"se":0.079,"max_ok":196794,"oog":0},{"params":[2,0.1665,0.999,0.7986,1.914,202.7,1.5],"sha256":"7396ebd3e5d98098e8a83aae4b99e19e356221c9a57ae15218f90d51b9378ec0","n":64,"gen":4,"mean_diff":-0.04369,"se":0.054,"max_ok":197172,"oog":0},{"params":[2,0.2534,0.999,0.3,1.022,66.62,1.5],"sha256":"bc3d98595856c9e0c78fb245ee9e8a9102fd73bf86f437fbd474438c9cf06e04","n":64,"gen":4,"mean_diff":-0.0687,"se":0.0886,"max_ok":197221,"oog":0},{"params":[0,0.3353,0.999,0.3,1.774,127.6,3.281],"sha256":"3594bb0936e040df05bef70a93d1935f998075a216b4bd9b11be84af9927beec","n":64,"gen":4,"mean_diff":-2.034,"se":0.149,"max_ok":197893,"oog":0},{"params":[2,0.2149,0.999,0.3,1.581,181.5,1.877],"sha256":"29fa74266c730c2ab574885afd0000161ab9c694070c28c428307e6b1690c99e","n":64,"gen":4,"mean_diff":0.194,"se":0.0636,"max_ok":197221,"oog":0},{"params":[2,0.1908,0.986,0.3,1.29,197.5,1.5],"sha256":"7d5d4e24d337e918706ea92146996bfc563563d04e70d22e16eeb393b3802655","n":64,"gen":4,"mean_diff":0.1046,"se":0.0713,"max_ok":197221,"oog":0},{"params":[0,0.07281,0.9856,0.6318,1.395,135.0,1.5],"sha256":"988064b10a490f4e06ce44e827c053b5085d574104b64fe2dc86a3b7224e5132","n":64,"gen":4,"mean_diff":-0.007365,"se":0.049,"max_ok":196738,"oog":0},{"params":[2,0.148,0.999,0.6993,1.444,238.9,1.5],"sha256":"4a9692932c1a5201f7fce7377d23a50b35b0f062cb90646c726d810128b1accf","n":64,"gen":5,"mean_diff":0.07843,"se":0.0496,"max_ok":198350,"oog":0},{"params":[0,0.05102,0.999,0.5776,1.652,221.3,1.5],"sha256":"bcd2872fb1563e2121c82fca3b16b473a13d69b3497a69bfe23a9c71b3672d30","n":64,"gen":5,"mean_diff":-0.02618,"se":0.0418,"max_ok":197871,"oog":0},{"params":[0,0.2154,0.999,0.3,1.55,157.2,1.55],"sha256":"18d9634a059c310f468e0972431fa000569ef12f7149eb4cd689fcabdee15a69","n":64,"gen":5,"mean_diff":-0.7941,"se":0.0944,"max_ok":197915,"oog":0},{"params":[2,0.1904,0.999,0.3,1.627,157.7,1.932],"sha256":"3477f4e27c44bea113914c4e1144dc997dcd51e009c35b232ba0c6d917c3fd47","n":64,"gen":5,"mean_diff":0.1227,"se":0.0545,"max_ok":198405,"oog":0},{"params":[2,0.2397,0.9972,0.5394,1.838,233.0,1.795],"sha256":"eb7c6b8a51fe425781eb84af1042c4dee449f39d1a2988c6d05679eb7dea02a8","n":64,"gen":5,"mean_diff":0.06323,"se":0.0518,"max_ok":198350,"oog":0},{"params":[2,0.1288,0.9835,0.6512,1.522,67.76,2.021],"sha256":"27a370c7121884db6e803deb0f02b5ccee799ec5a6bfa9bbd88b21dbb6047b64","n":64,"gen":5,"mean_diff":0.07466,"se":0.0462,"max_ok":198350,"oog":0},{"params":[2,0.2165,0.9973,0.6497,1.139,181.3,1.5],"sha256":"30e92345189cafa75781be8bc372ed2289330aa00e50787cfbf30129ca11de86","n":64,"gen":5,"mean_diff":0.09306,"se":0.0515,"max_ok":198350,"oog":0},{"params":[2,0.1926,0.999,0.3,1.792,180.5,1.779],"sha256":"ba220886c9aa6f35651a94a775a58639bca4affa08d88893243e21e5e2dfc208","n":64,"gen":5,"mean_diff":0.1136,"se":0.0519,"max_ok":198405,"oog":0},{"params":[2,0.1543,0.999,0.4057,1.133,183.4,1.5],"sha256":"399f07bdcfeb8b347456e7d44cbe3c352e3fdaa177206b3bf4652081c9bfd466","n":64,"gen":5,"mean_diff":0.08134,"se":0.0612,"max_ok":198350,"oog":0},{"params":[2,0.1201,0.9901,0.4395,1.488,147.7,2.132],"sha256":"824fdefd7df4fd67f8cfa3d0e5ebee9673ebb736f066e16a3ab567da7e5a9021","n":64,"gen":5,"mean_diff":0.09418,"se":0.0431,"max_ok":198350,"oog":0},{"params":[2,0.1483,0.9968,0.4316,1.948,152.7,1.5],"sha256":"7c134006400baa67abcbb066627aa0bb333ba054c4d8f454bc19b3fe455ac889","n":64,"gen":6,"mean_diff":0.08333,"se":0.0472,"max_ok":200257,"oog":0},{"params":[2,0.04457,0.991,0.3,1.049,120.0,1.689],"sha256":"9fa1b9423d235da9f800de07f709c6cb210f13f591ccaa7b2f7059761da8a2a4","n":64,"gen":6,"mean_diff":0.08034,"se":0.032,"max_ok":200312,"oog":0},{"params":[2,0.1473,0.995,0.3587,1.935,84.6,2.068],"sha256":"3a8ce6b8c0d442afaf7b7c4ee250019b2f496822b99fa3def93a0b3b88e5bfd4","n":64,"gen":6,"mean_diff":0.1152,"se":0.0376,"max_ok":200257,"oog":0},{"params":[2,0.2248,0.999,0.3,1.484,237.6,1.516],"sha256":"0309ab45d82155dd67b2e5965c67d9db10237ff05ffafcc22d4ec19abb8a7643","n":64,"gen":6,"mean_diff":0.1675,"se":0.064,"max_ok":200312,"oog":0},{"params":[2,0.1717,0.999,0.3,1.731,202.8,1.5],"sha256":"b80336739a44724a7d5b2158ecacee0a39524eb0261b956473c671b089a8e392","n":64,"gen":6,"mean_diff":0.2054,"se":0.0466,"max_ok":200312,"oog":0},{"params":[2,0.1566,0.999,0.4759,1.313,221.8,1.5],"sha256":"ac91bc1820902c84c47bd5fa52807d567e99c3528e4d6f2b344cf89156120319","n":64,"gen":6,"mean_diff":0.1748,"se":0.0407,"max_ok":200257,"oog":0},{"params":[2,0.0321,0.9914,0.3,1.74,216.1,1.781],"sha256":"8c712c93099fe068d973253f70a7577a959bb29a86b288476fa664a8fb8b27eb","n":64,"gen":6,"mean_diff":0.03283,"se":0.0249,"max_ok":200312,"oog":0},{"params":[2,0.2124,0.999,0.4027,1.386,195.2,2.529],"sha256":"ac75a4fa2e1e48a4e0e86022d6f54f98cc85513eee9ff8ab2a2d0008563e6d30","n":64,"gen":6,"mean_diff":0.1528,"se":0.053,"max_ok":200257,"oog":0},{"params":[2,0.203,0.999,0.3017,2.188,152.1,2.093],"sha256":"8622460845b05f175194f846298186c2bd560e6a53152dea59f76abc0de37227","n":64,"gen":6,"mean_diff":0.107,"se":0.053,"max_ok":200257,"oog":0},{"params":[2,0.231,0.9955,0.3,1.845,123.8,1.61],"sha256":"9f5c32d2f3dd2619cd4199301d0add500375557e0895a6dd53681e6bcddce573","n":64,"gen":6,"mean_diff":0.2032,"se":0.0535,"max_ok":200312,"oog":0},{"params":[2,0.2285,0.9979,0.3845,1.485,130.0,2.029],"sha256":"d7f24bda43255866661ff551bd3cc17a0ac5ff7d5839e250f313bd46bd4e2a47","n":64,"gen":7,"mean_diff":0.1138,"se":0.0637,"max_ok":200175,"oog":0},{"params":[2,0.2562,0.9835,0.4335,1.495,176.9,1.562],"sha256":"381966d2c86e8ece2e49da6d12e6be3934f5f7124283b9dbb5b74fd28dd5c8ee","n":64,"gen":7,"mean_diff":0.1206,"se":0.0554,"max_ok":200175,"oog":0},{"params":[2,0.1917,0.999,0.3,1.625,221.2,1.688],"sha256":"98ddbb4cf0c7e565ad27cd859f8de85721666d38eb88e489152bbb40faf3cc9b","n":64,"gen":7,"mean_diff":0.1217,"se":0.0575,"max_ok":200230,"oog":0},{"params":[2,0.193,0.999,0.3468,1.403,234.6,1.5],"sha256":"7715d2ff29ed50be7ca1d52163750e81cad8f6bb27d8cd8c88eaecd1d2d2e091","n":64,"gen":7,"mean_diff":0.08269,"se":0.0611,"max_ok":200175,"oog":0},{"params":[2,0.1313,0.999,0.3,1.874,199.6,1.936],"sha256":"1d67177bcfcc95ce9f565ae43b94d3d698b22cb014dba2b51f2c5cd186014dc7","n":64,"gen":7,"mean_diff":0.07269,"se":0.0464,"max_ok":200230,"oog":0},{"params":[2,0.08367,0.999,0.4502,1.756,172.1,1.5],"sha256":"49b673da387c9d8a25a18ba497cc17b91f0102873f1827114e73ae98d84d56e7","n":64,"gen":7,"mean_diff":0.03874,"se":0.0415,"max_ok":200175,"oog":0},{"params":[2,0.1179,0.999,0.3,1.627,178.4,1.5],"sha256":"e5cafbf50a3ff26324a4fc4a0a18a6b5d2e49198d09a615402f47b47009568f4","n":64,"gen":7,"mean_diff":0.09465,"se":0.0451,"max_ok":200230,"oog":0},{"params":[2,0.2465,0.999,0.3,1.613,165.8,1.5],"sha256":"32e35e31272f86ae6fa1559e0824c81000aea86a959d03ede0df340af0cda837","n":64,"gen":7,"mean_diff":0.1339,"se":0.0712,"max_ok":200230,"oog":0},{"params":[2,0.1713,0.9963,0.3,1.367,237.4,1.708],"sha256":"66077814458fd5be3266acf46d076be9631702ab53e7b1decd3128deceee9e17","n":64,"gen":7,"mean_diff":0.07484,"se":0.0549,"max_ok":200230,"oog":0},{"params":[2,0.1643,0.9965,0.3,1.519,181.9,1.642],"sha256":"33a6b6cdc69ce4f16ec6a3d3877ea1a41369ca6aa0745b9fc971fa2e4c9df493","n":64,"gen":7,"mean_diff":0.08506,"se":0.0554,"max_ok":200230,"oog":0},{"params":[2,0.2667,0.983,0.4003,2.015,179.4,2.305],"sha256":"0641282fe61b17bfc8fe9194cdfa5bdda69d5f16a4f3a9d660bbec78be8a6ba7","n":64,"gen":8,"mean_diff":0.0337,"se":0.0672,"max_ok":200257,"oog":0},{"params":[2,0.227,0.999,0.3,1.632,241.6,1.5],"sha256":"afaa75a8ec994503d13de19adb93cbe38b7c84e69fb7d95e8ad96666a555ec99","n":64,"gen":8,"mean_diff":0.1039,"se":0.0725,"max_ok":200312,"oog":0},{"params":[2,0.1892,0.999,0.3,1.899,265.0,1.5],"sha256":"bd0c07e2a85dffcf152d14ef24f93d6a915adbaf4a3f4b78510582c91b5ab707","n":64,"gen":8,"mean_diff":0.09284,"se":0.0585,"max_ok":200312,"oog":0},{"params":[0,0.2689,0.9829,0.6186,1.542,142.4,2.559],"sha256":"84f430b432b3312e62a43213d3acb8716c11f0e0fbef2beb8729737d8cb1604c","n":64,"gen":8,"mean_diff":-0.7699,"se":0.104,"max_ok":199795,"oog":0},{"params":[0,0.286,0.9867,0.3,2.09,228.2,1.5],"sha256":"2d2e7a31ce9a4a817ba9b70ef759be46f77206037f67b87d1f3bae78480535c7","n":64,"gen":8,"mean_diff":-1.527,"se":0.125,"max_ok":199839,"oog":0},{"params":[2,0.2064,0.999,0.8748,1.2,140.3,1.5],"sha256":"9a26f23ce4cddbb32526e48027510c8c5e19ba635a17cf8bdd2fc086382daf40","n":64,"gen":8,"mean_diff":-0.01714,"se":0.0753,"max_ok":200257,"oog":0},{"params":[2,0.2716,0.999,0.3,1.468,261.5,1.842],"sha256":"f7323d2500e395471c2473b6009b87ac401d5ea91f3c16eb0c24cd5c40fc7786","n":64,"gen":8,"mean_diff":0.05809,"se":0.0751,"max_ok":200312,"oog":0},{"params":[0,0.207,0.999,0.3,1.303,200.5,1.5],"sha256":"c3b53ac844c0ab7d9740b74ba59e47244ecd61349907f5aba39e7c289d774f6a","n":64,"gen":8,"mean_diff":-0.764,"se":0.0992,"max_ok":199839,"oog":0},{"params":[2,0.3517,0.9877,0.5275,1.693,181.4,2.28],"sha256":"e0b9532eac2346764282c767cce4bad51fc581a76770e6ba3a4645b923e90f6a","n":64,"gen":8,"mean_diff":-0.01673,"se":0.078,"max_ok":200257,"oog":0},{"params":[0,0.1523,0.9972,0.3,1.84,218.7,1.5],"sha256":"a1ba02b11f94bc293af74adc07a07bb43b3d48cf6df44042478361384e405e9a","n":64,"gen":8,"mean_diff":-0.4127,"se":0.0862,"max_ok":199839,"oog":0},{"params":[2,0.2329,0.999,0.3736,1.938,234.3,1.742],"sha256":"613fd0f31cc6c6ed4b119311d3df033bcf9caaf4ba1f35c19a6ec00406c96701","n":64,"gen":9,"mean_diff":0.1995,"se":0.0769,"max_ok":197277,"oog":0},{"params":[2,0.2337,0.999,0.3,1.818,321.4,1.5],"sha256":"5936e57bcdc32d1e2588c710793cedd3cb4741774e7032c249b0a4648ce049e1","n":64,"gen":9,"mean_diff":0.2637,"se":0.0562,"max_ok":197326,"oog":0},{"params":[2,0.07838,0.9855,0.3,2.083,204.8,1.5],"sha256":"34c0f19c7c3f5717575dd897c6173a52206ed58bb25e5a028fa1fb353431f780","n":64,"gen":9,"mean_diff":0.1127,"se":0.0517,"max_ok":197326,"oog":0},{"params":[2,0.1996,0.9795,0.3,1.977,266.3,1.5],"sha256":"3ed7bcfe9f97b88d1aac0c073b6cbb3f5bbc7b2688fd9a3707ff00adfa2347cd","n":64,"gen":9,"mean_diff":0.1688,"se":0.0532,"max_ok":197326,"oog":0},{"params":[0,0.1217,0.9916,0.7731,1.342,260.8,1.521],"sha256":"e9499f286d0908a5da038e67d32431af7b874c6046e6840c5ece7c02d189cd30","n":64,"gen":9,"mean_diff":-0.09033,"se":0.053,"max_ok":196846,"oog":0},{"params":[2,0.3424,0.999,0.3664,1.883,196.0,1.5],"sha256":"f24b6ca198b744c380842c3a17964a6dc21f311bb04984b26733afa3fee8eaf2","n":64,"gen":9,"mean_diff":0.2483,"se":0.0593,"max_ok":197277,"oog":0},{"params":[2,0.1321,0.998,0.3,2.03,293.7,1.5],"sha256":"dc47adc4589052c92b8dec4c335b7c4ac15bac927d857c2fce01da9194466379","n":64,"gen":9,"mean_diff":0.1533,"se":0.0595,"max_ok":197326,"oog":0},{"params":[2,0.1941,0.999,0.9163,1.322,226.0,1.5],"sha256":"7e430a108171fa52f4db7be9cb511b8938514c285525c18ad47e4eacb82e34b8","n":64,"gen":9,"mean_diff":0.04823,"se":0.081,"max_ok":197277,"oog":0},{"params":[2,0.2178,0.999,0.7232,1.649,274.0,1.533],"sha256":"94321d9e3190ee4fadee398967e2587ba97a6601f838f9c50b07d3ed3cbdc762","n":64,"gen":9,"mean_diff":0.0792,"se":0.0852,"max_ok":197277,"oog":0},{"params":[2,0.2745,0.999,0.3,1.735,309.2,1.5],"sha256":"17ff5695f0dd11f8dff05c9f7a1211d6a675bc6acb529974ee948f62fd2a6585","n":64,"gen":9,"mean_diff":0.2018,"se":0.0595,"max_ok":197326,"oog":0},{"params":[0,0.2223,0.984,0.3,1.641,168.1,1.587],"sha256":"69a513d89886c1e02f85f4382e9e46275632bd7b90795a0a4e274d619a6c68e5","n":64,"gen":10,"mean_diff":-1.015,"se":0.0917,"max_ok":198732,"oog":0},{"params":[2,0.2534,0.999,0.3,2.094,351.8,1.5],"sha256":"837264a0b60ec95e6eb56b6753d85ff31064e0f6f9b45aa871465df4ffa169ea","n":64,"gen":10,"mean_diff":0.1604,"se":0.0481,"max_ok":199639,"oog":0},{"params":[0,0.1768,0.999,0.3149,0.9421,275.7,1.5],"sha256":"ad4d10e88a4fb809411089a4e63c012f8de42b9c114d59ff90dd917cf5755ebc","n":64,"gen":10,"mean_diff":-0.6446,"se":0.0733,"max_ok":198683,"oog":0},{"params":[0,0.3845,0.999,0.3,1.42,352.7,1.5],"sha256":"dee9426a23e457c4c88780fa88db9236dc82aa7815a3f2a1424cd8d56728096c","n":64,"gen":10,"mean_diff":-3.192,"se":0.136,"max_ok":198736,"oog":0},{"params":[0,0.3403,0.9939,0.3,1.596,366.8,1.5],"sha256":"6bf0323019e45ef7a31577ae7a094d817f30841870484fa82bcf0bef4d57e5ca","n":64,"gen":10,"mean_diff":-2.411,"se":0.126,"max_ok":198716,"oog":0},{"params":[2,0.2805,0.993,0.3,1.956,352.1,1.567],"sha256":"bd428da67e126a7ec0f9d6ba8bd9fa7aa4e13e2c36a82ae28d7d5932e7727bae","n":64,"gen":10,"mean_diff":0.0629,"se":0.0522,"max_ok":199627,"oog":0},{"params":[2,0.2487,0.9889,0.7643,1.489,284.2,1.5],"sha256":"308c752065cbf7937afd98959315475d1f53e3240ab06177d6ae32d34129f931","n":64,"gen":10,"mean_diff":0.124,"se":0.0439,"max_ok":199588,"oog":0},{"params":[2,0.2383,0.9938,0.3,1.507,262.6,1.873],"sha256":"97baa1a433d73d1106309f2e9c88c58dec6782754e49651634083c7193830472","n":64,"gen":10,"mean_diff":0.06687,"se":0.0568,"max_ok":199631,"oog":0},{"params":[2,0.2025,0.999,0.3,1.387,206.9,1.5],"sha256":"ba282e29e4a21a7f0021c9fe7faf18c3eb2ad3d73f74bd0dd138d7ffbabfcc6d","n":64,"gen":10,"mean_diff":0.04532,"se":0.0556,"max_ok":199631,"oog":0},{"params":[2,0.2901,0.999,0.3,2.025,373.6,1.5],"sha256":"a0c0f30c270a523d2eee495e00080ec1b8a0caee44ffd148b4676ac229380cc0","n":64,"gen":10,"mean_diff":0.1276,"se":0.0512,"max_ok":199631,"oog":0},{"params":[2,0.2475,0.999,0.3,1.829,400.0,1.834],"sha256":"db2823158970398cc33409ba13fac70606c7970fa69e246a86592c1829bd26fc","n":64,"gen":11,"mean_diff":0.1098,"se":0.054,"max_ok":200300,"oog":0},{"params":[2,0.3197,0.999,0.3,2.115,400.0,1.5],"sha256":"8ff0ce1f852e16e8434ba0bcde09d9689ac12a5f709b6129564e0f016e0a3293","n":64,"gen":11,"mean_diff":0.119,"se":0.0589,"max_ok":200300,"oog":0},{"params":[2,0.2979,0.999,0.3172,2.797,400.0,1.956],"sha256":"7eb4590b3308e2961c964f316ce1a0b3f4956eaeef9821f2279100866b67bdfc","n":64,"gen":11,"mean_diff":-0.009564,"se":0.0606,"max_ok":200245,"oog":0},{"params":[2,0.3122,0.999,0.3,1.572,400.0,1.5],"sha256":"6d0c05d221973453cdcd90f2dd668ece7e15f1dfb6612a021def348710be3269","n":64,"gen":11,"mean_diff":-0.003497,"se":0.0656,"max_ok":200300,"oog":0},{"params":[0,0.2219,0.9983,0.3,1.489,325.0,3.384],"sha256":"5561866d577324a0911c22170ad807758d724ce7de4caf0a06ac7e63f606df90","n":64,"gen":11,"mean_diff":-0.8918,"se":0.0804,"max_ok":199827,"oog":0},{"params":[2,0.3226,0.9644,0.4785,1.771,349.2,1.5],"sha256":"3fc7290d1e22ca7d8c379ace7a7ab13f4cd1daeb410e6d8181404d94c500b889","n":64,"gen":11,"mean_diff":0.09667,"se":0.0465,"max_ok":200245,"oog":0},{"params":[2,0.3824,0.999,0.3,2.044,354.9,1.5],"sha256":"3983f34ea0b814c0168f79638ce8ba859915cfd0a3542d5cbfbd16d990ccba7f","n":64,"gen":11,"mean_diff":0.08625,"se":0.0642,"max_ok":200300,"oog":0},{"params":[2,0.2672,0.9719,0.3,0.9738,339.6,2.053],"sha256":"d56a54e5354021b9a511aa8e3f91696ce8f932511f18f68bc5cf58ac7e53c8f8","n":64,"gen":11,"mean_diff":-0.2098,"se":0.0693,"max_ok":200300,"oog":0},{"params":[2,0.2328,0.9931,0.3,2.38,327.1,2.091],"sha256":"b10dffa00602396b5e9c02bec925bf7d42e6a28e88ffb3a23f784da31f588cf3","n":64,"gen":11,"mean_diff":0.1645,"se":0.0493,"max_ok":200300,"oog":0},{"params":[2,0.1717,0.999,1.272,1.31,286.0,2.419],"sha256":"5f6e7be62aa08515ea3a1bceea696b7b7f02e9d7c4c6d0602b03871e6b8c6e08","n":64,"gen":11,"mean_diff":-0.4214,"se":0.085,"max_ok":200245,"oog":0},{"params":[2,0.1996,0.999,0.3778,1.25,365.1,2.487],"sha256":"6ddcb11076f08bd492a29b7c3292d829e9c1c21ba768de5ba8a17f797c921636","n":64,"gen":12,"mean_diff":0.1553,"se":0.0549,"max_ok":200245,"oog":0},{"params":[2,0.272,0.9951,0.3,2.544,400.0,1.5],"sha256":"da41b29e42e1cfb1a0687c911319a5a9a18e94a3025cd286cbd9583deb8c1618","n":64,"gen":12,"mean_diff":0.1202,"se":0.0669,"max_ok":200300,"oog":0},{"params":[2,0.3481,0.9904,0.3,2.807,288.7,2.236],"sha256":"b4293ad43b7f01042125212e0be1c7b1e3375a911dc96bebeca051c70fb4090f","n":64,"gen":12,"mean_diff":0.01469,"se":0.073,"max_ok":200300,"oog":0},{"params":[2,0.2044,0.999,0.3,2.202,400.0,1.5],"sha256":"131260aa80e1ad7d0988d2ce10310f8a2509cf9057d2398d5e15ed28ed6e0309","n":64,"gen":12,"mean_diff":0.1816,"se":0.056,"max_ok":200300,"oog":0},{"params":[2,0.2296,0.999,0.9535,1.324,400.0,1.7],"sha256":"2cbe0b70e4a287a0216d916927d380e93ffcef4cec4eb4b02976ece15ca253c6","n":64,"gen":12,"mean_diff":-0.04,"se":0.0683,"max_ok":200245,"oog":0},{"params":[2,0.2398,0.999,0.5427,1.593,376.7,1.5],"sha256":"c492923b93a5a5695a348111eb5311249ca944deaaad4d90b9dd0415e1952cb9","n":64,"gen":12,"mean_diff":0.173,"se":0.0579,"max_ok":200245,"oog":0},{"params":[2,0.3116,0.9764,1.051,2.794,400.0,2.26],"sha256":"171964c3048145f371a4b1ba6d7797deb2fb47690820ed8864b0657c494c56e2","n":64,"gen":12,"mean_diff":-2.803,"se":0.18,"max_ok":200245,"oog":0},{"params":[2,0.3359,0.9665,1.41,2.124,292.5,1.5],"sha256":"10cac4136588a555aa2957e0eef90d4a847ab2c279c62281d3971d3fd5401d95","n":64,"gen":12,"mean_diff":-2.047,"se":0.162,"max_ok":200245,"oog":0},{"params":[2,0.02075,0.9612,0.6148,0.7627,181.1,3.701],"sha256":"dab20a0af747cbd83c1d62b7d7ce8896ed207737ff0534c428ee25e4348971e3","n":64,"gen":12,"mean_diff":0.02814,"se":0.0171,"max_ok":200245,"oog":0},{"params":[2,0.2703,0.9776,0.7573,1.867,400.0,1.5],"sha256":"ebfc1856c2a08a49a4675d61c604df454751276a70cb8ccab741e450f7e3962c","n":64,"gen":12,"mean_diff":-0.09208,"se":0.0809,"max_ok":200245,"oog":0},{"params":[2,0.4528,0.999,0.3,1.954,283.3,1.5],"sha256":"8a382113bd5c6f06848c1de3994d86119f5fca144059c2b4beef20014e9ae074","n":64,"gen":13,"mean_diff":0.06044,"se":0.0816,"max_ok":200218,"oog":0},{"params":[2,0.05676,0.999,0.3887,1.529,260.1,2.444],"sha256":"f6652b81ccda7c872605f2876e6d2f139f81fcaea2b66d32b813b1d1d69917f4","n":64,"gen":13,"mean_diff":0.04785,"se":0.0286,"max_ok":200163,"oog":0},{"params":[2,0.2024,0.999,1.09,1.491,222.1,1.5],"sha256":"07908d7492a1d04e43ae0b4d8ca54a06ccc9c94a4d479968edb84417155bcc86","n":64,"gen":13,"mean_diff":-0.1564,"se":0.0794,"max_ok":200163,"oog":0},{"params":[2,0.2087,0.9805,0.5738,1.076,326.6,1.5],"sha256":"bdb22275d577d6a1646d0e74c1f96c38819878bb0db79e9d4e380348d27545b6","n":64,"gen":13,"mean_diff":0.09331,"se":0.0569,"max_ok":200163,"oog":0},{"params":[2,0.3193,0.9713,0.8866,2.435,356.9,2.482],"sha256":"909749c954ef31cf788abe5fb7f1f2eb89e4cd8e2c49adc7e98d28f229ae92e6","n":64,"gen":13,"mean_diff":-1.791,"se":0.177,"max_ok":200163,"oog":0},{"params":[2,0.2035,0.9939,1.298,2.206,216.3,2.657],"sha256":"b4aa45e983cedc45d26be41c25bb834d2cddc154686dc393a8b2e5fe4a513f1a","n":64,"gen":13,"mean_diff":-1.518,"se":0.17,"max_ok":200163,"oog":0},{"params":[2,0.2424,0.9506,0.8993,1.486,326.6,2.127],"sha256":"86c46e9501b0a638ea1a6658ee38537af9e1b0481bb5643f4061348addbbea44","n":64,"gen":13,"mean_diff":-0.3406,"se":0.104,"max_ok":200163,"oog":0},{"params":[2,0.4431,0.999,0.3,1.909,367.7,1.5],"sha256":"468a3e00987640b2da0319a3844e6734bd98cc85800a99dcbb0d68e447c1babe","n":64,"gen":13,"mean_diff":0.05728,"se":0.0812,"max_ok":200218,"oog":0},{"params":[2,0.09848,0.962,1.418,1.49,311.4,1.5],"sha256":"8119d03c7773317d36c02e5b1377dffb6ef81ae31b160a393cdf1985006bf598","n":64,"gen":13,"mean_diff":-0.0952,"se":0.0618,"max_ok":200163,"oog":0},{"params":[2,0.058,0.9874,0.3336,1.594,397.3,1.5],"sha256":"cc80dbb9111bb3da3b553ea1cb3795aa2c782366e57c5b3a7fce83a036b5d6dd","n":64,"gen":13,"mean_diff":0.04334,"se":0.0366,"max_ok":200163,"oog":0},{"params":[2,0.3462,0.999,0.3,1.094,400.0,1.5],"sha256":"80321fec271b9a1a70a83f373d95b6235f66bbfee483b8bc8cc9d2086061f3d6","n":64,"gen":14,"mean_diff":-0.3545,"se":0.0875,"max_ok":200219,"oog":0},{"params":[2,0.4227,0.9935,0.3,0.935,400.0,1.5],"sha256":"27f70fc4e1c33e52d95d51b696acee53870555a5b63947919ee62326dd77ddd3","n":64,"gen":14,"mean_diff":-1.099,"se":0.0999,"max_ok":200219,"oog":0},{"params":[2,0.2594,0.999,0.8153,0.5895,370.1,2.15],"sha256":"7aea1866aac5f3e6af02168022b9034d185c3e8445acac8f5228946da15939fa","n":64,"gen":14,"mean_diff":0.05543,"se":0.0488,"max_ok":200174,"oog":0},{"params":[2,0.3759,0.9942,0.3,1.469,311.8,2.274],"sha256":"1ffb96bf54a0bd171e36c400abe2e3eb24b048969660c1fe4f89a0d8f03cb842","n":64,"gen":14,"mean_diff":-0.09602,"se":0.0771,"max_ok":200219,"oog":0},{"params":[2,0.6,0.999,0.3,0.9623,380.2,1.5],"sha256":"fabe08718ce6d8940f5f42cb70e42e2b1d6ad17db27d6b6933bd54186a7c13f9","n":64,"gen":14,"mean_diff":-3.029,"se":0.13,"max_ok":200219,"oog":0},{"params":[2,0.2866,0.999,0.3,1.387,221.2,1.5],"sha256":"c6205aff50608c90ea3eb021074b6b3df99a1a7aeff6a76a768e4b57794ffa0e","n":64,"gen":14,"mean_diff":-0.06863,"se":0.0737,"max_ok":200219,"oog":0},{"params":[2,0.08218,0.999,1.15,0.9243,151.7,1.5],"sha256":"4cd0844caff32aff6915c9a1c6ab7c7f169c6501c2cc9ad3d7049f6ee709e596","n":64,"gen":14,"mean_diff":-0.01929,"se":0.0353,"max_ok":200164,"oog":0},{"params":[2,0.4323,0.999,0.3,1.07,391.6,1.792],"sha256":"83f67dafba7d60f28a43dcd4a73b777c5f99ae8cffc16421fbe0b74b8225cbdf","n":64,"gen":14,"mean_diff":-0.7519,"se":0.0988,"max_ok":200219,"oog":0},{"params":[2,0.4409,0.9838,0.3,1.847,298.4,2.037],"sha256":"8fc635b4c0949a37140bd096d33c7056a8e8df857f97a1d7e58ffb3c5e1bac24","n":64,"gen":14,"mean_diff":-0.07183,"se":0.079,"max_ok":200219,"oog":0},{"params":[2,0.2697,0.999,0.3,1.594,360.7,1.5],"sha256":"0a2199be0d4e0f2572215fcb7f546047e0c6d53fdd5fb1860dc2f05844cd889e","n":64,"gen":14,"mean_diff":-0.0226,"se":0.0706,"max_ok":200219,"oog":0},{"params":[2,0.08288,0.9787,0.4979,1.334,293.7,1.5],"sha256":"b3632e501ca9c6c872dc0b9e5bbb0d5f8cfadb4197d57da1e91814e6c026a886","n":64,"gen":15,"mean_diff":0.08926,"se":0.0322,"max_ok":199342,"oog":0},{"params":[2,0.3064,0.9889,0.3,2.309,400.0,1.5],"sha256":"23c833d7901789bd50ad75dee71d3b4111cf96c656ce60da36583f7c8638c49e","n":64,"gen":15,"mean_diff":0.186,"se":0.0572,"max_ok":199385,"oog":0},{"params":[2,0.1375,0.9873,0.5648,0.9795,267.7,2.832],"sha256":"9e1e1b1cb53486284b8f0889f6332080cf02d0d268bcf858ddb2842199ff9ba3","n":64,"gen":15,"mean_diff":0.103,"se":0.0317,"max_ok":199334,"oog":0},{"params":[2,0.12,0.9971,2.102,1.66,149.7,1.851],"sha256":"e7dac700cdb0e1da7bcb523458c8bb1bddf9914a17889cde0723480d40c9c5c5","n":64,"gen":15,"mean_diff":-0.7099,"se":0.11,"max_ok":199291,"oog":0},{"params":[2,0.1602,0.999,0.9117,0.6074,267.0,2.82],"sha256":"520adc7bc5cb56e0b1678108eb573fa2948e1630492b0cefb9234860279c7c40","n":64,"gen":15,"mean_diff":0.04103,"se":0.042,"max_ok":199318,"oog":0},{"params":[2,0.2586,0.9937,0.8871,0.8083,387.1,1.5],"sha256":"27a1b39a6e4c0186bbf5c0c2b4ac788a52ca5eed1fe6c2ac98cc676f49036214","n":64,"gen":15,"mean_diff":0.1458,"se":0.0431,"max_ok":199330,"oog":0},{"params":[0,0.2624,0.999,0.3,0.6649,284.4,1.791],"sha256":"e3cf2a176f13038a9bae443ca3ae41412c2cc9fd1442bf5da83cf4a0f1f61f34","n":64,"gen":15,"mean_diff":-1.329,"se":0.11,"max_ok":192143,"oog":0},{"params":[2,0.2007,0.999,0.3287,0.687,278.6,1.5],"sha256":"7084aea705c497a1d8869b7898461242b75508ca2c082666d200f0b6f67b59ef","n":64,"gen":15,"mean_diff":-0.1974,"se":0.079,"max_ok":202161,"oog":0},{"params":[2,0.1647,0.999,0.3,0.6794,400.0,1.5],"sha256":"184eb539f761f58f20f2dfa13a4fe26fa4d002ac4dbc737b378dc4f1171ee00b","n":64,"gen":15,"mean_diff":-0.1077,"se":0.0686,"max_ok":199389,"oog":0},{"params":[2,0.2844,0.9921,1.081,0.5,110.7,1.92],"sha256":"ebd20984a49d7154e23d2f32402d6ba4e8a7befda6ea0971fe6eea4f13a4996d","n":64,"gen":15,"mean_diff":0.04149,"se":0.0481,"max_ok":199336,"oog":0}],"recheck":[{"params":[2,0.2337,0.999,0.3,1.818,321.4,1.5],"sha256":"5936e57bcdc32d1e2588c710793cedd3cb4741774e7032c249b0a4648ce049e1","search_mean_diff":0.26369532157194353,"seeds":[704000,704255],"n":256,"mean_diff":0.17752097222745,"se":0.030810427181986767,"retail":{"mean":1.1281837607152354,"se":0.03255857994779014},"arb":{"mean":-0.9506627884877901,"se":0.013768190806721465},"max_ok":201541,"init_max_ok":243099,"oog":0,"halts":0,"valid":true},{"params":[2,0.2826,0.999,0.7581,1.042,125.8,1.794],"sha256":"8572575ce6d09b826da793394a0acd9f242ec135292cadba0ff13fdc368ccd3d","search_mean_diff":0.249961077095052,"seeds":[704000,704255],"n":256,"mean_diff":0.15668707859148023,"se":0.030329516813371492,"retail":{"mean":0.7735777572076454,"se":0.031181296358857802},"arb":{"mean":-0.6168906786161688,"se":0.012636963878581306},"max_ok":201490,"init_max_ok":243099,"oog":0,"halts":0,"valid":true},{"params":[2,0.3424,0.999,0.3664,1.883,196.0,1.5],"sha256":"f24b6ca198b744c380842c3a17964a6dc21f311bb04984b26733afa3fee8eaf2","search_mean_diff":0.24832627120328432,"seeds":[704000,704255],"n":256,"mean_diff":0.19946993457131001,"se":0.03494318231611713,"retail":{"mean":1.515183671112669,"se":0.036675027039438216},"arb":{"mean":-1.3157137365413616,"se":0.01657691107959676},"max_ok":201482,"init_max_ok":243099,"oog":0,"halts":0,"valid":true}],"held_out":{"seeds":{"first":705000,"last":705511,"n":512},"vs_v10":{"n":512,"mean_diff":0.16177968946971466,"se":0.02586702741272507,"worst":[{"seed":705070,"d":-1.3397588188925624},{"seed":705209,"d":-1.3170115645845044},{"seed":705345,"d":-1.2711513006279347},{"seed":705016,"d":-1.2251156140907824},{"seed":705432,"d":-1.1583545331460527}]},"vs_rs1":{"mean_diff":0.08053785508635214,"se":0.021225587576043266,"n":512},"retail_edge_delta":{"mean":1.4925384987239503,"se":0.027270078795202733},"arb_edge_delta":{"mean":-1.3307588092542348,"se":0.011094543254010577},"reconciliation_max_abs":1.1368683772161603e-13,"vs_rs1_retail_edge_delta":{"mean":1.4528469434146918,"se":0.025316574509780292},"vs_rs1_arb_edge_delta":{"mean":-1.3723090883283375,"se":0.012897501583895856},"rs1_vs_v10":{"mean_diff":0.08124183438336252,"se":0.02038297747501062,"retail_edge_delta":{"mean":0.0396915553092585,"se":0.022324347247521966},"arb_edge_delta":{"mean":0.04155027907410269,"se":0.007711833212540307}},"arm_mean_edge":{"frozen":526.3218468635528,"rs1":526.2413090084665,"v10":526.160067174083},"arm_sha256":{"frozen":"f24b6ca198b744c380842c3a17964a6dc21f311bb04984b26733afa3fee8eaf2","rs1":"df2817ba4ec233a456eb45909faa4a706efe0fabd1734a908fe52545f4d07577","v10":"cd9bdb45ab0537ad25c4fd90ca8618898cef6386de3df65f192eaef65fbca245"},"arm_gas":{"frozen":{"max_ok":202468,"init_max_ok":243099,"oog":0,"halts":0,"valid":true},"rs1":{"max_ok":202468,"init_max_ok":243099,"oog":0,"halts":0,"valid":true},"v10":{"max_ok":194858,"init_max_ok":220981,"oog":0,"halts":0,"valid":true}}},"gas":{"max_ok":202468,"init_max_ok":243099,"oog":0,"other_halts":0,"limits_checked":{"afterSwap_max_ok_lt":235000,"init_lt":245000},"search_max_ok_over_all_evals":202161,"search_oog_total":0,"recheck_max_ok":201541},"generator_source":"def generate(base,p):\n kind,mix,decay,scale,sscale,correction=p\n mix=int(mix*1e18);decay=int(decay*1e18)\n s=base.replace('(fastHat, uncertainty) = _posterior','uint256 arbProbability;\\n        (fastHat, uncertainty, arbProbability) = _posterior')\n s=s.replace('internal pure returns (uint256, uint256) {\\n        if (x.mu', 'internal pure returns (uint256, uint256, uint256) {\\n        if (x.mu')\n s=s.replace('wmul(x.v,WAD-k));','wmul(x.v,WAD-k),0);').replace('return (x.mu,x.v);','return (x.mu,x.v,0);').replace('return (mean,variance);','return (mean,variance,prob);')\n insert=f'''\n        if ({mix} > 0) {{\n            uint256 packedFlow = slots[15];\n            uint256 rate = uint80(packedFlow);\n            uint256 count = uint80(packedFlow >> 80);\n            uint256 meanSize = uint80(packedFlow >> 160);\n            if (rate == 0) rate = 400000000000000000;\n            if (meanSize == 0) meanSize = 2000000000000000;\n            if (isNewStep) {{\n                uint256 inst = count / silent;\n                if (inst > 3 * WAD) inst = 3 * WAD;\n                uint256 retention = _powWad({decay}, silent > 64 ? 64 : silent);\n                rate = wmul(rate, retention) + wmul(inst, WAD-retention);\n                count = 0;\n            }}\n            uint256 weight = firstInStep ? WAD-arbProbability : WAD;\n            uint256 correctedWeight = weight;\n            if ({kind} == 2) {{\n                uint256 missing = wmul(feeUsed, {int(correction*1e18)});\n                if (missing > WAD/2) missing = WAD/2;\n                correctedWeight = wdiv(weight, WAD-missing);\n            }}\n            count += correctedWeight;\n            uint256 learning = wmul(WAD-{decay}, weight);\n            meanSize = _blend(meanSize, tradeRatio, learning);\n            slots[15]=rate | (count << 80) | (meanSize << 160);\n            uint256 retailRate = wmul(rate, {int(scale*1e18)});\n            uint256 retailSize = {kind} == 0 ? sizeHat : wmul(meanSize,{int(sscale*1e18)});\n            lambdaHat = _blend(lambdaHat,retailRate,{mix});\n            sizeHat = _blend(sizeHat,retailSize,{mix});\n        }}\n'''\n s=s.replace('        uint256 flowSize =', '        uint256 originalLambda = lambdaHat; uint256 originalSize = sizeHat;\\n'+insert+'        uint256 flowSize =')\n s=s.replace('        uint256 dirDev;', '        lambdaHat = originalLambda; sizeHat = originalSize;\\n        uint256 dirDev;')\n s=s.replace(\"slots[13] = 902500000000;\", \"slots[15] = 400000000000000000 | (uint256(2000000000000000) << 160); slots[13] = 902500000000;\") if mix else s\n return s\n\n# --- cap extension (7th parameter); cap==2.0 reproduces RS1 byte-for-byte ---\ndef generate7(base,p):\n    p=list(p); kind=int(round(p[0])); cap=float(p[6]) if len(p)>6 else 2.0\n    s=generate(base,[kind]+[float(x) for x in p[1:6]])\n    if cap!=2.0:\n        old='if (missing > WAD/2) missing = WAD/2;'\n        assert old in s or float(p[1])==0\n        m=int((1-1/cap)*1e18)\n        s=s.replace(old,f'if (missing > {m}) missing = {m};')\n    return s\n","checks":{"calibration_CH_seeds_0_999_mean_edge":525.5258821780834,"calibration_exact_match":true,"rs1_rebuild":{"sha256":"df2817ba4ec233a456eb45909faa4a706efe0fabd1734a908fe52545f4d07577","match":true},"zero_mix_parity":{"seeds":[706000,706031],"n":32,"zero_mix_sha256":"4412d77f41389d6775b1a4034241e6fcf5a6b24553bfe91580d1050081fa9c86","v10_sha256":"cd9bdb45ab0537ad25c4fd90ca8618898cef6386de3df65f192eaef65fbca245","exact_equal_edges":true,"max_abs_diff":0.0},"v10_sha256_verified":true,"frozen_amm_match_validate":"passed"},"notes":["CMA-ES (own numpy implementation, default_rng(11), pop 10, mu 5, initial sigma 0.15 in [0,1]-normalized box, clipped to bounds) over 7 dims: structure coordinate thresholded at 0.5 to {0,2}, mix 0..0.6, retention 0.9..0.999, rate_scale 0.3..3, size_scale 0.5..3, slope 10..400, cap 1.5..6. Warm start = RS1 params with cap 2 (structure coordinate 0.75); RS1 itself also evaluated in generation 0 (flagged warm_start_rs1, not used in the CMA update).","Each generation used a fresh 64-seed CRN block 700000+64*gen (gens 0..15 cover 700000..701023) with V10 run once per block; fitness = paired mean edge diff vs V10. Invalid (any halt, afterSwap>=235k or init>=245k) would score -1000; none occurred. Search ran 16 generations, 1238 s of measured wall time (stop checked between generations so it overran 1200 s by one generation), 161 evaluations, 20 with structure 0.","The cap enters as missing-flow cap m=1-1/cap (RS1 hard-codes WAD/2, i.e. 2x); cap=2 leaves RS1 text unchanged.","Search drifted to bounds: retention at 0.999 (upper) and rate_scale near 0.3 (lower), cap at 1.5 (lower) for the leading points, so wider bounds could matter. Structure 0 points were consistently worse than structure 2.","Top 3 by search block score rechecked on 704000..704255 vs V10; the third (search 0.248) had the best recheck (0.199 +/- 0.035) and was frozen before any held-out run. Held-out 705000..705511 run once per arm (frozen, RS1, V10).","Held-out: frozen beats V10 by +0.162 (se 0.026) and RS1 by +0.081 (se 0.021). The gain is a trade: retail edge +1.49 vs V10, arb edge -1.33 vs V10 (more arbitrage loss), i.e. higher effective fees. These are hundredths-to-tenths of a point, far below the ~+5 the goal needs over STACK; this is a V10-relative tuning result, not a STACK comparison.","All seeds < 5000000; no confirmation seeds used. No board claim. Method: each arm alone vs VanillaStrategy via amm_sim_rs.run_batch(...,8) in 20-seed chunks with gas_stats_reset/gas_stats per chunk, configs as MatchRunner._build_configs (harness_source of the V10 artifact), se = sd(ddof=1)/sqrt(n), arb/retail split by the V10 harness reconstruction, no seed dropped."]}