# alias: Impossible2S # button-text: Impossible 2S # gib-works: true # bba-works: true # auction-filter: Auction.....\n(1H +Pass +1NT?.* Pass\n2[CD] +Pass +2S) # convention-card-ns: 21GF-DEFAULT # convention-card-ew: 21GF-GIB /*@chat --- Impossible 2S South opens 1H with 12-18 HCP and 5+ !H. North has an invitational minor oriented hand not suitable for NT or !H and responds 1NT with 11-12 HCP. With only 5!H South rebids a minor. North has support for South's minor and rebids the Impossible 2!S. If South rebids 2!H, North needs 6/5 or better in the minors to bid the Impossible 2!S. http://kivabridgeclub.com/images/Impossible%202%20Spade.pdf @chat*/ # Turn on 'Imposible 2S' (sic); turn off '1N opening shape 5422' # To find those that don't match add ?! after the opening parenthesis # The bidding sequence is 1H Pass 1NT (forcing, semi-forcing, or not forcing) Pass 2C/D Pass 2S dealer south #include "script/Calm-Opponents" # Defines calmOpps #include "script/GIB-1N" # Defines gibNT #include "script/TP" # Defines tpNorth # allow for extreme shapes -- if south rebids 2H, north needs 6/5+ in the minors to bid the impossible 2S hSouth = hearts(south)==5 or (hearts(south)>5 and shape(north,2065+2056+1165+1156) and (hcp(north,spades)+hcp(north,hearts))==0) # limit spades to avoid a reverse and limit HCP to avoid a jump shift oneH = hSouth and spade(south)<4 and diamonds(south)<6 and clubs(south)<6 and hcp(south)>10 and tpSouth>11 and tpSouth<18 and not gibNT # Things to avoid... twoOver1 = hcp(north)>12 and tpNorth>13 cNorth = clubs(north)>5 and hcp(north,clubs)>1 dNorth = diamonds(north)>5 and hcp(north,diamonds)>1 invJump = (cNorth or dNorth) and hcp(north)>8 and hcp(north)<12 # North is invitational with <4 spades and <3 hearts support oneN = spades(north)<4 and hearts(north)<3 and hcp(north)>10 and not (twoOver1 or invJump) # South rebids a minor and North has support rebidC = clubs(south)>=diamonds(south) and clubs(north)>3 and clubs(north)>diamonds(north) rebidD = diamonds(south)>clubs(south) and diamonds(north)>3 and diamonds(north)>clubs(north) sRebid = (rebidC or rebidD) # North is not suitable for a 2N rebid nTwoS = shape(north,any 0xxx+any 1xxx) # Now do it oneH and oneN and sRebid and nTwoS and calmOpps action average "South H = 5 " 100 * (hearts(south)==5), average "South H > 5 " 100 * (hearts(south)>5), average "North 0/1 S " 100 * (spades(north)<2), average "North 0/1 H " 100 * (hearts(north)<2), average "North 6/5+CD " 100 * (clubs(north)>4 and diamonds(north)>4 and clubs(north)+diamonds(north)>10),