=== Board lead (API) - DDS Engine (N) - 2026-08-29 19:27:16 === === Board lead (API) - Neural Network Engine (N) - 2026-08-29 19:27:16 === [19:27:16.697] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:27:16.697] Contract: 1NX, Declarer: W, Dealer: N [19:27:16.697] Auction: P-1H-P-1N-X-P-P-P [19:27:16.697] Deal: N:... ... ... ... [19:27:16.697] Position N is on defender's side - score table shifted by 0 defense tricks won [19:27:16.697] ****************************** [19:27:16.697] FindMatchingDealsWithPlayInternal Input: [19:27:16.697] Position parameter: N [19:27:16.697] Deal from game: N:... ... ... ... [19:27:16.698] Hand for N: A842.86.8643.AQT [19:27:16.698] Hand for E: (null) [19:27:16.698] Hand for S: (null) [19:27:16.698] Hand for W: (null) [19:27:16.698] Cards played: [19:27:16.698] Declarer: W [19:27:16.698] ****************************** [19:27:16.698] [DealFinder] Seed from player N hand: -1808683873 [19:27:16.698] [DealFinder] Auction: P-1H-P-1N-X-P-P-P [19:27:16.699] [DealFinder] Explained bid N P: "Opening Bid, HCP < 12, RuleOf < 21" -> require: (none) [19:27:16.699] [DealFinder] Explained bid E 1H: "Opening Bid, RuleOf >= 21, HCP <= 21, H >= 5, H > S, HeartLongest, HCP >= 12" -> require: (none) [19:27:16.699] [DealFinder] Explained bid S P: "Overcalling 1Ma, Responses to 1Ma, H >= 6, True" -> require: (none) [19:27:16.700] [DealFinder] Explained bid W 1N: "Responses to 1Ma-P, HCP <= 12, H < 4, HCP >= 6" -> require: (none) [19:27:16.700] [DealFinder] Explained bid N X: "Responses to P-1Ma-P-1N, Takeout(H, 10)" -> require: (none) [19:27:16.701] [DealFinder] Explained bid E P: "Responses to 1Ma-P-1N-X, True" -> require: (none) [19:27:16.701] [DealFinder] Explained bid S P: "Responses to 1Ma-P-1N-X-PXX, PenaltyPassout" -> require: (none) [19:27:16.701] [DealFinder] Explained bid W P: "Responses to 1Ma-P-1N-X-P-P, True" -> require: (none) [19:27:16.712] [DealFinder] N Spades: tightened from [0-13] to [2-13] using HandUnderstanding [19:27:16.712] [DealFinder] N Hearts: tightened from [3-13] to [3-2] using HandUnderstanding [19:27:16.712] [DealFinder] N Diamonds: tightened from [0-13] to [2-13] using HandUnderstanding [19:27:16.712] [DealFinder] N Clubs: tightened from [0-13] to [2-13] using HandUnderstanding [19:27:16.712] [DealFinder] N HCP min: tightened from 0 to 10 using HandUnderstanding [19:27:16.712] [DealFinder] N constraints: HCP[10-11], Suits=S[2-13] H[3-2] D[2-13] C[2-13], Trivial=False [19:27:16.712] [DealFinder] Expression (4102 chars): HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (D >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(D) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & S <= 4) & NOT (H >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(H) & LoserLevel >= 3 & S <= 4 & RuleOf < 21) & NOT (S >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4) & NOT (S >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(S) & LoserLevel >= 3 & H <= 4 & RuleOf < 21) & NOT (C >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (H >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (S >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (S >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (C >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (D >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (H >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & S <= 4) & NOT (S >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4) & NOT (C >= 9 & TP >= 32) & NOT (D >= 9 & TP >= 32) & NOT (H >= 9 & TP >= 32) & NOT (S >= 9 & TP >= 32) & NOT (Balanced & HCP >= 33 & HCP <= 34) & NOT (C >= 9 & HCP >= 31 & TP >= 35) & NOT (D >= 9 & HCP >= 31 & TP >= 35) & NOT (H >= 9 & HCP >= 31 & TP >= 35) & NOT (S >= 9 & HCP >= 31 & TP >= 35) & NOT (Balanced & HCP >= 36 & TP >= 35) & NOT (HCP >= 12 & HCP <= 21 &... [19:27:16.712] [Timing] N precompute: 10ms mem d=231KB (total=1361MB) [19:27:16.718] [DealFinder] E Hearts: tightened from [5-13] to [5-6] using HandUnderstanding [19:27:16.718] [DealFinder] E HCP min 15 -> 12: dropped 3 of PRIVATE floor (reasoned from W's own cards, not advertised by the auction). [19:27:16.718] [DealFinder] E HCP max: tightened from 21 to 18 using HandUnderstanding [19:27:16.718] [DealFinder] E constraints: HCP[12-18], Suits=H[5-6], Trivial=False [19:27:16.718] [DealFinder] Expression (3006 chars): ((HCP >= 12 & HCP <= 21 & H >= 5 & H > S & HeartLongest) OR (RuleOf >= 21 & HCP <= 21 & H >= 5 & H > S & HeartLongest)) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (D >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(D) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & S <= 4) & NOT (H >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(H) & LoserLevel >= 3 & S <= 4 & RuleOf < 21) & NOT (S >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4) & NOT (S >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(S) & LoserLevel >= 3 & H <= 4 & RuleOf < 21) & NOT (C >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (H >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (S >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (S >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (C >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (D >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (H >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & S <= 4) & NOT (S >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4) & NOT (HCP >= 12 & HCP <= 21 & S >= 5 & SpadeLongest) & NOT (Balanced & HCP >= 15 & HCP <= 16 & H = 5) & NOT (Balanced & HCP >= 15 & HCP <= 16 & S = 5) & NOT ((Balanced OR SemiBalanced) & HCP >= 15 & HCP <= 17 & S <= 4 & H <= 4) & NOT (HCP >= 18 & (NOT Two Suited OR HCP... [19:27:16.718] [Timing] E precompute: 5ms mem d=181KB (total=1361MB) [19:27:16.722] [DealFinder] S HCP min 3 -> 0: dropped 3 of PRIVATE floor (reasoned from N's own cards, not advertised by the auction). [19:27:16.722] [DealFinder] S HCP max: tightened from 37 to 14 using HandUnderstanding [19:27:16.722] [DealFinder] S constraints: HCP[0-14], Suits=(none), Trivial=False [19:27:16.722] [DealFinder] Expression (2685 chars): (H >= 6 OR True) & NOT (S >= 5 & HCP >= 8 & HCP <= 17) & NOT (HCP >= 6 & HCP <= 11 & S >= 6 & 2 of Top 5 Honors in S & LoserLevel <= 3) & NOT (C >= 5 & HCP >= 10 & HCP <= 17 & LoserLevel >= 2 & 2 of Top 4 Honors in C) & NOT (C >= 6 & HCP >= 12 & HCP <= 17 & LoserLevel >= 2 & 1 of Top 3 Honors in C) & NOT Overcall(C) & NOT (D >= 5 & HCP >= 10 & HCP <= 17 & LoserLevel >= 2 & 2 of Top 4 Honors in D) & NOT (D >= 6 & HCP >= 12 & HCP <= 17 & LoserLevel >= 2 & 1 of Top 3 Honors in D) & NOT Overcall(D) & NOT (C >= 6 & HCP > 7 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in C) & NOT (C >= 7 & HCP >= 3 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3) & NOT (StrongRebiddable(C) & C >= 7 & HCP >= 3 & HCP <= 10 & LoserLevel >= 2) & NOT (C >= 6 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in C & HCP >= 5 & S <= 4) & NOT (D >= 6 & HCP > 7 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in D) & NOT (D >= 7 & HCP >= 3 & HCP <= 10 & TwiceRebiddable(D) & LoserLevel >= 3) & NOT (StrongRebiddable(D) & D >= 7 & HCP >= 3 & HCP <= 10 & LoserLevel >= 2) & NOT (D >= 6 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in D & HCP >= 5 & S <= 4) & NOT (S >= 6 & HCP > 7 & HCP < 12 & LoserLevel >= 3) & NOT (S >= 7 & HCP >= 3 & HCP <= 10 & TwiceRebiddable(S) & LoserLevel >= 3) & NOT (S >= 6 & HCP <= 12 & LoserLevel >= 3 & 2 of Top 4 Honors in S & HCP >= 5) & NOT (C >= 7 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in C & S < 5 & HCP >= 5) & NOT (D >= 7 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in D & S < 5 & HCP >= 5) & NOT (S >= 7 & HCP < 14 & LoserLevel >= 4 & HCP >= 5) & NOT (C >= 8 & HCP < 14 & LoserLevel >= 5 & S < 5 & HCP >= 5) & NOT (D >= 8 & HCP < 14 & LoserLevel >= 5 & S < 5 & HCP >= 5) & NOT (RealSolid(C) & Losers = 1) & NOT (RealSolid(D) & Losers = 1) & NOT (RealSolid(C) & Losers <= 0) & NOT (RealSolid(D) & Losers <= 0) & NOT (RealSolid(S) & Losers = 1) & NOT (RealSolid(S) & Losers <= 0) & NOT (S >= 5 & S <= 6 & (D >= 5 OR C >= 5) & LoserLevel >= 2 & TP >= 10) & NO... [19:27:16.722] [Timing] S precompute: 4ms mem d=148KB (total=1361MB) [19:27:16.725] [DealFinder] W HCP max: tightened from 12 to 9 using HandUnderstanding [19:27:16.725] [DealFinder] W constraints: HCP[6-9], Suits=H[0-3], Trivial=False [19:27:16.725] [DealFinder] Expression (1553 chars): HCP <= 12 & H < 4 & HCP >= 6 & NOT (TP >= 6 & S >= 4 & (SpadeLongest OR HCP < 12)) & NOT (HCP >= 12 & ClubLongest & C > S & (C > D OR C = 4)) & NOT (HCP >= 12 & DiamondLongest & D > S & (D > C OR D >= 5)) & NOT (HCP >= 10 & HCP <= 14 & S <= 1 & H >= 4) & NOT (HCP >= 10 & HCP <= 14 & C <= 1 & H >= 4) & NOT (HCP >= 10 & HCP <= 14 & D <= 1 & H >= 4) & NOT (HCP >= 16 & (Solid(S) OR S >= 7) & Single Suited & Controls >= 4 & H <= 2) & NOT (S >= 5 & H >= 4 & HCP > 17 & Controls >= 4) & NOT (S >= 6 & balish & HCP >= 17 & Controls >= 4 & H <= 2) & NOT (H >= 3 & IsHeartSlamViable & CombinedHeartPointsMin >= HeartSmallSlamPointTarget Subtract 2 & CombinedHcpMin >= 28) & NOT (H >= 3 & HeartSlam) & NOT (H >= 3 & MonsterSlam(H)) & NOT (H >= 3 & MonsterGrandSlam(H)) & NOT (H >= 3 & IsHeartSlamViable & CombinedHeartPointsMin >= HeartGrandSlamPointTarget Subtract 1 & CombinedHeartPointsMin < HeartGrandSlamPointTarget & CombinedHcpMin >= 28 & TP >= 13 & 1 of Top 3 Honors in H & NOT 2 of Top 3 Honors in H) & NOT (H >= 3 & IsNtSlamViable & (CombinedHcpMin >= NtGrandSlamPointTarget OR (CombinedHcpMin >= NtGrandSlamPointTarget Subtract 2 & Aces = 4))) & NOT (((TP >= 6 & HCP < 10 & H >= 3) OR (HCP >= 5 & HCP < 10 & H >= 4))) & NOT (HCP >= 10 & HCP < 12 & C >= 6 & S <= 3 & H <= 2) & NOT (HCP >= 10 & HCP < 12 & D >= 6 & S <= 3 & H <= 2) & NOT (HCP >= 9 & HCP < 12 & H >= 4) & NOT (HCP >= 12 & HCP <= 15 & H = 3 & Balanced) & NOT (HCP <= 8 & H >= 5) & NOT (HCP <= 10 & S >= 7 & HCP >= 6) & NOT (HeartPoints >= 12 & HCP >= 12 & H >= 4) & True & NOT Game in H [19:27:16.725] [Timing] W precompute: 2ms mem d=114KB (total=1362MB) [19:27:16.725] [DealFinder] S HCP min 0 -> 3: restored 3 of PRIVATE floor -- we ARE N, the seat whose own cards produced it. [19:27:16.726] [Timing] Pre-computation (constraints): 27ms mem d=1MB (total=1362MB, gc2=15) [19:27:16.726] [DealFinder] N has contradictory H range [3-2] (min > max) -- skipping strict search, using fallback deals. [19:27:16.726] [DealFinder] Using cardsPlayedCount=0 for visibility calculation [19:27:16.726] [ExtractPartialDeal] Position=N, Declarer=W, CardsPlayed=0 [19:27:16.726] [ExtractPartialDeal] Visible hands: N [19:27:16.726] [ExtractPartialDeal] Input deal: N:... ... ... ... [19:27:16.726] [ExtractPartialDeal] Extracted hands: [19:27:16.726] N: A842.86.8643.AQT (13 cards) [LOCKED] [19:27:16.726] E: ... (0 cards) [19:27:16.726] S: ... (0 cards) [19:27:16.726] W: ... (0 cards) [19:27:16.726] [DecomposePartnership] S: No tightening (CombinedHcpMin=, CombinedHcpMax=, partner N HCP=10) [19:27:16.726] [DealFinder] Bid verification enabled for: E [19:27:16.726] [DealFinder] Propagated E: HCP[12-18], Suits=S[0-9] H[5-6] D[0-9] C[0-10] (2 iterations) [19:27:16.726] [DealFinder] Propagated S: HCP[3-12], Suits=S[0-9] H[2-6] D[0-9] C[0-10] (2 iterations) [19:27:16.726] [DealFinder] Propagated W: HCP[6-9], Suits=S[0-9] H[0-3] D[0-9] C[0-10] (2 iterations) [19:27:16.727] [DealFinder] Known cards per player: N=13, E=0, S=0, W=0 [19:27:16.727] [DealFinder] Locked players: N [19:27:16.727] [DealFinder] Total known cards: 13, Remaining deck: 39, Cards to deal: 39 [19:27:16.727] [DealFinder] Players needing cards: E:13, S:13, W:13 [19:27:16.727] Large number of cards remaining. Using random generation. [19:27:16.727] [DealFinder] Hands to validate (not 13 cards in partial): E, S, W [19:27:16.727] [DealFinder] Strict constraints unsatisfiable -- skipping per-attempt strict verification; collecting constraint-satisfying deals. [19:27:17.178] [DealFinder] Bid verification disabled after 200 calls / 0 passes (pass rate too low) -- accepting constraint-satisfying deals instead. [19:27:17.190] [DealFinder] After 1000 attempts: passedSimple=645, failedVerification=645, matches=0 [19:27:17.205] [Timing] Total: 507ms, Generation: 32ms, Verification: 0ms [19:27:17.205] [Timing] Attempts: 2000, PassedSimpleCheck: 1318, FailedVerification: 1318, Found: 0 [19:27:17.205] [DealFinder] No strict matches found. Using 100 fallback deals (simple constraints only: HCP + suit lengths). [19:27:17.256] Search complete. Returning 100 deals. [19:27:17.256] Found 100 sample deals for simulation. [19:27:17.256] Valid deals for DDS: 100 / 100 [19:27:17.257] [SAMPLE-VAL] No cards played -- skipping validation [19:27:17.257] After sample validation: 100 deals remaining [19:27:17.257] [PLAY-INFER] No observed play -- skipping [19:27:17.257] Using weighted samples: 96/100 have non-uniform weights (range 0.070-1.000) [19:27:17.257] Sample deals (100 total, showing first 20, by weight): [19:27:17.257] [1] (w=1.000) N:A842.86.8643.AQT J5.AQ542.AJ7.984 KQ96.JT93.KQ95.J T73.K7.T2.K76532 [19:27:17.257] [2] (w=1.000) N:A842.86.8643.AQT KQT7.KQT92.97.K8 J5.J543.AKT5.976 963.A7.QJ2.J5432 [19:27:17.257] [3] (w=1.000) N:A842.86.8643.AQT QJT9.A7543.AKT.2 K73.KJT92.QJ7.73 65.Q.952.KJ98654 [19:27:17.257] [4] (w=1.000) N:A842.86.8643.AQT KT6.KQT43.QT9.K7 J75.AJ52.K752.86 Q93.97.AJ.J95432 [19:27:17.257] [5] (w=0.556) N:A842.86.8643.AQT KQJ.AJT975.95.J4 T765.K42.AQ.K852 93.Q3.KJT72.9763 [19:27:17.257] [6] (w=0.556) N:A842.86.8643.AQT Q6.QJ943.AKT.985 KJ95.A75.Q972.73 T73.KT2.J5.KJ642 [19:27:17.257] [7] (w=0.556) N:A842.86.8643.AQT KJ.J7542.A97.K83 9765.AQT.QJ5.754 QT3.K93.KT2.J962 [19:27:17.257] [8] (w=0.556) N:A842.86.8643.AQT 73.AKQT9.T92.K75 Q65.J75.AK5.J942 KJT9.432.QJ7.863 [19:27:17.258] [9] (w=0.556) N:A842.86.8643.AQT K3.AKQJ73.AJT9.7 QT76.T95.Q7.8643 J95.42.K52.KJ952 [19:27:17.258] [10] (w=0.556) N:A842.86.8643.AQT T63.AQ543.A2.KJ7 K5.JT97.KQJT.982 QJ97.K2.975.6543 [19:27:17.258] [11] (w=0.556) N:A842.86.8643.AQT KQ97.QJT94.A.432 65.AK5.J972.KJ98 JT3.732.KQT5.765 [19:27:17.258] [12] (w=0.556) N:A842.86.8643.AQT KQJ7.QT543.AKJ.5 T9.KJ97.Q952.763 653.A2.T7.KJ9842 [19:27:17.258] [13] (w=0.556) N:A842.86.8643.AQT Q6.KQ543.AT.KJ93 KT73.AJT7.975.75 J95.92.KQJ2.8642 [19:27:17.258] [14] (w=0.556) N:A842.86.8643.AQT KT97.KQJ753.A7.3 63.AT42.KT9.J962 QJ5.9.QJ52.K8754 [19:27:17.258] [15] (w=0.556) N:A842.86.8643.AQT KT3.AJ932.KJ92.J J76.QT75.Q5.K642 Q95.K4.AT7.98753 [19:27:17.258] [16] (w=0.556) N:A842.86.8643.AQT 95.AQT752.Q9.KJ4 KT63.KJ4.KJ2.763 QJ7.93.AT75.9852 [19:27:17.258] [17] (w=0.556) N:A842.86.8643.AQT KQ763.AQJ952.K5. J95.K743.QJ.J984 T.T.AT972.K76532 [19:27:17.258] [18] (w=0.385) N:A842.86.8643.AQT KJ.Q97542.AJ2.K9 T9.KJT3.KT95.862 Q7653.A.Q7.J7543 [19:27:17.258] [19] (w=0.385) N:A842.86.8643.AQT J5.AK7543.JT.KJ2 QT.JT92.AQ95.973 K9763.Q.K72.8654 [19:27:17.259] [20] (w=0.385) N:A842.86.8643.AQT J.KQJT97.KQ5.J96 KT7.A542.JT.8532 Q9653.3.A972.K74 [19:27:17.259] ... and 80 more [19:27:17.263] [NN-LEAD] top4 candidates: xS=44 %, xD=41 %, 8H=9 %, AC=2 % [19:27:17.263] [NN-LEAD] adding conventional lead card(s) to the candidate set: S8, S4 [19:27:17.263] [NN-LEAD] restricting opening-lead DDS to 6 candidate(s) (warm context) [19:27:19.001] --- IMP Calculation Input (aggregatedScores: card -> bridge scores per sample) --- [19:27:19.001] S2: [500, -280, 300, -180, 100, 300, -180, -180, -580, -180, 100, 100, -180, -180, -280, 100, -280, 100, -180, -180, -380, -280, -480, 100, -280, -280, -480, -280, -380, 300, -180, 300, -380, -180, -280, 100, 100, 100, -280, 100, 300, -380, -280, -180, -380, -180, -280, 100, -280, -480, 100, -380, -480, 300, -280, 500, 100, 300, -180, -180, 300, 100, -280, 500, 100, -180, 100, -480, -280, 300, 300, -580, 500, 300, 100, -180, -180, 100, -480, 100, 100, -180, -180, 100, -380, 500, 300, -480, -180, 300, -280, 100, -380, 800, 100, 500, -180, 100, 100, -780] [19:27:19.001] D3: [500, -280, 500, 100, 100, 300, -180, -180, -580, -180, 100, 300, -180, -180, -280, 100, -280, 300, -180, -280, -280, -280, -380, -280, -280, -180, -380, -180, -280, -180, 100, 300, -380, -280, -380, 100, 300, 100, -280, 100, 300, -480, -280, -280, -180, -180, -280, -380, -280, -380, 100, -380, -580, 300, -180, -380, 500, -380, -180, 300, -180, 100, -280, -180, 300, -180, 100, -480, -280, 800, 100, -380, -480, -180, -480, -180, -180, -180, -480, -380, -380, -180, 300, 300, -380, 500, 300, -180, 500, -280, 100, 100, -380, -180, 300, 100, -480, 300, 800, -680] [19:27:19.002] H8: [300, -280, 500, -180, 100, 300, -180, -180, -580, -180, 100, 300, -180, -180, -280, 100, -280, 300, -180, -280, -380, -280, -480, -280, -280, -280, -380, -280, -380, -180, -180, 300, -380, -180, -380, 100, 300, 300, -280, 100, 100, -480, -280, -280, -380, -180, -280, -380, -280, -380, 100, -380, -580, 300, -280, 800, 300, -380, -180, -180, -180, 100, -280, -180, 100, -180, 100, -480, -280, 500, 100, -580, -480, -180, -480, 100, -180, -180, -480, -380, -380, -180, 100, 300, -380, 100, 100, -280, 100, -280, -280, -180, -380, -180, 300, 100, -480, 300, 300, -680] [19:27:19.002] CA: [300, -280, 300, 100, 100, 100, -180, -180, -580, -180, 100, -180, -280, -180, -280, -180, -280, 100, -180, -280, -280, -280, -480, -280, -380, -180, -380, -180, -180, 300, -180, 300, -380, -280, -380, 100, 100, 100, -280, 100, 300, -480, -280, -280, -380, -180, -180, -380, -380, 100, 100, -380, -580, 100, -180, 800, 300, 300, -180, -180, -180, 100, -280, 300, 300, -180, 300, -480, -380, 500, 300, -380, 500, -280, 100, 100, -180, -180, -480, 100, -480, -180, 300, 300, -380, 100, -180, -380, 500, -380, 100, -180, -380, 800, 100, 500, -280, 300, 500, 300] [19:27:19.002] S8: [500, -280, 300, -180, 100, 300, -180, -180, -580, -180, 100, 100, -180, -180, -280, 100, -280, -180, -180, -180, -380, -280, -480, 100, -280, -280, -480, -280, -380, 100, -180, 300, -380, -180, -280, 100, 100, 100, -280, 100, 300, -380, -280, -180, -380, -180, -280, 100, -380, -480, 100, -380, -480, 300, -280, 500, 100, 300, -180, -180, 300, 100, -280, 500, 100, -180, 100, -480, -280, 300, 300, -580, 500, 300, 100, -180, -180, 100, -480, 100, 100, -180, -180, 100, -380, 500, 300, -480, -180, 300, -280, 100, -380, 500, 100, 500, -180, 100, 100, -780] [19:27:19.002] S4: [500, -280, 300, -180, 100, 300, -180, -180, -580, -180, 100, 100, -180, -180, -280, 100, -280, 100, -180, -180, -380, -280, -480, 100, -280, -280, -480, -280, -380, 300, -180, 300, -380, -180, -280, 100, 100, 100, -280, 100, 300, -380, -280, -180, -380, -180, -280, 100, -280, -480, 100, -380, -480, 300, -280, 500, 100, 300, -180, -180, 300, 100, -280, 500, 100, -180, 100, -480, -280, 300, 300, -580, 500, 300, 100, -180, -180, 100, -480, 100, 100, -180, -180, 100, -380, 500, 300, -480, -180, 300, -280, 100, -380, 800, 100, 500, -180, 100, 100, -780] [19:27:19.002] --- IMP Calculation Input (aggregatedTricks: card -> trick counts per sample) --- [19:27:19.002] S2: [9, 5, 8, 6, 7, 8, 6, 6, 2, 6, 7, 7, 6, 6, 5, 7, 5, 7, 6, 6, 4, 5, 3, 7, 5, 5, 3, 5, 4, 8, 6, 8, 4, 6, 5, 7, 7, 7, 5, 7, 8, 4, 5, 6, 4, 6, 5, 7, 5, 3, 7, 4, 3, 8, 5, 9, 7, 8, 6, 6, 8, 7, 5, 9, 7, 6, 7, 3, 5, 8, 8, 2, 9, 8, 7, 6, 6, 7, 3, 7, 7, 6, 6, 7, 4, 9, 8, 3, 6, 8, 5, 7, 4, 10, 7, 9, 6, 7, 7, 0] [19:27:19.002] D3: [9, 5, 9, 7, 7, 8, 6, 6, 2, 6, 7, 8, 6, 6, 5, 7, 5, 8, 6, 5, 5, 5, 4, 5, 5, 6, 4, 6, 5, 6, 7, 8, 4, 5, 4, 7, 8, 7, 5, 7, 8, 3, 5, 5, 6, 6, 5, 4, 5, 4, 7, 4, 2, 8, 6, 4, 9, 4, 6, 8, 6, 7, 5, 6, 8, 6, 7, 3, 5, 10, 7, 4, 3, 6, 3, 6, 6, 6, 3, 4, 4, 6, 8, 8, 4, 9, 8, 6, 9, 5, 7, 7, 4, 6, 8, 7, 3, 8, 10, 1] [19:27:19.002] H8: [8, 5, 9, 6, 7, 8, 6, 6, 2, 6, 7, 8, 6, 6, 5, 7, 5, 8, 6, 5, 4, 5, 3, 5, 5, 5, 4, 5, 4, 6, 6, 8, 4, 6, 4, 7, 8, 8, 5, 7, 7, 3, 5, 5, 4, 6, 5, 4, 5, 4, 7, 4, 2, 8, 5, 10, 8, 4, 6, 6, 6, 7, 5, 6, 7, 6, 7, 3, 5, 9, 7, 2, 3, 6, 3, 7, 6, 6, 3, 4, 4, 6, 7, 8, 4, 7, 7, 5, 7, 5, 5, 6, 4, 6, 8, 7, 3, 8, 8, 1] [19:27:19.002] CA: [8, 5, 8, 7, 7, 7, 6, 6, 2, 6, 7, 6, 5, 6, 5, 6, 5, 7, 6, 5, 5, 5, 3, 5, 4, 6, 4, 6, 6, 8, 6, 8, 4, 5, 4, 7, 7, 7, 5, 7, 8, 3, 5, 5, 4, 6, 6, 4, 4, 7, 7, 4, 2, 7, 6, 10, 8, 8, 6, 6, 6, 7, 5, 8, 8, 6, 8, 3, 4, 9, 8, 4, 9, 5, 7, 7, 6, 6, 3, 7, 3, 6, 8, 8, 4, 7, 6, 4, 9, 4, 7, 6, 4, 10, 7, 9, 5, 8, 9, 8] [19:27:19.002] S8: [9, 5, 8, 6, 7, 8, 6, 6, 2, 6, 7, 7, 6, 6, 5, 7, 5, 6, 6, 6, 4, 5, 3, 7, 5, 5, 3, 5, 4, 7, 6, 8, 4, 6, 5, 7, 7, 7, 5, 7, 8, 4, 5, 6, 4, 6, 5, 7, 4, 3, 7, 4, 3, 8, 5, 9, 7, 8, 6, 6, 8, 7, 5, 9, 7, 6, 7, 3, 5, 8, 8, 2, 9, 8, 7, 6, 6, 7, 3, 7, 7, 6, 6, 7, 4, 9, 8, 3, 6, 8, 5, 7, 4, 9, 7, 9, 6, 7, 7, 0] [19:27:19.002] S4: [9, 5, 8, 6, 7, 8, 6, 6, 2, 6, 7, 7, 6, 6, 5, 7, 5, 7, 6, 6, 4, 5, 3, 7, 5, 5, 3, 5, 4, 8, 6, 8, 4, 6, 5, 7, 7, 7, 5, 7, 8, 4, 5, 6, 4, 6, 5, 7, 5, 3, 7, 4, 3, 8, 5, 9, 7, 8, 6, 6, 8, 7, 5, 9, 7, 6, 7, 3, 5, 8, 8, 2, 9, 8, 7, 6, 6, 7, 3, 7, 7, 6, 6, 7, 4, 9, 8, 3, 6, 8, 5, 7, 4, 10, 7, 9, 6, 7, 7, 0] [19:27:19.003] --- IMP Calculation Output (card -> average IMP) --- [19:27:19.003] D3: 0.52 [19:27:19.003] S2: 0.17 [19:27:19.003] S4: 0.17 [19:27:19.003] S8: -0.07 [19:27:19.003] CA: -0.34 [19:27:19.003] H8: -0.45 [19:27:19.003] Opening lead IMP analysis: [19:27:19.004] [LEAD] Engine choice D3 is conventional: xxx+ - lead 4th best vs NT [19:27:19.004] Selected lead: D3 (score: 0.520 IMPs) [19:27:19.004] [stage-timing] opening-lead sample=559ms validate=0ms nn=0ms signal=0ms simgames=2ms dds=1742ms total=2306ms samples=100 [19:27:19.004] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:27:19.004] Finding opening lead... [19:27:19.004] Hand: A842.86.8643.AQT [19:27:19.004] Contract: 1NTX [19:27:19.005] Candidate: xS = 43.5 % [19:27:19.005] Candidate: xD = 40.6 % [19:27:19.005] Candidate: 8H = 8.6 % [19:27:19.005] Candidate: AC = 2.1 % [19:27:19.005] Candidate: xH = 1.9 % [19:27:19.006] Candidate: AS = 1.4 % [19:27:19.006] Candidate: QC = 1.2 % [19:27:19.006] Candidate: 8S = 0.5 % [19:27:19.006] Candidate: 8D = 0.2 % [19:27:19.006] Candidate: TC = 0.0 % [19:27:19.006] Selected lead: S2 (43.5 %) -- 1 tied === Board lead (API) - DDS Engine (N) - 2026-08-29 19:30:57 === === Board lead (API) - Neural Network Engine (N) - 2026-08-29 19:30:57 === [19:30:57.038] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:30:57.038] Contract: 3D, Declarer: W, Dealer: W [19:30:57.038] Auction: 1D-P-1H-2S-P-P-3C-P-3D-P-P-P [19:30:57.038] Deal: N:... ... ... ... [19:30:57.038] Position N is on defender's side - score table shifted by 0 defense tricks won [19:30:57.038] ****************************** [19:30:57.038] FindMatchingDealsWithPlayInternal Input: [19:30:57.039] Position parameter: N [19:30:57.039] Deal from game: N:... ... ... ... [19:30:57.039] Hand for N: 43.JT7.93.A87652 [19:30:57.039] Hand for E: (null) [19:30:57.039] Hand for S: (null) [19:30:57.039] Hand for W: (null) [19:30:57.039] Cards played: [19:30:57.039] Declarer: W [19:30:57.039] ****************************** [19:30:57.039] [DealFinder] Seed from player N hand: -1915510507 [19:30:57.039] [DealFinder] Auction: 1D-P-1H-2S-P-P-3C-P-3D-P-P-P [19:30:57.040] [DealFinder] Explained bid W 1D: "Opening Bid, RuleOf >= 21, HCP <= 21, (DiamondLongest OR ExplicitShape = 4=4=3=2), HCP >= 12" -> require: (none) [19:30:57.041] [DealFinder] Explained bid N P: "Responses to 1Mi, Responses to 1Mi/1Mi-P-1N, True OR D >= 7, True" -> require: (none) [19:30:57.041] [DealFinder] Explained bid E 1H: "Responses to 1D-P, HCP > 4, (H = 4 OR (H >= 5, NOT SpadeLongest)), H >= S, NOT (ClubLongest, C > H, HCP >= 12), H >= 4, DiamondLongest" -> require: (none) [19:30:57.043] [DealFinder] Explained bid S 2S: "Overcalling after 1Mi-P-1H, HCP >= 6, HCP <= 11, S >= 6, 2 of Top 5 Honors in S, LoserLevel <= 3" -> require: (none) [19:30:57.044] [DealFinder] Explained bid W P: "Responses to 1Mi-PX-1H-2S, True" -> require: (none) [19:30:57.044] [DealFinder] Explained bid N P: "Responses to 1Mi-P-1Ma-2oMa-P, Responses to 1Mi-P-1H-2S-P, NOT (CombinedHcpMin >= 25 OR IsGameForcing OR TwoOpenersGame)" -> require: (none) [19:30:57.045] [DealFinder] Explained bid E 3C: "Responses to 1Mi-PX-1H-2S-P-P, Responses to 1Mi-PX-1Ma-2oMa-P-P, C >= 4, HCP >= 10" -> require: (none) [19:30:57.045] [DealFinder] Explained bid S P: "Responses to 1Mi-P-1Ma-2oMa-P-P-3oMi, True" -> require: (none) [19:30:57.046] [DealFinder] Explained bid W 3D: "Responses to 1D-P-1H-2S-P-P-3C-P, D >= 5" -> require: (none) [19:30:57.046] [DealFinder] Explained bid N P: "Responses to 1D-P-1Ma-2oMa-P-P-3C-P-3D, True" -> require: (none) [19:30:57.046] [DealFinder] Explained bid E P: "Responses to 1D-P-1H-2S-P-P-3C-P-3D-PX, True" -> require: (none) [19:30:57.047] [DealFinder] Explained bid S P: "Defensive bidding when our side has passed twice after 1-level opening, True" -> require: (none) [19:30:57.052] [DealFinder] N HCP min 3 -> 0: dropped 3 of PRIVATE floor (reasoned from S's own cards, not advertised by the auction). [19:30:57.053] [DealFinder] N HCP max: tightened from 37 to 17 using HandUnderstanding [19:30:57.053] [DealFinder] N constraints: HCP[0-17], Suits=(none), Trivial=False [19:30:57.053] [DealFinder] Expression (2836 chars): (True OR D >= 7 OR True) & NOT (C >= 6 & HCP >= 10 & HCP <= 17 & LoserLevel >= 2 & BestSuit(C)) & NOT (C >= 5 & HCP >= 10 & HCP <= 17 & LoserLevel >= 2 & BestSuit(C)) & NOT Overcall(H) & NOT (H >= 6 & HCP >= 7 & HeartPoints >= 10 & HCP <= 17 & BestSuit(H) & 1 of Top 3 Honors in H) & NOT Overcall(S) & NOT (S >= 6 & HCP >= 7 & SpadePoints >= 10 & HCP <= 17 & BestSuit(S) & 1 of Top 3 Honors in S) & NOT (HCP >= 6 & HCP <= 11 & H >= 6 & 2 of Top 5 Honors in H & LoserLevel <= 3) & NOT (HCP >= 6 & HCP <= 11 & S >= 6 & 2 of Top 5 Honors in S & LoserLevel <= 3) & NOT (D >= 7 & HCP < 12 & LoserLevel >= 3 & Single Suited) & NOT (C >= 6 & HCP < 12 & LoserLevel >= 3 & Single Suited) & NOT (C >= 6 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in C & IsValidBid(3C) & S <= 5 & H <= 5) & NOT (H >= 7 & LoserLevel >= 3 & HCP <= 13) & NOT (H >= 6 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in H) & NOT (S >= 7 & LoserLevel >= 3 & HCP <= 13) & NOT (S >= 6 & HCP < 12 & LoserLevel >= 3 & 2 of Top 4 Honors in S) & NOT (H >= 7 & HCP <= 10 & Single Suited & LoserLevel >= 4) & NOT (H >= 8 & HCP <= 10 & 1 of Top 5 Honors in H) & NOT (H >= 8 & LoserLevel >= 4 & HCP <= 13) & NOT (H >= 7 & LoserLevel >= 4 & HCP <= 13 & 2 of Top 4 Honors in H) & NOT (H >= 7 & HCP < 14 & LoserLevel >= 4 & S < 5) & NOT (S >= 7 & HCP <= 10 & Single Suited & LoserLevel >= 4) & NOT (S >= 8 & HCP <= 10 & 1 of Top 5 Honors in S) & NOT (S >= 8 & LoserLevel >= 4 & HCP <= 13) & NOT (S >= 7 & LoserLevel >= 4 & HCP <= 13 & 2 of Top 4 Honors in S) & NOT (S >= 7 & HCP < 14 & LoserLevel >= 4 & H < 5) & NOT (C >= 8 & LoserLevel >= 5) & NOT (C >= 8 & HCP < 14 & LoserLevel >= 5 & H < 5 & S < 5) & NOT (RealSolid(C) & Losers = 1) & NOT (RealSolid(C) & Losers <= 0) & NOT (RealSolid(H) & Losers = 1) & NOT (RealSolid(S) & Losers = 1) & NOT (RealSolid(H) & Losers <= 0) & NOT (RealSolid(S) & Losers <= 0) & NOT (S >= 5 & H >= 5 & S <= 6 & H <= 6 & LoserLevel >= 2 & TP >= 8) & NOT (H >= 5 & C >= 5 & LoserLevel >= 3 & TP >= 10) & NOT ... [19:30:57.053] [Timing] N precompute: 5ms mem d=170KB (total=1371MB) [19:30:57.056] [DealFinder] E HCP min 10 -> 7: dropped 3 of PRIVATE floor (reasoned from W's own cards, not advertised by the auction). [19:30:57.056] [DealFinder] E HCP max: tightened from 37 to 12 using HandUnderstanding [19:30:57.056] [DealFinder] E constraints: HCP[10-12], Suits=H[4-13] C[4-13], Trivial=False [19:30:57.056] [DealFinder] Expression (1891 chars): ((HCP > 4 & H >= 4 & DiamondLongest) OR (HCP > 4 & (H = 4 OR (H >= 5 & NOT SpadeLongest)) & H >= S & NOT (ClubLongest & C > H & HCP >= 12))) & NOT (HCP >= 16 & (Solid(H) OR SemiSolid(H) OR H >= 7) & Single Suited & Controls >= 4) & NOT (H >= 5 & D >= 4 & HCP > 17 & Controls >= 4) & NOT (H >= 6 & balish & HCP >= 17 & Controls >= 4) & NOT (HCP >= 16 & (Solid(S) OR SemiSolid(S) OR S >= 7) & Single Suited & Controls >= 4) & NOT (S >= 5 & D >= 4 & HCP > 17 & Controls >= 4) & NOT (S >= 6 & balish & HCP >= 17 & Controls >= 4) & NOT (D >= 4 & HCP >= 10 & H < 4 & S < 4 & (DiamondLongest OR HCP < 12)) & NOT (H <= 1 & TP >= 14 & D >= 5 & S <= 3) & NOT (S <= 1 & TP >= 14 & D >= 5 & H <= 3) & C >= 4 & HCP >= 10 & NOT (D >= 4 & HCP >= 10 & HCP <= 12) & NOT (D >= 4 & HCP >= 10 & HCP <= 12) & NOT (H >= 6 & HCP >= 10 & HCP <= 12) & NOT (H >= 6 & HCP >= 10 & HCP <= 12) & NOT ((CombinedHcpMin >= 25 OR IsGameForcing OR TwoOpenersGame) & NOT Stopper in S) & NOT (HCP >= 13 & Stopper in S) & NOT ((CombinedHcpMin >= 25 OR IsGameForcing OR TwoOpenersGame) & NOT (Comb. Pts >= 32 & CombinedHcpMin >= 28) & stoppersOK) & NOT Game in H & True & NOT (IsDiamondSlamViable & CombinedDiamondPointsMin >= DiamondSmallSlamPointTarget Subtract 2) & NOT ((RealSolid(D) OR IsTrump(D)) & Losers = 1) & NOT ((RealSolid(D) OR IsTrump(D)) & Losers <= 0) & NOT MonsterSlam(D) & NOT MonsterGrandSlam(D) & NOT DiamondSlam & NOT (IsDiamondSlamViable & CombinedDiamondPointsMin >= DiamondGrandSlamPointTarget Subtract 1 & CombinedDiamondPointsMin < DiamondGrandSlamPointTarget & TP >= 13 & 1 of Top 3 Honors in D & NOT 2 of Top 3 Honors in D) & NOT (IsDiamondSlamViable & CombinedDiamondPointsMin >= DiamondSmallSlamPointTarget & CombinedDiamondPointsMin < DiamondGrandSlamPointTarget) & NOT (IsNtSlamViable & (CombinedHcpMin >= NtGrandSlamPointTarget OR (CombinedHcpMin >= NtGrandSlamPointTarget Subtract 2 & Aces = 4))) [19:30:57.056] [Timing] E precompute: 3ms mem d=144KB (total=1372MB) [19:30:57.058] [DealFinder] S constraints: HCP[6-11], Suits=S[6-13], Trivial=False [19:30:57.058] [DealFinder] Expression (1077 chars): HCP >= 6 & HCP <= 11 & S >= 6 & 2 of Top 5 Honors in S & LoserLevel <= 3 & NOT Overcall(S) & NOT (S >= 5 & HCP >= 12 & HCP <= 18 & SpadeLongest) & NOT (S >= 5 & HCP >= 9 & 2 of Top 5 Honors in S & HCP <= 18 & SpadeLongest) & NOT (S >= 5 & HCP >= 12 & HCP <= 18 & S >= C & S >= D) & NOT (C >= 5 & S >= 5 & LoserLevel >= 3 & TP >= 10) & NOT (C >= 5 & S >= 5 & LoserLevel >= 4 & TP >= 10) & NOT (C >= 5 & S >= 5 & LoserLevel >= 5 & TP >= 10) & NOT (D >= 6 & HCP >= 12 & HCP <= 18) & NOT (C >= 6 & HCP >= 12 & HCP <= 18) & NOT (H >= 6 & HCP >= 13 & HCP <= 19 & 3 of Top 5 Honors in H) & NOT DoubleThenOvercall(H) & NOT DoubleThenGame(H) & NOT (D >= 6 & HCP <= 11 & LoserLevel >= 3 & S <= 3) & NOT (C >= 6 & HCP <= 12 & LoserLevel >= 3 & S <= 3) & NOT (S >= 6 & HCP <= 12 & LoserLevel >= 3 & 3 of Top 5 Honors in S) & NOT (S >= 7 & HCP <= 12 & HCP >= 4 & LoserLevel >= 4) & NOT DoubleThenOvercall(S) & NOT DoubleThenOvercall(C) & HCP < 19 & NOT (S >= 4 & C >= 4 & HCP >= 10) & NOT (Stopper in D & Stopper in H & HCP >= 15 & HCP <= 17 & Balanced) & True & NOT OvercallRebid(S) & True [19:30:57.058] [Timing] S precompute: 1ms mem d=96KB (total=1372MB) [19:30:57.064] [DealFinder] W HCP max: tightened from 21 to 16 using HandUnderstanding [19:30:57.064] [DealFinder] W constraints: HCP[12-16], Suits=D[5-13], Trivial=False [19:30:57.064] [DealFinder] Expression (3117 chars): ((HCP >= 12 & HCP <= 21 & (DiamondLongest OR ExplicitShape = 4=4=3=2)) OR (RuleOf >= 21 & HCP <= 21 & (DiamondLongest OR ExplicitShape = 4=4=3=2))) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (D >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(D) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & S <= 4) & NOT (H >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(H) & LoserLevel >= 3 & S <= 4 & RuleOf < 21) & NOT (S >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4) & NOT (S >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(S) & LoserLevel >= 3 & H <= 4 & RuleOf < 21) & NOT (C >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (H >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (S >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (S >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (C >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (D >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (H >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & S <= 4) & NOT (S >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4) & NOT (HCP >= 12 & HCP <= 21 & H >= 5 & H > S & HeartLongest) & NOT (HCP >= 12 & HCP <= 21 & S >= 5 & SpadeLongest) & NOT (Balanced & HCP >= 15 & HCP <= 16 & H = 5) & NOT (Balanced & HCP >= 15 & HCP <= 16 & S = 5) & NOT ((Balanced OR SemiBala... [19:30:57.064] [Timing] W precompute: 6ms mem d=185KB (total=1372MB) [19:30:57.064] [Timing] Pre-computation (constraints): 25ms mem d=-16MB (total=1372MB, gc2=18) [19:30:57.065] [DealFinder] Using cardsPlayedCount=0 for visibility calculation [19:30:57.065] [ExtractPartialDeal] Position=N, Declarer=W, CardsPlayed=0 [19:30:57.065] [ExtractPartialDeal] Visible hands: N [19:30:57.065] [ExtractPartialDeal] Input deal: N:... ... ... ... [19:30:57.065] [ExtractPartialDeal] Extracted hands: [19:30:57.065] N: 43.JT7.93.A87652 (13 cards) [LOCKED] [19:30:57.065] E: ... (0 cards) [19:30:57.065] S: ... (0 cards) [19:30:57.065] W: ... (0 cards) [19:30:57.065] [DecomposePartnership] S: No tightening (CombinedHcpMin=6, CombinedHcpMax=, partner N HCP=5) [19:30:57.065] [DealFinder] Bid verification enabled for: E, W [19:30:57.065] [DealFinder] Propagated E: HCP[10-12], Suits=S[0-5] H[4-10] D[0-6] C[4-7] (2 iterations) [19:30:57.065] [DealFinder] Propagated S: HCP[7-11], Suits=S[6-11] H[0-6] D[0-6] C[0-3] (2 iterations) [19:30:57.065] [DealFinder] Propagated W: HCP[12-16], Suits=S[0-5] H[0-6] D[5-11] C[0-3] (2 iterations) [19:30:57.066] [DealFinder] Known cards per player: N=13, E=0, S=0, W=0 [19:30:57.066] [DealFinder] Locked players: N [19:30:57.066] [DealFinder] Total known cards: 13, Remaining deck: 39, Cards to deal: 39 [19:30:57.066] [DealFinder] Players needing cards: E:13, S:13, W:13 [19:30:57.066] Large number of cards remaining. Using random generation. [19:30:57.066] [DealFinder] Hands to validate (not 13 cards in partial): E, S, W [19:30:57.066] [VerifyHands] FAIL for E: K.KQ953.75.KJT94 (((HCP > 4 & H >= 4 & DiamondLongest) OR (HCP > 4 & (H = 4 OR (H >= 5 & NOT SpadeLongest)) & H >= S & NOT (ClubLongest & C > H & HCP >= 12))) & NOT (HCP >= 16 & (Solid(H) OR SemiSolid(H) OR H >= 7) & S...) [19:30:57.067] [VerifyHands] FAIL for E: AJ5.K65.QT5.QJ93 (((HCP > 4 & H >= 4 & DiamondLongest) OR (HCP > 4 & (H = 4 OR (H >= 5 & NOT SpadeLongest)) & H >= S & NOT (ClubLongest & C > H & HCP >= 12))) & NOT (HCP >= 16 & (Solid(H) OR SemiSolid(H) OR H >= 7) & S...) [19:30:57.067] [VerifyHands] FAIL for S: QJT8752.AQ.T6.T3 (HCP >= 6 & HCP <= 11 & S >= 6 & 2 of Top 5 Honors in S & LoserLevel <= 3 & NOT Overcall(S) & NOT (S >= 5 & HCP >= 12 & HCP <= 18 & SpadeLongest) & NOT (S >= 5 & HCP >= 9 & 2 of Top 5 Honors in S & HCP...) [19:30:57.071] [VerifyHands] FAIL for E: K2.K6432.T5.JT43 (((HCP > 4 & H >= 4 & DiamondLongest) OR (HCP > 4 & (H = 4 OR (H >= 5 & NOT SpadeLongest)) & H >= S & NOT (ClubLongest & C > H & HCP >= 12))) & NOT (HCP >= 16 & (Solid(H) OR SemiSolid(H) OR H >= 7) & S...) [19:30:57.075] [VerifyHands] FAIL for E: 9.AQ9432.AT7.K94 (((HCP > 4 & H >= 4 & DiamondLongest) OR (HCP > 4 & (H = 4 OR (H >= 5 & NOT SpadeLongest)) & H >= S & NOT (ClubLongest & C > H & HCP >= 12))) & NOT (HCP >= 16 & (Solid(H) OR SemiSolid(H) OR H >= 7) & S...) [19:30:57.563] [DealFinder] Bid verification disabled after 200 calls / 0 passes (pass rate too low) -- accepting constraint-satisfying deals instead. [19:30:57.629] [DealFinder] Strict verification given up after 2000 attempts (0 matches) -- collecting constraint-satisfying deals instead. [19:30:57.747] [DealFinder] Early stop at 10000 attempts: 0 strict matches; usable deals ready (fallback=100, lastResort=100, simple=100, any=100). bidVerify calls=200/1200, passes=0 [19:30:57.747] [Timing] Total: 707ms, Generation: 145ms, Verification: 56ms [19:30:57.747] [Timing] Attempts: 10000, PassedSimpleCheck: 4420, FailedVerification: 4420, Found: 0 [19:30:57.747] [DealFinder] No strict matches found. Using 100 fallback deals (simple constraints only: HCP + suit lengths). [19:30:57.795] Search complete. Returning 100 deals. [19:30:57.795] Found 100 sample deals for simulation. [19:30:57.795] Valid deals for DDS: 100 / 100 [19:30:57.795] [SAMPLE-VAL] No cards played -- skipping validation [19:30:57.795] After sample validation: 100 deals remaining [19:30:57.795] [PLAY-INFER] No observed play -- skipping [19:30:57.795] Using weighted samples: 100/100 have non-uniform weights (range 0.041-0.385) [19:30:57.795] Sample deals (100 total, showing first 20, by weight): [19:30:57.795] [1] (w=0.385) N:43.JT7.93.A87652 2.AK642.J8.QT943 QT9865.Q9.KQ72.J AKJ7.853.AT654.K [19:30:57.795] [2] (w=0.385) N:43.JT7.93.A87652 K.AK952.42.QT943 AQT9872.63.AT6.J J65.Q84.KQJ875.K [19:30:57.796] [3] (w=0.385) N:43.JT7.93.A87652 92.Q9854.K8.KQ43 AKQT876.3.652.J9 J5.AK62.AQJT74.T [19:30:57.796] [4] (w=0.385) N:43.JT7.93.A87652 A5.KQ842.76.QJT3 KQJT972.65.J4.94 86.A93.AKQT852.K [19:30:57.796] [5] (w=0.385) N:43.JT7.93.A87652 A9.A9632.Q5.JT93 KQJT72.5.JT72.Q4 865.KQ84.AK864.K [19:30:57.796] [6] (w=0.385) N:43.JT7.93.A87652 7.Q9532.Q6.KQJT9 KQJT85.K6.T752.3 A962.A84.AKJ84.4 [19:30:57.796] [7] (w=0.385) N:43.JT7.93.A87652 K.9853.J76.KQJT3 AQJ8752.Q64.8.94 T96.AK2.AKQT542. [19:30:57.796] [8] (w=0.385) N:43.JT7.93.A87652 Q985.Q964.A.K943 AKJ762.K53.T654. T.A82.KQJ872.QJT [19:30:57.796] [9] (w=0.385) N:43.JT7.93.A87652 K762.K853.8.KQT3 AJT985.Q64.Q62.J Q.A92.AKJT754.94 [19:30:57.796] [10] (w=0.385) N:43.JT7.93.A87652 A62.Q965.A8.T943 KQT987.K43.652.K J5.A82.KQJT74.QJ [19:30:57.796] [11] (w=0.294) N:43.JT7.93.A87652 Q65.KQ54.86.KJT4 KJT982.A963.QT.3 A7.82.AKJ7542.Q9 [19:30:57.796] [12] (w=0.294) N:43.JT7.93.A87652 AJ6.Q9862.5.KQT3 KQT752.5.AJT6.94 98.AK43.KQ8742.J [19:30:57.796] [13] (w=0.294) N:43.JT7.93.A87652 6.KQ543.J86.KJT9 KJT872.A962.T.Q3 AQ95.8.AKQ7542.4 [19:30:57.796] [14] (w=0.294) N:43.JT7.93.A87652 A72.Q832.Q7.KJT3 KJ9865.65.AJ5.Q4 QT.AK94.KT8642.9 [19:30:57.796] [15] (w=0.294) N:43.JT7.93.A87652 K5.Q643.652.KQJ9 QJ9872.AK52.J4.3 AT6.98.AKQT87.T4 [19:30:57.797] [16] (w=0.294) N:43.JT7.93.A87652 K62.KQ86.87.KJ43 AJT975.A532.J5.9 Q8.94.AKQT642.QT [19:30:57.797] [17] (w=0.294) N:43.JT7.93.A87652 75.A8632.85.KQJT AQJT982.94.AT2.3 K6.KQ5.KQJ764.94 [19:30:57.797] [18] (w=0.294) N:43.JT7.93.A87652 J7.AQ642.J6.QJ94 AQT652.K95.87.T3 K98.83.AKQT542.K [19:30:57.797] [19] (w=0.294) N:43.JT7.93.A87652 7.Q532.AT7.KQ943 KQT952.K986.Q4.J AJ86.A4.KJ8652.T [19:30:57.797] [20] (w=0.294) N:43.JT7.93.A87652 K7.KQ864.J7.QJT3 AQJT986.52.T62.9 52.A93.AKQ854.K4 [19:30:57.797] ... and 80 more [19:30:57.801] [NN-LEAD] top4 candidates: JH=32 %, xD=27 %, xS=25 %, AC=9 % [19:30:57.801] [NN-LEAD] adding conventional lead card(s) to the candidate set: D9, S4, C8, C7, C6, C5, C2 [19:30:57.801] [NN-LEAD] restricting opening-lead DDS to 11 candidate(s) (warm context) [19:30:58.927] --- IMP Calculation Input (aggregatedScores: card -> bridge scores per sample) --- [19:30:58.927] HJ: [-130, -110, -150, -190, -130, -150, -150, -130, -130, -130, -110, -110, -150, -150, -110, -110, -110, -130, -150, -170, -150, -130, -150, -170, -170, -130, -190, -150, -110, -130, -170, -130, -170, -150, -130, -130, -170, -170, -170, -150, -170, -130, -110, -150, -130, -110, -130, -190, -110, -150, -150, -130, -130, 200, 100, -170, -130, -150, -150, -190, -130, -170, -190, -170, -190, -150, -170, -150, -130, -110, -190, -130, -150, -130, -150, -170, -110, -190, -150, -170, -170, -150, -150, -190, -190, -130, -170, -170, -150, -150, -150, -190, -170, -170, -170, -130, -150, -150, -130, -150] [19:30:58.927] D3: [-130, -110, -150, -190, -150, -150, -150, -130, -150, -110, -150, -110, -150, -150, -130, -130, -110, -150, -170, -170, -150, -150, -150, -170, -170, -130, -190, -150, -130, -150, -170, -130, -170, -150, -130, -170, -170, -170, -170, -150, -170, -130, -110, -130, -150, -110, -110, -150, -150, -170, -150, -150, -150, -130, 200, -170, -150, -150, -150, -190, -130, -170, -190, -170, -190, -170, -170, -150, -130, -130, -190, -130, -150, -130, -150, -170, -130, -190, -130, -170, -170, -150, -150, -190, -150, -130, -170, -170, -150, -150, -130, -190, -170, -170, -170, -150, -150, -150, -130, -170] [19:30:58.927] S3: [-130, -110, -130, -190, -130, -150, -150, -110, -130, -110, -130, 100, -150, -130, -130, -110, -110, -150, -170, -110, -150, -130, -150, -150, -170, -130, -190, -150, -110, -150, -130, -130, -170, -150, -130, -150, -150, -150, -150, -130, -150, -130, -110, -150, -130, -110, -130, -150, -130, -170, -150, -130, -130, 100, 200, -170, -130, -150, -150, -190, -130, -150, -190, -150, -190, -170, -170, -150, -130, -110, -150, -130, -170, -130, -150, -170, -110, -150, -130, -170, -150, -150, -150, -190, -130, -110, -170, -170, -150, -150, -150, -130, -170, -170, -170, -150, -150, -130, -130, -170] [19:30:58.927] CA: [-130, -110, -130, -170, -130, -150, -190, -110, -130, -130, -130, -110, -150, -150, -110, -110, -110, -150, -170, -130, -150, -130, -190, -170, -190, -110, -190, -150, -110, -150, -130, -130, -150, -130, -130, -150, -150, -170, -150, -150, -170, -130, -110, -150, -130, -110, -130, -170, -130, -150, -150, -130, -130, -130, 200, -190, -150, -150, -130, -170, -130, -170, -170, -150, -190, -170, -170, -150, -130, -110, -150, -110, -190, -130, -130, -190, -110, -150, -130, -170, -150, -130, -170, -190, -130, -110, -170, -170, -150, -150, -150, -130, -170, -170, -190, -150, -170, -150, -110, -170] [19:30:58.927] D9: [-130, -110, -150, -190, -150, -150, -150, -130, -150, -110, -150, -110, -150, -150, -130, -130, -110, -150, -170, -170, -150, -150, -150, -170, -170, -130, -190, -150, -130, -150, -170, -130, -170, -150, -130, -170, -170, -170, -170, -150, -170, -130, -110, -130, -150, -110, -110, -150, -170, -170, -150, -150, -150, -130, 200, -170, -150, -150, -150, -190, -130, -170, -190, -170, -190, -170, -170, -150, -130, -130, -190, -130, -150, -130, -150, -170, -130, -190, -130, -170, -170, -150, -150, -190, -150, -130, -170, -170, -150, -150, -130, -190, -170, -170, -170, -150, -150, -150, -130, -170] [19:30:58.927] S4: [-130, -110, -130, -190, -130, -150, -150, -110, -130, -110, -130, 100, -150, -130, -130, -110, -110, -150, -170, -110, -150, -130, -150, -150, -170, -130, -190, -150, -110, -150, -130, -130, -170, -150, -130, -150, -150, -150, -150, -130, -150, -130, -110, -150, -130, -110, -130, -150, -130, -170, -150, -130, -130, 100, 200, -170, -130, -150, -150, -190, -130, -150, -190, -150, -190, -170, -170, -150, -130, -110, -150, -130, -170, -130, -150, -170, -110, -150, -130, -170, -150, -150, -150, -190, -130, -110, -170, -170, -150, -150, -150, -130, -170, -170, -170, -150, -150, -130, -130, -170] [19:30:58.928] C8: [-150, -130, -170, -190, -150, -170, -170, -110, -150, -110, -130, -110, -170, -150, -130, -150, -150, -150, -170, -170, -150, -150, -150, -170, -170, -110, -190, -130, -150, -170, -190, -150, -170, -150, -150, -150, -170, -170, -150, -150, -170, -150, -130, -170, -150, -150, -130, -150, -130, -170, -170, -170, -150, -150, -130, -170, -170, -170, -130, -190, -150, -170, -170, -170, -190, -170, -190, -150, -170, -130, -190, -110, -190, -130, -150, -190, 100, -190, -150, -170, -190, -130, -170, -190, -150, -150, -190, -190, -150, -170, -170, -190, -190, -170, -170, -150, -150, -150, -110, -170] [19:30:58.928] C7: [-150, -130, -170, -190, -150, -170, -170, -110, -150, -110, -130, -110, -170, -150, -130, -150, -150, -150, -170, -170, -150, -150, -150, -170, -170, -110, -190, -130, -150, -170, -190, -150, -170, -150, -150, -150, -170, -170, -150, -150, -170, -150, -130, -170, -150, -150, -130, -150, -130, -170, -170, -170, -150, -150, -130, -170, -170, -170, -130, -190, -150, -170, -170, -170, -190, -170, -190, -150, -170, -130, -190, -110, -190, -130, -150, -190, 100, -190, -150, -170, -190, -130, -170, -190, -150, -150, -190, -190, -150, -170, -170, -190, -190, -170, -170, -150, -150, -150, -110, -170] [19:30:58.928] C6: [-150, -130, -170, -190, -150, -170, -170, -110, -150, -110, -130, -110, -170, -150, -130, -150, -150, -150, -170, -170, -150, -150, -150, -170, -170, -110, -190, -130, -150, -170, -190, -150, -170, -150, -150, -150, -170, -170, -150, -150, -170, -150, -130, -170, -150, -150, -130, -150, -130, -170, -170, -170, -150, -150, -130, -170, -170, -170, -130, -190, -150, -170, -170, -170, -190, -170, -190, -150, -170, -130, -190, -110, -190, -130, -150, -190, 100, -190, -150, -170, -190, -130, -170, -190, -150, -150, -190, -190, -150, -170, -170, -190, -190, -170, -170, -150, -150, -150, -110, -170] [19:30:58.928] C5: [-150, -130, -170, -190, -150, -170, -170, -110, -150, -110, -130, -110, -170, -150, -130, -150, -150, -150, -170, -170, -150, -150, -150, -170, -170, -110, -190, -130, -150, -170, -190, -150, -170, -150, -150, -150, -170, -170, -150, -150, -170, -150, -130, -170, -150, -150, -130, -150, -130, -170, -170, -170, -150, -150, -130, -170, -170, -170, -130, -190, -150, -170, -170, -170, -190, -170, -190, -150, -170, -130, -190, -110, -190, -130, -150, -190, 100, -190, -150, -170, -190, -130, -170, -190, -150, -150, -190, -190, -150, -170, -170, -190, -190, -170, -170, -150, -150, -150, -110, -170] [19:30:58.928] C2: [-150, -130, -170, -190, -150, -170, -170, -110, -150, -110, -130, -110, -170, -150, -130, -150, -150, -150, -170, -170, -150, -150, -150, -170, -170, -110, -190, -130, -150, -170, -190, -150, -170, -150, -150, -150, -170, -170, -150, -150, -170, -150, -130, -170, -150, -150, -130, -150, -130, -170, -170, -170, -150, -150, -130, -170, -170, -170, -130, -190, -150, -170, -170, -170, -190, -170, -190, -150, -170, -130, -190, -110, -190, -130, -150, -190, 100, -190, -150, -170, -190, -130, -170, -190, -150, -150, -190, -190, -150, -170, -170, -190, -190, -170, -170, -150, -150, -150, -110, -170] [19:30:58.928] --- IMP Calculation Input (aggregatedTricks: card -> trick counts per sample) --- [19:30:58.928] HJ: [3, 4, 2, 0, 3, 2, 2, 3, 3, 3, 4, 4, 2, 2, 4, 4, 4, 3, 2, 1, 2, 3, 2, 1, 1, 3, 0, 2, 4, 3, 1, 3, 1, 2, 3, 3, 1, 1, 1, 2, 1, 3, 4, 2, 3, 4, 3, 0, 4, 2, 2, 3, 3, 6, 5, 1, 3, 2, 2, 0, 3, 1, 0, 1, 0, 2, 1, 2, 3, 4, 0, 3, 2, 3, 2, 1, 4, 0, 2, 1, 1, 2, 2, 0, 0, 3, 1, 1, 2, 2, 2, 0, 1, 1, 1, 3, 2, 2, 3, 2] [19:30:58.928] D3: [3, 4, 2, 0, 2, 2, 2, 3, 2, 4, 2, 4, 2, 2, 3, 3, 4, 2, 1, 1, 2, 2, 2, 1, 1, 3, 0, 2, 3, 2, 1, 3, 1, 2, 3, 1, 1, 1, 1, 2, 1, 3, 4, 3, 2, 4, 4, 2, 2, 1, 2, 2, 2, 3, 6, 1, 2, 2, 2, 0, 3, 1, 0, 1, 0, 1, 1, 2, 3, 3, 0, 3, 2, 3, 2, 1, 3, 0, 3, 1, 1, 2, 2, 0, 2, 3, 1, 1, 2, 2, 3, 0, 1, 1, 1, 2, 2, 2, 3, 1] [19:30:58.928] S3: [3, 4, 3, 0, 3, 2, 2, 4, 3, 4, 3, 5, 2, 3, 3, 4, 4, 2, 1, 4, 2, 3, 2, 2, 1, 3, 0, 2, 4, 2, 3, 3, 1, 2, 3, 2, 2, 2, 2, 3, 2, 3, 4, 2, 3, 4, 3, 2, 3, 1, 2, 3, 3, 5, 6, 1, 3, 2, 2, 0, 3, 2, 0, 2, 0, 1, 1, 2, 3, 4, 2, 3, 1, 3, 2, 1, 4, 2, 3, 1, 2, 2, 2, 0, 3, 4, 1, 1, 2, 2, 2, 3, 1, 1, 1, 2, 2, 3, 3, 1] [19:30:58.928] CA: [3, 4, 3, 1, 3, 2, 0, 4, 3, 3, 3, 4, 2, 2, 4, 4, 4, 2, 1, 3, 2, 3, 0, 1, 0, 4, 0, 2, 4, 2, 3, 3, 2, 3, 3, 2, 2, 1, 2, 2, 1, 3, 4, 2, 3, 4, 3, 1, 3, 2, 2, 3, 3, 3, 6, 0, 2, 2, 3, 1, 3, 1, 1, 2, 0, 1, 1, 2, 3, 4, 2, 4, 0, 3, 3, 0, 4, 2, 3, 1, 2, 3, 1, 0, 3, 4, 1, 1, 2, 2, 2, 3, 1, 1, 0, 2, 1, 2, 4, 1] [19:30:58.928] D9: [3, 4, 2, 0, 2, 2, 2, 3, 2, 4, 2, 4, 2, 2, 3, 3, 4, 2, 1, 1, 2, 2, 2, 1, 1, 3, 0, 2, 3, 2, 1, 3, 1, 2, 3, 1, 1, 1, 1, 2, 1, 3, 4, 3, 2, 4, 4, 2, 1, 1, 2, 2, 2, 3, 6, 1, 2, 2, 2, 0, 3, 1, 0, 1, 0, 1, 1, 2, 3, 3, 0, 3, 2, 3, 2, 1, 3, 0, 3, 1, 1, 2, 2, 0, 2, 3, 1, 1, 2, 2, 3, 0, 1, 1, 1, 2, 2, 2, 3, 1] [19:30:58.928] S4: [3, 4, 3, 0, 3, 2, 2, 4, 3, 4, 3, 5, 2, 3, 3, 4, 4, 2, 1, 4, 2, 3, 2, 2, 1, 3, 0, 2, 4, 2, 3, 3, 1, 2, 3, 2, 2, 2, 2, 3, 2, 3, 4, 2, 3, 4, 3, 2, 3, 1, 2, 3, 3, 5, 6, 1, 3, 2, 2, 0, 3, 2, 0, 2, 0, 1, 1, 2, 3, 4, 2, 3, 1, 3, 2, 1, 4, 2, 3, 1, 2, 2, 2, 0, 3, 4, 1, 1, 2, 2, 2, 3, 1, 1, 1, 2, 2, 3, 3, 1] [19:30:58.928] C8: [2, 3, 1, 0, 2, 1, 1, 4, 2, 4, 3, 4, 1, 2, 3, 2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 4, 0, 3, 2, 1, 0, 2, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 3, 1, 2, 2, 3, 2, 3, 1, 1, 1, 2, 2, 3, 1, 1, 1, 3, 0, 2, 1, 1, 1, 0, 1, 0, 2, 1, 3, 0, 4, 0, 3, 2, 0, 5, 0, 2, 1, 0, 3, 1, 0, 2, 2, 0, 0, 2, 1, 1, 0, 0, 1, 1, 2, 2, 2, 4, 1] [19:30:58.928] C7: [2, 3, 1, 0, 2, 1, 1, 4, 2, 4, 3, 4, 1, 2, 3, 2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 4, 0, 3, 2, 1, 0, 2, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 3, 1, 2, 2, 3, 2, 3, 1, 1, 1, 2, 2, 3, 1, 1, 1, 3, 0, 2, 1, 1, 1, 0, 1, 0, 2, 1, 3, 0, 4, 0, 3, 2, 0, 5, 0, 2, 1, 0, 3, 1, 0, 2, 2, 0, 0, 2, 1, 1, 0, 0, 1, 1, 2, 2, 2, 4, 1] [19:30:58.928] C6: [2, 3, 1, 0, 2, 1, 1, 4, 2, 4, 3, 4, 1, 2, 3, 2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 4, 0, 3, 2, 1, 0, 2, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 3, 1, 2, 2, 3, 2, 3, 1, 1, 1, 2, 2, 3, 1, 1, 1, 3, 0, 2, 1, 1, 1, 0, 1, 0, 2, 1, 3, 0, 4, 0, 3, 2, 0, 5, 0, 2, 1, 0, 3, 1, 0, 2, 2, 0, 0, 2, 1, 1, 0, 0, 1, 1, 2, 2, 2, 4, 1] [19:30:58.929] C5: [2, 3, 1, 0, 2, 1, 1, 4, 2, 4, 3, 4, 1, 2, 3, 2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 4, 0, 3, 2, 1, 0, 2, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 3, 1, 2, 2, 3, 2, 3, 1, 1, 1, 2, 2, 3, 1, 1, 1, 3, 0, 2, 1, 1, 1, 0, 1, 0, 2, 1, 3, 0, 4, 0, 3, 2, 0, 5, 0, 2, 1, 0, 3, 1, 0, 2, 2, 0, 0, 2, 1, 1, 0, 0, 1, 1, 2, 2, 2, 4, 1] [19:30:58.929] C2: [2, 3, 1, 0, 2, 1, 1, 4, 2, 4, 3, 4, 1, 2, 3, 2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 4, 0, 3, 2, 1, 0, 2, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 3, 1, 2, 2, 3, 2, 3, 1, 1, 1, 2, 2, 3, 1, 1, 1, 3, 0, 2, 1, 1, 1, 0, 1, 0, 2, 1, 3, 0, 4, 0, 3, 2, 0, 5, 0, 2, 1, 0, 3, 1, 0, 2, 2, 0, 0, 2, 1, 1, 0, 0, 1, 1, 2, 2, 2, 4, 1] [19:30:58.930] --- IMP Calculation Output (card -> average IMP) --- [19:30:58.930] S3: 0.50 [19:30:58.930] S4: 0.50 [19:30:58.930] HJ: 0.28 [19:30:58.930] CA: 0.28 [19:30:58.930] D3: 0.01 [19:30:58.930] D9: 0.01 [19:30:58.931] C8: -0.31 [19:30:58.931] C7: -0.31 [19:30:58.931] C6: -0.31 [19:30:58.931] C5: -0.31 [19:30:58.931] C2: -0.31 [19:30:58.931] Opening lead IMP analysis: [19:30:58.931] [LEAD] Partner bid Spades -- adding reward +0.500 to all cards in that suit [19:30:58.932] [LEAD] Engine choice S3 is NOT conventional (rule: xx doubleton - lead high vs suit) [19:30:58.932] [LEAD] Conventional options: 4 [19:30:58.938] [LEAD] S3 vs S4 head-to-head: 0.000 (field-relative would have been 0.000) [19:30:58.938] [LEAD] Overriding to conventional S4 (score diff: 0.000 <= 0.500) [19:30:58.938] Selected lead: S4 (score: 1.000 IMPs) [19:30:58.938] [stage-timing] opening-lead sample=756ms validate=0ms nn=0ms signal=0ms simgames=3ms dds=1138ms total=1900ms samples=100 [19:30:58.939] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:30:58.939] Finding opening lead... [19:30:58.939] Hand: 43.JT7.93.A87652 [19:30:58.939] Contract: 3D [19:30:58.939] Candidate: JH = 32.3 % [19:30:58.940] Candidate: xD = 27.5 % [19:30:58.940] Candidate: xS = 25.2 % [19:30:58.940] Candidate: AC = 8.7 % [19:30:58.940] Candidate: xC = 3.1 % [19:30:58.940] Candidate: 9D = 2.6 % [19:30:58.940] Candidate: xH = 0.5 % [19:30:58.940] Candidate: 8C = 0.1 % [19:30:58.940] Candidate: TH = 0.0 % [19:30:58.940] Selected lead: HJ (32.3 %) -- 1 tied === Board lead (API) - DDS Engine (N) - 2026-08-29 19:43:54 === === Board lead (API) - Neural Network Engine (N) - 2026-08-29 19:43:54 === [19:43:54.443] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:43:54.443] Contract: 3N, Declarer: W, Dealer: W [19:43:54.443] Auction: 1N-P-2S-X-2N-P-3H-P-3N-P-P-P [19:43:54.443] Deal: N:... ... ... ... [19:43:54.443] Position N is on defender's side - score table shifted by 0 defense tricks won [19:43:54.443] ****************************** [19:43:54.443] FindMatchingDealsWithPlayInternal Input: [19:43:54.443] Position parameter: N [19:43:54.443] Deal from game: N:... ... ... ... [19:43:54.443] Hand for N: 4.JT642.T83.7543 [19:43:54.443] Hand for E: (null) [19:43:54.443] Hand for S: (null) [19:43:54.443] Hand for W: (null) [19:43:54.443] Cards played: [19:43:54.443] Declarer: W [19:43:54.443] ****************************** [19:43:54.444] [DealFinder] Seed from player N hand: -348122668 [19:43:54.444] [DealFinder] Auction: 1N-P-2S-X-2N-P-3H-P-3N-P-P-P [19:43:54.444] [DealFinder] Explained bid W 1N: "Opening Bid, Balanced, HCP >= 15, HCP <= 16, H = 5, S = 5, (Balanced OR SemiBalanced), HCP <= 17, S <= 4, H <= 4" -> require: (none) [19:43:54.445] [DealFinder] Explained bid N P: "Responses to 1N, True" -> require: (none) [19:43:54.445] [DealFinder] Explained bid E 2S: "Artificial - MinorStayman, C >= 5, D >= 4, H <= 3, S <= 3, TP >= 10, D >= 5, C >= 4, TP >= 15" -> require: (none) [19:43:54.446] [DealFinder] Explained bid S X: "[Inferred], SuitShowing(S)" -> require: (none) [19:43:54.446] [DealFinder] Explained bid W 2N: "Responses to 2S-PX (MinorStayman after 1V-P-1W-1N-PX-2S), min, D <= 3, C <= 3" -> require: (none) [19:43:54.446] [DealFinder] Explained bid N P: "Responses to 1N-P-2Ma-X-2N, True" -> require: (none) [19:43:54.447] [DealFinder] Explained bid E 3H: "Artificial - Responses to 2S-PX-2N-P (MinorStayman after 1V-P-1W-1N-PX-2S), H <= 1" -> require: (none) [19:43:54.447] [DealFinder] Explained bid S P: "Last resort - defensive, Sensible" -> require: (none) [19:43:54.448] [DealFinder] Explained bid W 3N: "Responses to 2S-PX-2N-P-3Ma-P (MinorStayman after 1V-P-1W-1N-PX-2S), Stopper in H" -> require: (none) [19:43:54.448] [DealFinder] Explained bid N P: "Defensive bidding when our side has passed twice after 1-level opening, True" -> require: (none) [19:43:54.448] [DealFinder] Explained bid E P: "Responses to 2S-PX-2N-P-3Ma-P-3N-P (MinorStayman after 1V-P-1W-1N-PX-2S), NOT (Comb. Pts >= 32, CombinedHcpMin >= 28)" -> require: (none) [19:43:54.449] [DealFinder] Explained bid S P: "Defensive bidding when our side has passed twice after 1-level opening, True" -> require: (none) [19:43:54.451] [DealFinder] N HCP min 3 -> 0: dropped 3 of PRIVATE floor (reasoned from S's own cards, not advertised by the auction). [19:43:54.451] [DealFinder] N HCP max: tightened from 37 to 16 using HandUnderstanding [19:43:54.451] [DealFinder] N constraints: HCP[0-16], Suits=(none), Trivial=False [19:43:54.451] [DealFinder] Expression (930 chars): True & NOT (Rebiddable(C) & C >= 7 & ClubPoints >= 14 & ClubPoints <= 17) & NOT (Rebiddable(D) & D >= 7 & DiamondPoints >= 14 & DiamondPoints <= 17) & NOT (Rebiddable(H) & H >= 7 & HeartPoints >= 14 & HeartPoints <= 17) & NOT (Rebiddable(S) & S >= 7 & SpadePoints >= 14 & SpadePoints <= 17) & NOT (Rebiddable(C) & C >= 7 & HCP <= 10 & LoserLevel >= 4) & NOT (Rebiddable(D) & D >= 7 & HCP <= 10 & LoserLevel >= 4) & NOT (Rebiddable(H) & H >= 7 & HCP <= 10 & LoserLevel >= 4) & NOT (Rebiddable(S) & S >= 7 & HCP <= 10 & LoserLevel >= 4) & NOT (TP >= 10 & LengthLongestSuit >= 6 & Single Suited & HCP >= 10) & NOT (TP >= 10 & LengthLongestSuit >= 7 & HCP >= 10) & NOT (H >= 5 & S >= 5 & HCP >= 10) & NOT (H >= 5 & (C >= 4 OR D >= 4) & LoserLevel >= 2 & TP >= 12 & HCP >= 10) & NOT (S >= 5 & (C >= 4 OR D >= 4) & LoserLevel >= 2 & TP >= 12 & HCP >= 10) & NOT (C >= 5 & D >= 5 & TP >= 15 & HCP >= 10) & True & NOT Competitive(S) & True [19:43:54.451] [Timing] N precompute: 2ms mem d=88KB (total=1466MB) [19:43:54.455] [DealFinder] E HCP min: tightened from 0 to 8 using HandUnderstanding [19:43:54.455] [DealFinder] E HCP max: tightened from 37 to 17 using HandUnderstanding [19:43:54.455] [DealFinder] E constraints: HCP[8-17], Suits=S[0-3] H[0-1] D[4-13] C[4-13], Trivial=False [19:43:54.455] [DealFinder] Expression (2478 chars): ((C >= 5 & D >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (D >= 5 & C >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (C >= 4 & D >= 4 & H <= 3 & S <= 3 & TP >= 15)) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSlamPointTarget & CombinedHcpMin < NtGrandSlamPointTarget & CombinedHcpMax >= NtGrandSlamPointTarget) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSlamPointTarget & CombinedHcpMin < NtGrandSlamPointTarget) & NOT (IsNtSlamViable & (CombinedHcpMin >= NtGrandSlamPointTarget OR (CombinedHcpMin >= NtGrandSlamPointTarget Subtract 2 & Aces = 4))) & NOT (HCP >= 8 & HCP <= 10 & C >= 6 & (IsGoodSuit(C) OR 3 of Top 5 Honors in C)) & NOT (HCP >= 8 & HCP <= 10 & D >= 6 & (IsGoodSuit(D) OR 3 of Top 5 Honors in D)) & NOT (H >= 5 & S >= 5 & HCP < 9 & HCP > 6) & H < 5 & S < 5 & NOT (H >= 6 & ((NOT (Comb. Pts >= 32 & CombinedHcpMin >= 28) & Game in H) OR (Comb. Pts >= 32 & CombinedHcpMin >= 28))) & NOT (S >= 6 & ((NOT (Comb. Pts >= 32 & CombinedHcpMin >= 28) & Game in S) OR (Comb. Pts >= 32 & CombinedHcpMin >= 28))) & NOT (HCP >= 10 & S >= 4 & H >= 4 & H Add S >= 9) & NOT (D <= 1 & H = 4 & S = 4 & CombinedHcpMin >= 23 & C >= 4) & NOT (H <= 1 & S = 4 & CombinedHcpMin >= 23 & C >= 3 & D >= 3) & NOT (S <= 1 & H = 4 & CombinedHcpMin >= 23 & C >= 3 & D >= 3) & H <= 1 & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSlamPointTarget Subtract 2 & CombinedHcpMin < NtSmallSlamPointTarget) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSlamPointTarget & CombinedHcpMin < NtGrandSlamPointTarget & CombinedHcpMax >= NtGrandSlamPointTarget) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSlamPointTarget & CombinedHcpMin < NtGrandSlamPointTarget) & NOT (IsNtSlamViable & (CombinedHcpMin >= NtGrandSlamPointTarget OR (CombinedHcpMin >= NtGrandSlamPointTarget Subtract 2 & Aces = 4))) & NOT Solid(C) & NOT Solid(D) & NOT (Comb. Pts >= 32 & CombinedHcpMin >= 28) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSlamPointTarget Subtract 2 & CombinedHcpMin < NtSmallSlamPointTarget) & NOT (IsNtSlamViable & Com... [19:43:54.455] [Timing] E precompute: 4ms mem d=168KB (total=1466MB) [19:43:54.456] [DealFinder] S Spades: tightened from [0-13] to [5-13] using HandUnderstanding [19:43:54.456] [DealFinder] S HCP min: tightened from 0 to 8 using HandUnderstanding [19:43:54.456] [DealFinder] S HCP max: tightened from 37 to 29 using HandUnderstanding [19:43:54.456] [DealFinder] S constraints: HCP[8-29], Suits=S[5-13], Trivial=False [19:43:54.456] [DealFinder] Expression (32 chars): SuitShowing(S) & Sensible & True [19:43:54.456] [Timing] S precompute: 0ms mem d=56KB (total=1466MB) [19:43:54.458] [DealFinder] W Spades: tightened from [0-13] to [2-5] using HandUnderstanding [19:43:54.458] [DealFinder] W Hearts: tightened from [0-13] to [2-5] using HandUnderstanding [19:43:54.458] [DealFinder] W Diamonds: tightened from [0-3] to [2-3] using HandUnderstanding [19:43:54.458] [DealFinder] W Clubs: tightened from [0-3] to [2-3] using HandUnderstanding [19:43:54.458] [DealFinder] W HCP max: tightened from 17 to 16 using HandUnderstanding [19:43:54.458] [DealFinder] W constraints: HCP[15-16], Suits=S[2-5] H[2-5] D[2-3] C[2-3], Trivial=False [19:43:54.458] [DealFinder] Expression (721 chars): (((Balanced OR SemiBalanced) & HCP >= 15 & HCP <= 17 & S <= 4 & H <= 4) OR (Balanced & HCP >= 15 & HCP <= 16 & H = 5) OR (Balanced & HCP >= 15 & HCP <= 16 & S = 5)) & NOT (H >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (H >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (S >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (S >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (H >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & S <= 4) & NOT (S >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4) & NOT (balish & HCP >= 20 & HCP <= 21) & NOT (balish & HCP >= 25 & HCP <= 27 & H <= 4 & S <= 4) & min & D <= 3 & C <= 3 & C < 4 & D < 4 & C < 5 & D < 5 & Stopper in H [19:43:54.458] [Timing] W precompute: 2ms mem d=128KB (total=1466MB) [19:43:54.458] [Timing] Pre-computation (constraints): 14ms mem d=2MB (total=1466MB, gc2=18) [19:43:54.458] [DealFinder] Using cardsPlayedCount=0 for visibility calculation [19:43:54.458] [ExtractPartialDeal] Position=N, Declarer=W, CardsPlayed=0 [19:43:54.458] [ExtractPartialDeal] Visible hands: N [19:43:54.459] [ExtractPartialDeal] Input deal: N:... ... ... ... [19:43:54.459] [ExtractPartialDeal] Extracted hands: [19:43:54.459] N: 4.JT642.T83.7543 (13 cards) [LOCKED] [19:43:54.459] E: ... (0 cards) [19:43:54.459] S: ... (0 cards) [19:43:54.459] W: ... (0 cards) [19:43:54.459] [DecomposePartnership] S: No tightening (CombinedHcpMin=8, CombinedHcpMax=, partner N HCP=1) [19:43:54.459] [DealFinder] Bid verification enabled for: W [19:43:54.459] [DealFinder] Propagated E: HCP[8-16], Suits=S[0-3] H[0-1] D[4-8] C[4-7] (2 iterations) [19:43:54.459] [DealFinder] Propagated S: HCP[8-16], Suits=S[5-10] H[2-6] D[0-4] C[0-3] (2 iterations) [19:43:54.459] [DealFinder] Propagated W: HCP[15-16], Suits=S[2-5] H[2-5] D[2-3] C[2-3] (2 iterations) [19:43:54.460] [DealFinder] Known cards per player: N=13, E=0, S=0, W=0 [19:43:54.460] [DealFinder] Locked players: N [19:43:54.460] [DealFinder] Total known cards: 13, Remaining deck: 39, Cards to deal: 39 [19:43:54.460] [DealFinder] Players needing cards: E:13, S:13, W:13 [19:43:54.460] Large number of cards remaining. Using random generation. [19:43:54.460] [DealFinder] Hands to validate (not 13 cards in partial): E, S, W [19:43:54.460] [VerifyHands] FAIL for E: J5.97.AJ95.AT962 (((C >= 5 & D >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (D >= 5 & C >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (C >= 4 & D >= 4 & H <= 3 & S <= 3 & TP >= 15)) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSl...) [19:43:54.461] [VerifyHands] FAIL for E: AJ82..J7542.AKT9 (((C >= 5 & D >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (D >= 5 & C >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (C >= 4 & D >= 4 & H <= 3 & S <= 3 & TP >= 15)) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSl...) [19:43:54.461] [VerifyHands] FAIL for E: K9.9.AQJ96.AQT62 (((C >= 5 & D >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (D >= 5 & C >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (C >= 4 & D >= 4 & H <= 3 & S <= 3 & TP >= 15)) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSl...) [19:43:54.464] [VerifyHands] FAIL for S: AJ9832.A875.52.9 (SuitShowing(S) & Sensible & True) [19:43:54.470] [VerifyHands] FAIL for E: 96.K7.KJ72.KJT96 (((C >= 5 & D >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (D >= 5 & C >= 4 & H <= 3 & S <= 3 & TP >= 10) OR (C >= 4 & D >= 4 & H <= 3 & S <= 3 & TP >= 15)) & NOT (IsNtSlamViable & CombinedHcpMin >= NtSmallSl...) [19:43:54.539] [DealFinder] After 100 attempts: passedSimple=71, failedVerification=71, matches=0 [19:43:54.670] [DealFinder] Bid verification disabled after 200 calls / 0 passes (pass rate too low) -- accepting constraint-satisfying deals instead. [19:43:54.709] [DealFinder] After 1000 attempts: passedSimple=592, failedVerification=592, matches=0 [19:43:54.764] [DealFinder] Strict verification given up after 2000 attempts (0 matches) -- collecting constraint-satisfying deals instead. [19:43:54.883] [DealFinder] Early stop at 10000 attempts: 0 strict matches; usable deals ready (fallback=67, lastResort=100, simple=72, any=100). bidVerify calls=200/1200, passes=0 [19:43:54.883] [Timing] Total: 439ms, Generation: 144ms, Verification: 82ms [19:43:54.883] [Timing] Attempts: 10000, PassedSimpleCheck: 5923, FailedVerification: 5923, Found: 0 [19:43:54.883] [DealFinder] No strict matches found. Using 67 fallback deals (simple constraints only: HCP + suit lengths). [19:43:54.905] Search complete. Returning 67 deals. [19:43:54.905] Found 67 sample deals for simulation. [19:43:54.906] Valid deals for DDS: 67 / 67 [19:43:54.906] [SAMPLE-VAL] No cards played -- skipping validation [19:43:54.906] After sample validation: 67 deals remaining [19:43:54.906] [PLAY-INFER] No observed play -- skipping [19:43:54.906] Using weighted samples: 62/67 have non-uniform weights (range 0.008-1.000) [19:43:54.906] Sample deals (67 total, showing first 20, by weight): [19:43:54.906] [1] (w=1.000) N:4.JT642.T83.7543 A6.9.J9642.QJT62 KQJ975.K75.A5.K9 T832.AQ83.KQ7.A8 [19:43:54.906] [2] (w=1.000) N:4.JT642.T83.7543 J9.A.6542.AKJ862 AKT753.853.Q97.Q Q862.KQ97.AKJ.T9 [19:43:54.906] [3] (w=1.000) N:4.JT642.T83.7543 T7..AKQ42.AJT982 AQJ8652.Q98.J7.6 K93.AK753.965.KQ [19:43:54.906] [4] (w=1.000) N:4.JT642.T83.7543 T82.7.AKJ94.KQ86 AKJ765.953.Q5.J2 Q93.AKQ8.762.AT9 [19:43:54.906] [5] (w=1.000) N:4.JT642.T83.7543 983.5.AKJ42.AJ98 KQJT2.Q983.75.K6 A765.AK7.Q96.QT2 [19:43:54.906] [6] (w=0.556) N:4.JT642.T83.7543 86.9.KQJ942.AT96 AKQ952.875.A7.J2 JT73.AKQ3.65.KQ8 [19:43:54.907] [7] (w=0.091) N:4.JT642.T83.7543 A62.3.QJ92.QT862 KQJ953.Q85.K76.K T87.AK97.A54.AJ9 [19:43:54.907] [8] (w=0.091) N:4.JT642.T83.7543 J63..A9752.KQJ62 KQT9752.A93.64.A A8.KQ875.KQJ.T98 [19:43:54.907] [9] (w=0.091) N:4.JT642.T83.7543 T5.8.KQ954.QJT98 KQJ96.KQ3.J76.A6 A8732.A975.A2.K2 [19:43:54.907] [10] (w=0.091) N:4.JT642.T83.7543 QJ..J96542.AJ862 KT853.KQ873.A7.K A9762.A95.KQ.QT9 [19:43:54.907] [11] (w=0.091) N:4.JT642.T83.7543 J65.9.AQ942.KT86 KT982.A73.K7.A92 AQ73.KQ85.J65.QJ [19:43:54.907] [12] (w=0.091) N:4.JT642.T83.7543 QJ9.3.K9642.AKT2 KT8532.K75.Q7.QJ A76.AQ98.AJ5.986 [19:43:54.907] [13] (w=0.091) N:4.JT642.T83.7543 J97.Q.9742.AKJ86 AKQ652.987.QJ6.T T83.AK53.AK5.Q92 [19:43:54.907] [14] (w=0.091) N:4.JT642.T83.7543 K8.8.KJ97.KQT982 QJT975.AK9.Q65.6 A632.Q753.A42.AJ [19:43:54.907] [15] (w=0.091) N:4.JT642.T83.7543 AK.9.A7652.QJT98 QT98762.K5.J4.A6 J53.AQ873.KQ9.K2 [19:43:54.907] [16] (w=0.091) N:4.JT642.T83.7543 Q93..A6542.AQJT2 AKT876.Q987.J9.6 J52.AK53.KQ7.K98 [19:43:54.907] [17] (w=0.091) N:4.JT642.T83.7543 K76.K.J654.AKT98 AQ9832.97.Q97.Q6 JT5.AQ853.AK2.J2 [19:43:54.907] [18] (w=0.091) N:4.JT642.T83.7543 T95.K.Q654.AKJ62 AJ832.Q83.KJ9.T9 KQ76.A975.A72.Q8 [19:43:54.908] [19] (w=0.091) N:4.JT642.T83.7543 Q98.9.KQ764.AQ92 JT763.AK5.95.KT8 AK52.Q873.AJ2.J6 [19:43:54.908] [20] (w=0.091) N:4.JT642.T83.7543 862.5.AK762.AJT8 QJT953.A93.54.KQ AK7.KQ87.QJ9.962 [19:43:54.908] ... and 47 more [19:43:54.913] [NN-LEAD] top4 candidates: xH=31 %, xC=31 %, xD=17 %, xS=10 % [19:43:54.913] [NN-LEAD] adding conventional lead card(s) to the candidate set: D8 [19:43:54.913] [NN-LEAD] restricting opening-lead DDS to 5 candidate(s) (warm context) [19:43:55.472] --- IMP Calculation Input (aggregatedScores: card -> bridge scores per sample) --- [19:43:55.473] H2: [-630, -720, -720, -690, -660, -600, -660, -630, 100, 100, -630, -720, -630, -660, -690, -690, -660, -660, -660, -660, 100, -690, -630, -720, 100, -720, -690, -660, -690, -690, -720, -600, -660, 200, -660, -690, -660, -660, -660, -690, -690, -660, -630, -630, 100, -630, -660, -690, -660, 100, -720, -660, -600, -690, -660, -630, -690, -660, -660, -690, -720, -720, -660, -690, 100, -720, 200] [19:43:55.473] C3: [-630, -720, -720, -690, -660, -600, -660, -630, -660, -690, -630, -720, -630, -720, -690, -690, -660, -660, -630, -660, -600, -690, -630, -720, -660, -720, -720, -690, -690, -690, -720, -600, -690, -630, -720, -690, -660, -660, -630, -690, -690, -660, -630, -630, -660, -630, -630, -660, -660, -660, -720, -660, -600, -690, -720, -630, -690, -660, -660, -690, -720, -720, -630, -690, -660, -720, -630] [19:43:55.473] D3: [-660, -720, -720, -690, -660, -600, -690, -630, -660, -690, -630, -720, -630, -720, -690, -690, -660, -660, -660, -660, -600, -690, -630, -720, -660, -720, -720, -690, -690, -690, -720, -600, -690, -630, -720, -690, -660, -660, -630, -690, -690, -660, -630, -630, -660, -630, -630, -690, -600, -660, -720, -660, -600, -690, -720, -630, -690, -660, -660, -690, -720, -720, -660, -690, -660, -720, -630] [19:43:55.473] S4: [200, -660, -690, -660, -630, 100, -660, 300, -600, -690, -630, -720, 200, -720, -690, -660, -660, -660, -660, -630, 100, -660, -630, 400, 100, -690, -720, -690, -690, -690, -720, 100, -660, 200, -720, -690, 100, -660, -630, -690, -630, -660, -630, -630, -660, -630, 300, -690, -660, -660, -720, -660, 300, -630, -720, -630, -690, -660, -660, -690, 300, -720, -690, -690, -660, -690, 200] [19:43:55.473] D8: [-660, -720, -720, -690, -660, -600, -690, -630, -660, -690, -630, -720, -630, -720, -690, -690, -660, -660, -660, -660, -600, -690, -630, -720, -660, -720, -720, -690, -690, -690, -720, -600, -690, -630, -720, -690, -660, -660, -630, -690, -690, -660, -630, -630, -660, -630, -630, -690, -600, -660, -720, -660, -600, -690, -720, -630, -690, -660, -660, -690, -720, -720, -660, -690, -660, -720, -630] [19:43:55.473] --- IMP Calculation Input (aggregatedTricks: card -> trick counts per sample) --- [19:43:55.473] H2: [3, 0, 0, 1, 2, 4, 2, 3, 5, 5, 3, 0, 3, 2, 1, 1, 2, 2, 2, 2, 5, 1, 3, 0, 5, 0, 1, 2, 1, 1, 0, 4, 2, 6, 2, 1, 2, 2, 2, 1, 1, 2, 3, 3, 5, 3, 2, 1, 2, 5, 0, 2, 4, 1, 2, 3, 1, 2, 2, 1, 0, 0, 2, 1, 5, 0, 6] [19:43:55.473] C3: [3, 0, 0, 1, 2, 4, 2, 3, 2, 1, 3, 0, 3, 0, 1, 1, 2, 2, 3, 2, 4, 1, 3, 0, 2, 0, 0, 1, 1, 1, 0, 4, 1, 3, 0, 1, 2, 2, 3, 1, 1, 2, 3, 3, 2, 3, 3, 2, 2, 2, 0, 2, 4, 1, 0, 3, 1, 2, 2, 1, 0, 0, 3, 1, 2, 0, 3] [19:43:55.473] D3: [2, 0, 0, 1, 2, 4, 1, 3, 2, 1, 3, 0, 3, 0, 1, 1, 2, 2, 2, 2, 4, 1, 3, 0, 2, 0, 0, 1, 1, 1, 0, 4, 1, 3, 0, 1, 2, 2, 3, 1, 1, 2, 3, 3, 2, 3, 3, 1, 4, 2, 0, 2, 4, 1, 0, 3, 1, 2, 2, 1, 0, 0, 2, 1, 2, 0, 3] [19:43:55.473] S4: [6, 2, 1, 2, 3, 5, 2, 7, 4, 1, 3, 0, 6, 0, 1, 2, 2, 2, 2, 3, 5, 2, 3, 8, 5, 1, 0, 1, 1, 1, 0, 5, 2, 6, 0, 1, 5, 2, 3, 1, 3, 2, 3, 3, 2, 3, 7, 1, 2, 2, 0, 2, 7, 3, 0, 3, 1, 2, 2, 1, 7, 0, 1, 1, 2, 1, 6] [19:43:55.473] D8: [2, 0, 0, 1, 2, 4, 1, 3, 2, 1, 3, 0, 3, 0, 1, 1, 2, 2, 2, 2, 4, 1, 3, 0, 2, 0, 0, 1, 1, 1, 0, 4, 1, 3, 0, 1, 2, 2, 3, 1, 1, 2, 3, 3, 2, 3, 3, 1, 4, 2, 0, 2, 4, 1, 0, 3, 1, 2, 2, 1, 0, 0, 2, 1, 2, 0, 3] [19:43:55.474] --- IMP Calculation Output (card -> average IMP) --- [19:43:55.474] S4: 3.57 [19:43:55.474] H2: -0.10 [19:43:55.474] C3: -1.07 [19:43:55.474] D3: -1.20 [19:43:55.474] D8: -1.20 [19:43:55.474] Opening lead IMP analysis: [19:43:55.475] [LEAD] Partner bid Spades -- adding reward +0.500 to all cards in that suit [19:43:55.475] [LEAD] Engine choice S4 is conventional: Singleton - lead it [19:43:55.475] Selected lead: S4 (score: 4.070 IMPs) [19:43:55.475] [stage-timing] opening-lead sample=462ms validate=0ms nn=0ms signal=0ms simgames=3ms dds=563ms total=1032ms samples=67 [19:43:55.475] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:43:55.475] Finding opening lead... [19:43:55.475] Hand: 4.JT642.T83.7543 [19:43:55.475] Contract: 3NT [19:43:55.476] Candidate: xH = 31.0 % [19:43:55.477] Candidate: xC = 30.6 % [19:43:55.477] Candidate: xD = 17.3 % [19:43:55.477] Candidate: xS = 10.2 % [19:43:55.477] Candidate: JH = 10.0 % [19:43:55.477] Candidate: TD = 0.9 % [19:43:55.477] Candidate: 8D = 0.1 % [19:43:55.477] Candidate: TH = 0.0 % [19:43:55.477] Selected lead: H2 (31.0 %) -- 1 tied === Board lead (API) - DDS Engine (N) - 2026-08-29 19:45:44 === === Board lead (API) - Neural Network Engine (N) - 2026-08-29 19:45:44 === [19:45:44.650] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:45:44.650] Contract: 3C, Declarer: W, Dealer: N [19:45:44.650] Auction: P-P-2S-X-P-2N-P-3C-P-P-P [19:45:44.650] Deal: N:... ... ... ... [19:45:44.650] Position N is on defender's side - score table shifted by 0 defense tricks won [19:45:44.650] ****************************** [19:45:44.650] FindMatchingDealsWithPlayInternal Input: [19:45:44.650] Position parameter: N [19:45:44.650] Deal from game: N:... ... ... ... [19:45:44.650] Hand for N: K4.QJT5.J743.T95 [19:45:44.650] Hand for E: (null) [19:45:44.650] Hand for S: (null) [19:45:44.650] Hand for W: (null) [19:45:44.650] Cards played: [19:45:44.651] Declarer: W [19:45:44.651] ****************************** [19:45:44.651] [DealFinder] Seed from player N hand: -2001493909 [19:45:44.651] [DealFinder] Auction: P-P-2S-X-P-2N-P-3C-P-P-P [19:45:44.651] [DealFinder] Explained bid N P: "Opening Bid, HCP < 12, RuleOf < 21" -> require: (none) [19:45:44.652] [DealFinder] Explained bid E P: "Opening Bid, HCP < 12, RuleOf < 21" -> require: (none) [19:45:44.652] [DealFinder] Explained bid S 2S: "Weak two major, HCP <= 11, S = 6, HCP > 4, BestSuit(S), LoserLevel >= 2, SpadePoints >= 6, H <= 4, RuleOf < 21, 2 of Top 3 Honors in S, H <= 3" -> require: (none) [19:45:44.653] [DealFinder] Explained bid W X: "Overcalling Weak 2Ma Opening, HCP >= 18, HCP >= 13, H >= 4, C >= 2, D >= 2, S <= 3, HCP >= 15, H >= 3, DoubleThenOvercall(C), DoubleThenOvercall(D)" -> require: (none) [19:45:44.653] [DealFinder] Explained bid N P: "Responses to 2Ma-PX, NOT (CombinedHcpMin >= 25 OR IsGameForcing OR TwoOpenersGame)" -> require: (none) [19:45:44.654] [DealFinder] Explained bid E 2N: "Artificial - Lebensohl2HS, HCP >= 9, Stopper in S, HCP <= 8" -> require: (none) [19:45:44.654] [DealFinder] Explained bid S P: "Passable situations - Preemptive offensive, True" -> require: (none) [19:45:44.654] [DealFinder] Explained bid W 3C: "Responses to 2Ma-P-P-X-P-2N-P, HCP <= 17" -> require: (none) [19:45:44.655] [DealFinder] Explained bid N P: "Responses to 2Ma-X-P-2N-P-3C, Responses to 2Ma-PX-P-2N-P-3Mi, True" -> require: (none) [19:45:44.655] [DealFinder] Explained bid E P: "Responses to 2Ma-X-P-2N-P-3C-PX, BestMinor(C), HCP <= 8" -> require: (none) [19:45:44.655] [DealFinder] Explained bid S P: "Offensive bidding when our side has passed twice - after preempt, True" -> require: (none) [19:45:44.668] [DealFinder] N HCP min 3 -> 0: dropped 3 of PRIVATE floor (reasoned from S's own cards, not advertised by the auction). [19:45:44.668] [DealFinder] N constraints: HCP[0-11], Suits=(none), Trivial=False [19:45:44.668] [DealFinder] Expression (5681 chars): HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (D >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(D) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & S <= 4) & NOT (H >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(H) & LoserLevel >= 3 & S <= 4 & RuleOf < 21) & NOT (S >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4) & NOT (S >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(S) & LoserLevel >= 3 & H <= 4 & RuleOf < 21) & NOT (C >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (H >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (S >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (S >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (C >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (D >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (H >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & S <= 4) & NOT (S >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4) & NOT (C >= 9 & TP >= 32) & NOT (D >= 9 & TP >= 32) & NOT (H >= 9 & TP >= 32) & NOT (S >= 9 & TP >= 32) & NOT (Balanced & HCP >= 33 & HCP <= 34) & NOT (C >= 9 & HCP >= 31 & TP >= 35) & NOT (D >= 9 & HCP >= 31 & TP >= 35) & NOT (H >= 9 & HCP >= 31 & TP >= 35) & NOT (S >= 9 & HCP >= 31 & TP >= 35) & NOT (Balanced & HCP >= 36 & TP >= 35) & NOT (HCP >= 12 & HCP <= 21 &... [19:45:44.669] [Timing] N precompute: 13ms mem d=254KB (total=1497MB) [19:45:44.678] [DealFinder] E HCP min 3 -> 0: dropped 3 of PRIVATE floor (reasoned from W's own cards, not advertised by the auction). [19:45:44.679] [DealFinder] E constraints: HCP[0-8], Suits=(none), Trivial=False [19:45:44.679] [DealFinder] Expression (5003 chars): HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (D >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(D) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & S <= 4) & NOT (H >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(H) & LoserLevel >= 3 & S <= 4 & RuleOf < 21) & NOT (S >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4) & NOT (S >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(S) & LoserLevel >= 3 & H <= 4 & RuleOf < 21) & NOT (C >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (H >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (S >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (S >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (C >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (D >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (H >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & S <= 4) & NOT (S >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4) & NOT (C >= 9 & TP >= 32) & NOT (D >= 9 & TP >= 32) & NOT (H >= 9 & TP >= 32) & NOT (S >= 9 & TP >= 32) & NOT (Balanced & HCP >= 33 & HCP <= 34) & NOT (C >= 9 & HCP >= 31 & TP >= 35) & NOT (D >= 9 & HCP >= 31 & TP >= 35) & NOT (H >= 9 & HCP >= 31 & TP >= 35) & NOT (S >= 9 & HCP >= 31 & TP >= 35) & NOT (Balanced & HCP >= 36 & TP >= 35) & NOT (HCP >= 12 & HCP <= 21 &... [19:45:44.679] [Timing] E precompute: 10ms mem d=241KB (total=1497MB) [19:45:44.685] [DealFinder] S HCP min 9 -> 6: dropped 3 of PRIVATE floor (reasoned from N's own cards, not advertised by the auction). [19:45:44.685] [DealFinder] S constraints: HCP[6-11], Suits=S[6-6] H[0-4], Trivial=False [19:45:44.685] [DealFinder] Expression (2873 chars): ((HCP <= 11 & S = 6 & HCP > 4 & BestSuit(S) & LoserLevel >= 2 & SpadePoints >= 6 & H <= 4 & RuleOf < 21 & HCP >= 6) OR (HCP <= 11 & S = 6 & HCP > 4 & BestSuit(S) & 2 of Top 3 Honors in S & H <= 3 & RuleOf < 21 & HCP >= 6)) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (D >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(D) & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & S <= 4) & NOT (H >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(H) & LoserLevel >= 3 & S <= 4 & RuleOf < 21) & NOT (S >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4) & NOT (S >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(S) & LoserLevel >= 3 & H <= 4 & RuleOf < 21) & NOT (C >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 3 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (D >= 7 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4 & S <= 4 & RuleOf < 21) & NOT (H >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (H >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & S <= 4) & NOT (S >= 8 & HCP >= 5 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (S >= 7 & HCP >= 9 & HCP <= 11 & LoserLevel >= 4 & H <= 4) & NOT (C >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (D >= 8 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4 & S <= 4) & NOT (H >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & S <= 4) & NOT (S >= 9 & HCP >= 6 & HCP <= 11 & LoserLevel >= 5 & H <= 4) & NOT (HCP >= 12 & HCP <= 21 & (DiamondLongest OR ExplicitShape = 4=4=3=2)) & NOT (HCP >= 12 & HCP <= 21 & H >= 5 & H > S & HeartLongest) & NOT (HCP >= 12 & HCP <= 21 ... [19:45:44.685] [Timing] S precompute: 6ms mem d=205KB (total=1498MB) [19:45:44.687] [DealFinder] W HCP min 16 -> 13: dropped 3 of PRIVATE floor (reasoned from E's own cards, not advertised by the auction). [19:45:44.687] [DealFinder] W HCP min: tightened from 0 to 13 using HandUnderstanding [19:45:44.687] [DealFinder] W constraints: HCP[13-17], Suits=(none), Trivial=False [19:45:44.687] [DealFinder] Expression (1097 chars): (DoubleThenOvercall(C) OR DoubleThenOvercall(D) OR HCP >= 18 OR (HCP >= 13 & H >= 4 & C >= 2 & D >= 2 & S <= 3) OR (HCP >= 15 & H >= 3 & S <= 3)) & NOT (H >= 6 & Losers <= 4 & HCP >= 15 & 3 of Top 5 Honors in H) & NOT (H >= 7 & HeartPoints >= 18 & Losers <= 4) & NOT (D >= 5 & C >= 5 & Losers <= 4 & HCP >= 17) & NOT (D >= 5 & C >= 5 & LoserLevel >= 4 & HCP >= 12) & NOT (RealSolid(C) & Losers = 1) & NOT (RealSolid(D) & Losers = 1) & NOT (RealSolid(C) & Losers <= 0) & NOT (RealSolid(D) & Losers <= 0) & NOT (RealSolid(H) & Losers = 1) & NOT (RealSolid(H) & Losers <= 0) & NOT (HCP >= 16 & HCP <= 18 & balish & Stopper in S) & NOT (HCP >= 19 & HCP <= 24 & balish & Stopper in S) & NOT (HCP >= 20 & HCP <= 24 & S >= 4 & Stopper in S) & NOT (BestMinor(C) & C >= 7 & HCP >= 19 & Single Suited & Losers >= 3) & NOT (BestMinor(D) & D >= 7 & HCP >= 19 & Single Suited & Losers >= 3) & NOT (H >= 5 & (D >= 5 OR C >= 5) & LoserLevel >= 3 & HCP >= 12) & HCP <= 17 & NOT DoubleThenOvercall(D) & HCP < 18 & NOT DoubleThenOvercall(H) & NOT (HCP >= 20 & Stopper in S) & NOT (HCP >= 18 & Stopper in S & H <= 2) [19:45:44.687] [Timing] W precompute: 2ms mem d=112KB (total=1498MB) [19:45:44.687] [DealFinder] S HCP min 6 -> 9: restored 3 of PRIVATE floor -- we ARE N, the seat whose own cards produced it. [19:45:44.688] [Timing] Pre-computation (constraints): 36ms mem d=2MB (total=1498MB, gc2=18) [19:45:44.688] [DealFinder] Using cardsPlayedCount=0 for visibility calculation [19:45:44.688] [ExtractPartialDeal] Position=N, Declarer=W, CardsPlayed=0 [19:45:44.688] [ExtractPartialDeal] Visible hands: N [19:45:44.688] [ExtractPartialDeal] Input deal: N:... ... ... ... [19:45:44.688] [ExtractPartialDeal] Extracted hands: [19:45:44.688] N: K4.QJT5.J743.T95 (13 cards) [LOCKED] [19:45:44.688] E: ... (0 cards) [19:45:44.688] S: ... (0 cards) [19:45:44.688] W: ... (0 cards) [19:45:44.688] [DecomposePartnership] S: No tightening (CombinedHcpMin=6, CombinedHcpMax=, partner N HCP=7) [19:45:44.688] [DealFinder] Bid verification enabled for: W [19:45:44.688] [DealFinder] Propagated E: HCP[5-8], Suits=S[0-5] H[0-9] D[0-9] C[0-10] (2 iterations) [19:45:44.688] [DealFinder] Propagated S: HCP[9-11], Suits=S[6-6] H[0-4] D[0-9] C[0-10] (2 iterations) [19:45:44.688] [DealFinder] Propagated W: HCP[14-17], Suits=S[0-5] H[0-9] D[0-9] C[0-10] (2 iterations) [19:45:44.689] [DealFinder] Known cards per player: N=13, E=0, S=0, W=0 [19:45:44.689] [DealFinder] Locked players: N [19:45:44.689] [DealFinder] Total known cards: 13, Remaining deck: 39, Cards to deal: 39 [19:45:44.689] [DealFinder] Players needing cards: E:13, S:13, W:13 [19:45:44.689] Large number of cards remaining. Using random generation. [19:45:44.689] [DealFinder] Hands to validate (not 13 cards in partial): E, S, W [19:45:44.689] [VerifyHands] FAIL for E: AT6.A986.6.KJ432 (HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & R...) [19:45:44.691] [VerifyHands] FAIL for E: 8.82.AT862.K8764 (HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & R...) [19:45:44.693] [VerifyHands] FAIL for E: 63.A97432.AQ6.87 (HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & R...) [19:45:44.695] [VerifyHands] FAIL for E: T5.A.AT62.J87432 (HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & R...) [19:45:44.699] [VerifyHands] FAIL for E: J85.2.AKT852.Q42 (HCP < 12 & RuleOf < 21 & NOT (C >= 7 & HCP >= 5 & HCP <= 11 & TP >= 6 & RuleOf < 21 & H <= 4 & S <= 4) & NOT (C >= 7 & HCP >= 5 & HCP <= 10 & TwiceRebiddable(C) & LoserLevel >= 3 & H <= 4 & S <= 4 & R...) [19:45:45.214] [DealFinder] Bid verification disabled after 200 calls / 1 passes (pass rate too low) -- accepting constraint-satisfying deals instead. [19:45:47.988] [Timing] Total: 3336ms, Generation: 1058ms, Verification: 1691ms [19:45:47.988] [Timing] Attempts: 53569, PassedSimpleCheck: 23210, FailedVerification: 23110, Found: 100 [19:45:48.026] Search complete. Returning 100 deals. [19:45:48.026] Found 100 sample deals for simulation. [19:45:48.026] Valid deals for DDS: 100 / 100 [19:45:48.026] [SAMPLE-VAL] No cards played -- skipping validation [19:45:48.026] After sample validation: 100 deals remaining [19:45:48.027] [PLAY-INFER] No observed play -- skipping [19:45:48.027] Using weighted samples: 7/100 have non-uniform weights (range 0.450-1.000) [19:45:48.027] Sample deals (100 total, showing first 20, by weight): [19:45:48.027] [1] (w=1.000) N:K4.QJT5.J743.T95 32.642.Q86.KQJ73 AQ9876.93.K95.86 JT5.AK87.AT2.A42 [19:45:48.027] [2] (w=1.000) N:K4.QJT5.J743.T95 A763.74.852.KJ62 QJT982.K863.KT.7 5.A92.AQ96.AQ843 [19:45:48.027] [3] (w=1.000) N:K4.QJT5.J743.T95 J72.K2.T86.KJ632 QT9853.98.K5.AQ8 A6.A7643.AQ92.74 [19:45:48.027] [4] (w=1.000) N:K4.QJT5.J743.T95 653.943.A9.J7632 AQJT72.A76.T86.8 98.K82.KQ52.AKQ4 [19:45:48.027] [5] (w=1.000) N:K4.QJT5.J743.T95 Q9.9643.A95.J764 AJT762.82.KQ82.8 853.AK7.T6.AKQ32 [19:45:48.027] [6] (w=1.000) N:K4.QJT5.J743.T95 875.K976.KT8.J82 AQJ632.82.96.A43 T9.A43.AQ52.KQ76 [19:45:48.027] [7] (w=1.000) N:K4.QJT5.J743.T95 QT7.A764.T5.J432 A98652.3.K962.K8 J3.K982.AQ8.AQ76 [19:45:48.027] [8] (w=1.000) N:K4.QJT5.J743.T95 532.K942.K2.J764 AQ9876.86.A985.2 JT.A73.QT6.AKQ83 [19:45:48.027] [9] (w=1.000) N:K4.QJT5.J743.T95 JT.982.AT65.8632 AQ7532.743.92.KQ 986.AK6.KQ8.AJ74 [19:45:48.027] [10] (w=1.000) N:K4.QJT5.J743.T95 T97.63.KQ92.K763 AQJ652.K42.T86.2 83.A987.A5.AQJ84 [19:45:48.028] [11] (w=1.000) N:K4.QJT5.J743.T95 JT52.9876..AQJ86 AQ8763.4.KT982.7 9.AK32.AQ65.K432 [19:45:48.028] [12] (w=1.000) N:K4.QJT5.J743.T95 873.A972.52.K832 AJ9652.63.KQ86.4 QT.K84.AT9.AQJ76 [19:45:48.028] [13] (w=1.000) N:K4.QJT5.J743.T95 A87.K942.T9.J843 QT6532.6.A82.KQ7 J9.A873.KQ65.A62 [19:45:48.028] [14] (w=1.000) N:K4.QJT5.J743.T95 J82.A764.T62.K76 AT7653..K85.QJ43 Q9.K9832.AQ9.A82 [19:45:48.028] [15] (w=1.000) N:K4.QJT5.J743.T95 T92.9842.AT9.QJ4 AQJ876..K865.832 53.AK763.Q2.AK76 [19:45:48.028] [16] (w=1.000) N:K4.QJT5.J743.T95 75.7643.A52.KJ42 AQT863.9.T986.A6 J92.AK82.KQ.Q873 [19:45:48.028] [17] (w=1.000) N:K4.QJT5.J743.T95 J932.K42.T.A8432 AQ8765.83.Q96.K6 T.A976.AK852.QJ7 [19:45:48.028] [18] (w=1.000) N:K4.QJT5.J743.T95 T62.84.KT62.AJ74 AQ9875.K76.85.Q8 J3.A932.AQ9.K632 [19:45:48.028] [19] (w=1.000) N:K4.QJT5.J743.T95 A962.8642.Q2.862 QJT875.9.K965.A3 3.AK73.AT8.KQJ74 [19:45:48.028] [20] (w=1.000) N:K4.QJT5.J743.T95 32.K62.Q865.7632 AQJ865.A98.T2.84 T97.743.AK9.AKQJ [19:45:48.028] ... and 80 more [19:45:48.033] [NN-LEAD] top4 candidates: QH=58 %, TC=22 %, xD=17 %, KS=1 % [19:45:48.033] [NN-LEAD] adding conventional lead card(s) to the candidate set: C9, C5, D7, D4 [19:45:48.033] [NN-LEAD] restricting opening-lead DDS to 8 candidate(s) (warm context) [19:45:51.191] --- IMP Calculation Input (aggregatedScores: card -> bridge scores per sample) --- [19:45:51.191] HQ: [-110, -150, 50, -130, -110, -110, -130, -110, -110, -150, -150, -110, 100, 150, 50, -110, -130, -130, -110, 100, -110, -110, -110, -170, -130, -110, -130, -130, -130, -110, 100, -110, -110, -110, -110, -110, -130, -130, -110, -130, 50, -110, -110, -110, -110, 50, -130, -110, -130, -110, -130, -150, 50, -110, -170, 100, 150, -150, -110, -130, -130, -110, -130, -130, 50, -110, 100, -110, 150, -110, -110, -130, -130, 50, -110, 50, -110, -110, -150, 150, 50, -130, -110, -130, -150, 100, 150, 50, -110, -130, 50, 50, 100, -130, -130, -130, -170, -150, -150, 50] [19:45:51.191] CT: [-110, -170, 100, -130, -110, -110, -130, -110, -110, -150, -130, -110, 100, 150, 50, -110, -110, -130, -110, 50, -110, -110, -110, -150, -130, -110, -130, -130, -150, -110, 50, -110, -130, -110, -110, -130, -130, -130, -110, -130, -110, -110, -110, -110, -110, 50, -130, -110, -130, -110, -130, -150, 50, -110, -170, 50, 200, -150, -110, -130, -130, 50, -150, -130, 50, -110, 150, -110, 100, -130, -110, -130, -150, 50, -110, 100, -110, -110, -130, 100, 50, -130, -150, -130, -150, 150, 150, 50, -110, -110, -110, -110, 50, -130, -110, -130, -170, -150, -130, 100] [19:45:51.191] D3: [-130, -170, 50, -130, -110, -110, -130, -110, -110, -150, -150, -110, 100, 150, 50, -110, -130, -130, -130, 50, -110, -110, -130, -170, -130, -110, -130, -130, -150, -110, 100, -130, -130, -130, -110, -110, -130, -130, -110, -130, -110, -110, -110, -110, -110, -110, -130, -110, -130, -110, -130, -150, 50, -110, -170, 50, 100, -150, -110, -130, -130, -110, -150, -130, 50, 50, 100, 50, 100, -130, -110, -130, -130, 50, -110, -110, -110, -110, -130, 100, 50, -130, -110, -130, -130, 100, 150, 50, -130, -110, 50, -110, 100, -130, -110, -130, -170, -150, -130, -110] [19:45:51.191] SK: [-110, -170, 100, -130, -110, 50, -110, -110, -110, -130, -130, -110, 100, 150, 50, -110, -130, -110, -110, 100, -110, -110, -130, -170, -130, -110, 50, -130, -130, -110, 100, -110, -130, -110, -110, -110, -130, -130, -110, -130, -110, -110, -110, -110, -110, -110, -130, -110, -130, -110, -130, -150, 50, -110, -170, 50, 150, -130, 50, -130, -130, -110, -130, -130, 50, 50, 100, -110, 150, 50, -110, -130, -150, 50, -110, 100, -110, -110, -130, 150, 50, -130, -110, -130, -150, 100, 150, 50, -110, -110, 50, -110, 100, -130, -110, -110, -150, -150, -130, 100] [19:45:51.191] C9: [-110, -170, 100, -130, -110, -110, -130, -110, -110, -150, -130, -110, 100, 150, 50, -110, -110, -130, -110, 50, -110, -110, -110, -150, -130, -110, -130, -130, -150, -110, 50, -110, -130, -110, -110, -130, -130, -130, -110, -130, -110, -110, -110, -110, -110, 50, -130, -110, -130, -110, -130, -150, 50, -110, -170, 50, 200, -150, -110, -130, -130, 50, -150, -130, 50, -110, 150, -110, 100, -130, -110, -130, -150, 50, -110, 100, -110, -110, -130, 100, 50, -130, -150, -130, -150, 150, 150, 50, -110, -110, -110, -110, 50, -130, -110, -130, -170, -150, -130, 100] [19:45:51.192] C5: [-110, -170, 100, -130, -110, -110, -130, -110, -110, -150, -130, -110, 100, 150, 50, -110, -110, -130, -110, 50, -110, -110, -110, -150, -130, -110, -130, -130, -150, -110, 50, -110, -130, -110, -110, -130, -130, -130, -110, -130, -110, -110, -110, -110, -110, 50, -130, -110, -130, -130, -130, -150, 50, -110, -170, 50, 200, -150, -110, -130, -130, 50, -150, -130, -110, -110, 150, -110, 100, -130, -110, -130, -150, 50, -110, 100, -110, -110, -130, 100, 50, -130, -150, -130, -150, 150, 150, 50, -110, -110, -110, -110, 50, -130, -110, -130, -170, -150, -130, -110] [19:45:51.192] D7: [-130, -170, 50, -130, -110, -110, -130, -110, -110, -150, -150, -110, 100, 150, 50, -110, -130, -130, -130, 50, -110, -110, -130, -170, -130, -110, -130, -130, -150, -110, 100, -130, -130, -130, -110, -110, -130, -130, -110, -150, -110, -110, -110, -110, -110, -110, -130, -110, -130, -110, -130, -150, 50, -110, -170, 50, 100, -150, -110, -130, -130, -110, -150, -130, 50, 50, 100, 50, 100, -130, -110, -130, -130, 50, -110, -110, -110, -110, -130, 100, 50, -130, -110, -130, -130, 100, 150, 50, -130, -110, 50, -110, 100, -130, -110, -130, -170, -150, -130, -110] [19:45:51.192] D4: [-130, -170, 50, -130, -110, -110, -130, -110, -110, -150, -150, -110, 100, 150, 50, -110, -130, -130, -130, 50, -110, -110, -130, -170, -130, -110, -130, -130, -150, -110, 100, -130, -130, -130, -110, -110, -130, -130, -110, -130, -110, -110, -110, -110, -110, -110, -130, -110, -130, -110, -130, -150, 50, -110, -170, 50, 100, -150, -110, -130, -130, -110, -150, -130, 50, 50, 100, 50, 100, -130, -110, -130, -130, 50, -110, -110, -110, -110, -130, 100, 50, -130, -110, -130, -130, 100, 150, 50, -130, -110, 50, -110, 100, -130, -110, -130, -170, -150, -130, -110] [19:45:51.192] --- IMP Calculation Input (aggregatedTricks: card -> trick counts per sample) --- [19:45:51.192] HQ: [4, 2, 5, 3, 4, 4, 3, 4, 4, 2, 2, 4, 6, 7, 5, 4, 3, 3, 4, 6, 4, 4, 4, 1, 3, 4, 3, 3, 3, 4, 6, 4, 4, 4, 4, 4, 3, 3, 4, 3, 5, 4, 4, 4, 4, 5, 3, 4, 3, 4, 3, 2, 5, 4, 1, 6, 7, 2, 4, 3, 3, 4, 3, 3, 5, 4, 6, 4, 7, 4, 4, 3, 3, 5, 4, 5, 4, 4, 2, 7, 5, 3, 4, 3, 2, 6, 7, 5, 4, 3, 5, 5, 6, 3, 3, 3, 1, 2, 2, 5] [19:45:51.192] CT: [4, 1, 6, 3, 4, 4, 3, 4, 4, 2, 3, 4, 6, 7, 5, 4, 4, 3, 4, 5, 4, 4, 4, 2, 3, 4, 3, 3, 2, 4, 5, 4, 3, 4, 4, 3, 3, 3, 4, 3, 4, 4, 4, 4, 4, 5, 3, 4, 3, 4, 3, 2, 5, 4, 1, 5, 8, 2, 4, 3, 3, 5, 2, 3, 5, 4, 7, 4, 6, 3, 4, 3, 2, 5, 4, 6, 4, 4, 3, 6, 5, 3, 2, 3, 2, 7, 7, 5, 4, 4, 4, 4, 5, 3, 4, 3, 1, 2, 3, 6] [19:45:51.192] D3: [3, 1, 5, 3, 4, 4, 3, 4, 4, 2, 2, 4, 6, 7, 5, 4, 3, 3, 3, 5, 4, 4, 3, 1, 3, 4, 3, 3, 2, 4, 6, 3, 3, 3, 4, 4, 3, 3, 4, 3, 4, 4, 4, 4, 4, 4, 3, 4, 3, 4, 3, 2, 5, 4, 1, 5, 6, 2, 4, 3, 3, 4, 2, 3, 5, 5, 6, 5, 6, 3, 4, 3, 3, 5, 4, 4, 4, 4, 3, 6, 5, 3, 4, 3, 3, 6, 7, 5, 3, 4, 5, 4, 6, 3, 4, 3, 1, 2, 3, 4] [19:45:51.192] SK: [4, 1, 6, 3, 4, 5, 4, 4, 4, 3, 3, 4, 6, 7, 5, 4, 3, 4, 4, 6, 4, 4, 3, 1, 3, 4, 5, 3, 3, 4, 6, 4, 3, 4, 4, 4, 3, 3, 4, 3, 4, 4, 4, 4, 4, 4, 3, 4, 3, 4, 3, 2, 5, 4, 1, 5, 7, 3, 5, 3, 3, 4, 3, 3, 5, 5, 6, 4, 7, 5, 4, 3, 2, 5, 4, 6, 4, 4, 3, 7, 5, 3, 4, 3, 2, 6, 7, 5, 4, 4, 5, 4, 6, 3, 4, 4, 2, 2, 3, 6] [19:45:51.192] C9: [4, 1, 6, 3, 4, 4, 3, 4, 4, 2, 3, 4, 6, 7, 5, 4, 4, 3, 4, 5, 4, 4, 4, 2, 3, 4, 3, 3, 2, 4, 5, 4, 3, 4, 4, 3, 3, 3, 4, 3, 4, 4, 4, 4, 4, 5, 3, 4, 3, 4, 3, 2, 5, 4, 1, 5, 8, 2, 4, 3, 3, 5, 2, 3, 5, 4, 7, 4, 6, 3, 4, 3, 2, 5, 4, 6, 4, 4, 3, 6, 5, 3, 2, 3, 2, 7, 7, 5, 4, 4, 4, 4, 5, 3, 4, 3, 1, 2, 3, 6] [19:45:51.192] C5: [4, 1, 6, 3, 4, 4, 3, 4, 4, 2, 3, 4, 6, 7, 5, 4, 4, 3, 4, 5, 4, 4, 4, 2, 3, 4, 3, 3, 2, 4, 5, 4, 3, 4, 4, 3, 3, 3, 4, 3, 4, 4, 4, 4, 4, 5, 3, 4, 3, 3, 3, 2, 5, 4, 1, 5, 8, 2, 4, 3, 3, 5, 2, 3, 4, 4, 7, 4, 6, 3, 4, 3, 2, 5, 4, 6, 4, 4, 3, 6, 5, 3, 2, 3, 2, 7, 7, 5, 4, 4, 4, 4, 5, 3, 4, 3, 1, 2, 3, 4] [19:45:51.192] D7: [3, 1, 5, 3, 4, 4, 3, 4, 4, 2, 2, 4, 6, 7, 5, 4, 3, 3, 3, 5, 4, 4, 3, 1, 3, 4, 3, 3, 2, 4, 6, 3, 3, 3, 4, 4, 3, 3, 4, 2, 4, 4, 4, 4, 4, 4, 3, 4, 3, 4, 3, 2, 5, 4, 1, 5, 6, 2, 4, 3, 3, 4, 2, 3, 5, 5, 6, 5, 6, 3, 4, 3, 3, 5, 4, 4, 4, 4, 3, 6, 5, 3, 4, 3, 3, 6, 7, 5, 3, 4, 5, 4, 6, 3, 4, 3, 1, 2, 3, 4] [19:45:51.192] D4: [3, 1, 5, 3, 4, 4, 3, 4, 4, 2, 2, 4, 6, 7, 5, 4, 3, 3, 3, 5, 4, 4, 3, 1, 3, 4, 3, 3, 2, 4, 6, 3, 3, 3, 4, 4, 3, 3, 4, 3, 4, 4, 4, 4, 4, 4, 3, 4, 3, 4, 3, 2, 5, 4, 1, 5, 6, 2, 4, 3, 3, 4, 2, 3, 5, 5, 6, 5, 6, 3, 4, 3, 3, 5, 4, 4, 4, 4, 3, 6, 5, 3, 4, 3, 3, 6, 7, 5, 3, 4, 5, 4, 6, 3, 4, 3, 1, 2, 3, 4] [19:45:51.193] --- IMP Calculation Output (card -> average IMP) --- [19:45:51.193] SK: 0.35 [19:45:51.193] HQ: 0.16 [19:45:51.193] CT: 0.01 [19:45:51.193] C9: 0.01 [19:45:51.193] C5: -0.07 [19:45:51.193] D3: -0.15 [19:45:51.194] D4: -0.15 [19:45:51.194] D7: -0.16 [19:45:51.194] Opening lead IMP analysis: [19:45:51.194] [LEAD] Partner bid Spades -- adding reward +0.500 to all cards in that suit [19:45:51.194] [LEAD] Engine choice SK is conventional: Hx doubleton - lead honor vs suit [19:45:51.194] Selected lead: SK (score: 0.850 IMPs) [19:45:51.194] [stage-timing] opening-lead sample=3376ms validate=0ms nn=0ms signal=0ms simgames=2ms dds=3162ms total=6544ms samples=100 [19:45:51.195] === FindBestCardAsync: Position=N, CardsPlayed=0 === [19:45:51.195] Finding opening lead... [19:45:51.195] Hand: K4.QJT5.J743.T95 [19:45:51.195] Contract: 3C [19:45:51.196] Candidate: QH = 58.2 % [19:45:51.196] Candidate: TC = 21.7 % [19:45:51.196] Candidate: xD = 17.4 % [19:45:51.196] Candidate: KS = 1.2 % [19:45:51.196] Candidate: xC = 0.6 % [19:45:51.196] Candidate: xH = 0.4 % [19:45:51.196] Candidate: xS = 0.2 % [19:45:51.197] Candidate: JD = 0.1 % [19:45:51.197] Candidate: 9C = 0.0 % [19:45:51.197] Candidate: JH = 0.0 % [19:45:51.197] Candidate: TH = 0.0 % [19:45:51.197] Selected lead: HQ (58.2 %)