From: Geoffrey Allott Date: Sun, 4 Jun 2023 22:43:02 +0000 (+0100) Subject: add two tests with complete cribbage games X-Git-Url: https://git.pointlesshacks.com/?a=commitdiff_plain;h=698c62839c8f1ba1056cb67248484368929c05f8;p=pokerwave.git add two tests with complete cribbage games --- diff --git a/src/game/cribbage/mod.rs b/src/game/cribbage/mod.rs index c720e0a..6c0eb54 100644 --- a/src/game/cribbage/mod.rs +++ b/src/game/cribbage/mod.rs @@ -958,4 +958,818 @@ mod tests { test_game(actions, settings, seed); } + + #[test] + fn complete_cribbage_game() { + let actions = r#"[ + {"timestamp":1685915620938,"username":"Geoff","action":{"action":"Join","seat":0,"chips":0}}, + {"timestamp":1685915631033,"username":"Aga","action":{"action":"Join","seat":1,"chips":0}}, + {"timestamp":1685915631034,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685915631034,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685915631034,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685915631035,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685915631035,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685915631036,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915631036,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915631037,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685915631037,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685915631038,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685915631039,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685915631039,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685915631040,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685915631040,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685915637200,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685915637764,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685915644244,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685915645402,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685915645402,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685915651445,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685915653427,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685915658976,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685915662427,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915664763,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685915672345,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685915672346,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915676700,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685915677984,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685915679428,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915681755,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685915681756,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915684631,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685915684632,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915684634,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915684635,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685915684636,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685915684637,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685915684638,"username":"Geoff","action":{"action":"Score","points":14,"reason":"Fifteen two, fifteen four, fifteen six and eight is 14"}}, + {"timestamp":1685915684639,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915684641,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685915684642,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685915684643,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685915684644,"username":"Aga","action":{"action":"Score","points":9,"reason":"Fifteen two, fifteen four, fifteen six and three is 9"}}, + {"timestamp":1685915684651,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685915684652,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685915684654,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685915684655,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685915684657,"username":"Aga","action":{"action":"Score","points":4,"reason":"Fifteen two, fifteen four, look all day, see no more"}}, + {"timestamp":1685915684658,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685915684659,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685915684670,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685915684670,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685915684671,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685915684672,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915684673,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685915684674,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915684675,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685915684676,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685915684676,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685915684677,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685915684677,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Spades"}}}, + {"timestamp":1685915684678,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685915740361,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685915740821,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Nine","suit":"Spades"}}}, + {"timestamp":1685915749863,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685915750454,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685915750455,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685915758853,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915760715,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685915762799,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685915763842,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685915768563,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685915770313,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685915770315,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915776114,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685915777306,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685915778781,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915779837,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685915779838,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915779839,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685915779840,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915779841,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915779841,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685915779842,"username":"Aga","action":{"action":"Score","points":7,"reason":"Fifteen two and two and three is 7"}}, + {"timestamp":1685915779843,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685915779844,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685915779845,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685915779845,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685915779846,"username":"Geoff","action":{"action":"Score","points":6,"reason":"Fifteen two, fifteen four, fifteen six, pick up sticks"}}, + {"timestamp":1685915779847,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685915779848,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Spades"}}}, + {"timestamp":1685915779848,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685915779862,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685915779863,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685915779864,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685915779871,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Spades"}}}, + {"timestamp":1685915779872,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685915779872,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685915779873,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685915779873,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685915779874,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685915779875,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685915779875,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685915779876,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685915779877,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685915779877,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685915779878,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685915779878,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685915847022,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685915848223,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685915856081,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685915857647,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685915857649,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685915901624,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685915905877,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685915908147,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685915909656,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685915910972,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685915912312,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685915912313,"username":"Aga","action":{"action":"Score","points":4,"reason":"Thirty-one for two and two is four"}}, + {"timestamp":1685915917121,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Nine","suit":"Spades"}}}, + {"timestamp":1685915918657,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685915918659,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915918659,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685915918660,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Spades"}}}, + {"timestamp":1685915918660,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685915918661,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685915918661,"username":"Geoff","action":{"action":"Score","points":6,"reason":"Fifteen two and three and one for his nob is 6"}}, + {"timestamp":1685915918662,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685915918662,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685915918663,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685915918664,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685915918665,"username":"Aga","action":{"action":"Score","points":10,"reason":"Ten"}}, + {"timestamp":1685915918665,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685915918666,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685915918667,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685915918667,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685915918668,"username":"Aga","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685915918668,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685915918680,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685915918681,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685915918682,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685915918682,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685915918683,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915918684,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685915918693,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685915918694,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685915918695,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915918695,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685915918696,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685915918696,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685915918697,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685915958112,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685915958870,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685915970490,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915971794,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685915971795,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685915978547,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685915980342,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685915982986,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685915984062,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685915985421,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685915988690,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685915990909,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685915990910,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915993355,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685915995180,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915995181,"username":"Aga","action":{"action":"Score","points":2,"reason":"Fifteen for two"}}, + {"timestamp":1685915996815,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685915996816,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685915996817,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685915996818,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685915996818,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685915996819,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685915996819,"username":"Aga","action":{"action":"Score","points":14,"reason":"Fifteen two, fifteen four and ten is 14"}}, + {"timestamp":1685915996820,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685915996821,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685915996821,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685915996822,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685915996823,"username":"Geoff","action":{"action":"Score","points":9,"reason":"Eight and one for his nob is 9"}}, + {"timestamp":1685915996823,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685915996824,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685915996824,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685915996825,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685915996826,"username":"Geoff","action":{"action":"Score","points":6,"reason":"Fifteen two, fifteen four and two is 6"}}, + {"timestamp":1685915996826,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685915996836,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685915996836,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685915996837,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685915996837,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685915996838,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685915996838,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Hearts"}}}, + {"timestamp":1685915996839,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685915996839,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685915996840,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685915996840,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685915996841,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685915996841,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Diamonds"}}}, + {"timestamp":1685915996854,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685916044413,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Seven","suit":"Hearts"}}}, + {"timestamp":1685916046562,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685916050483,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685916051428,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685916051429,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685916057491,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916059946,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685916061190,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916061191,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Fifteen for two"}}, + {"timestamp":1685916063746,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Diamonds"}}}, + {"timestamp":1685916072948,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685916075901,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685916078168,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685916080036,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685916080037,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685916083808,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685916085466,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685916085467,"username":"Aga","action":{"action":"Score","points":3,"reason":"Fifteen for two and a go is three"}}, + {"timestamp":1685916085469,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685916085470,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916085471,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916085471,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685916085472,"username":"Geoff","action":{"action":"Score","points":13,"reason":"Fifteen two, fifteen four, fifteen six, fifteen eight and two and two and one for his nob is 13"}}, + {"timestamp":1685916085473,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685916085474,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685916085475,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Diamonds"}}}, + {"timestamp":1685916085476,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685916085478,"username":"Aga","action":{"action":"Score","points":4,"reason":"Fifteen two, fifteen four, look all day, see no more"}}, + {"timestamp":1685916085479,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685916085490,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685916085490,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685916085491,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Hearts"}}}, + {"timestamp":1685916085492,"username":"Aga","action":{"action":"Score","points":4,"reason":"Two and two"}}, + {"timestamp":1685916085492,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685916085494,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685916085495,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685916085496,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685916085496,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916085497,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685916085497,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685916085498,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916085499,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685916085501,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685916085501,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685916085502,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685916085502,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685916085503,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685916123729,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916124387,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685916129068,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916129701,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685916129701,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685916135606,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685916137166,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685916138410,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685916139578,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685916140661,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685916140663,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685916142631,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685916149565,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685916150430,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685916151460,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685916152298,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685916152299,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685916152300,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685916152300,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685916152301,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685916152301,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685916152302,"username":"Aga","action":{"action":"Score","points":5,"reason":"Two and two and one for his nob is 5"}}, + {"timestamp":1685916152303,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685916152303,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685916152304,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685916152305,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685916152306,"username":"Geoff","action":{"action":"Score","points":4,"reason":"Fifteen two, fifteen four, look all day, see no more"}}, + {"timestamp":1685916152307,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916152307,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685916152308,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916152308,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685916152309,"username":"Geoff","action":{"action":"Score","points":6,"reason":"Six"}}, + {"timestamp":1685916152310,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685916152320,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685916152321,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685916152322,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685916152323,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685916152323,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685916152324,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916152325,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916152335,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685916152335,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685916152336,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685916152336,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916152337,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685916152337,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685916482030,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685916488494,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685916494961,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916495895,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685916495896,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685916502700,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916504745,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685916506419,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685916508348,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685916509543,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685916510049,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916510051,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Thirty-one for two"}}, + {"timestamp":1685916516037,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685916516999,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685916517001,"username":"Aga","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685916519284,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685916519285,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685916519286,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916519286,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685916519287,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685916519288,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916519289,"username":"Geoff","action":{"action":"Score","points":8,"reason":"Fifteen two, fifteen four and four is 8"}}, + {"timestamp":1685916519289,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685916519290,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685916519290,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685916519291,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685916519292,"username":"Aga","action":{"action":"Score","points":10,"reason":"Fifteen two, fifteen four, fifteen six, fifteen eight and two is 10"}}, + {"timestamp":1685916519292,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916519293,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685916519294,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685916519294,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685916519295,"username":"Aga","action":{"action":"Score","points":5,"reason":"Fifteen two, fifteen four and one for his nob is 5"}}, + {"timestamp":1685916519295,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685916519296,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685916519310,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685916519311,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916519312,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916519317,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685916519318,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Hearts"}}}, + {"timestamp":1685916519318,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685916519319,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685916519319,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685916519320,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685916519320,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916519320,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Diamonds"}}}, + {"timestamp":1685916519322,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685916573453,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685916574470,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685916586182,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685916586856,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685916586857,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685916593700,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685916595772,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916598809,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916598810,"username":"Aga","action":{"action":"Score","points":2,"reason":"Fifteen for two"}}, + {"timestamp":1685916601590,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Hearts"}}}, + {"timestamp":1685916604391,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685916605974,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ace","suit":"Diamonds"}}}, + {"timestamp":1685916607234,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916607235,"username":"Aga","action":{"action":"Score","points":5,"reason":"Thirty-one for two and three is five"}}, + {"timestamp":1685916615507,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685916615509,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685916615510,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916615511,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685916615512,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685916615513,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685916615514,"username":"Aga","action":{"action":"Score","points":12,"reason":"Fifteen two and ten is 12"}}, + {"timestamp":1685916615514,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685916615516,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685916615517,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Hearts"}}}, + {"timestamp":1685916615517,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Diamonds"}}}, + {"timestamp":1685916615518,"username":"Geoff","action":{"action":"Score","points":7,"reason":"Fifteen two, fifteen four and three is 7"}}, + {"timestamp":1685916615519,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685916615529,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685916615531,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685916615531,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685916615532,"username":"Geoff","action":{"action":"Score","points":8,"reason":"Fifteen two, fifteen four and three and one for his nob is 8"}}, + {"timestamp":1685916615532,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685916615533,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685916615534,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685916615542,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685916615543,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916615543,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685916615544,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685916615545,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685916615545,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916615546,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Clubs"}}}, + {"timestamp":1685916615547,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685916615547,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Hearts"}}}, + {"timestamp":1685916615548,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685916615549,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685916853137,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685916853922,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Ace","suit":"Spades"}}}, + {"timestamp":1685916864523,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"King","suit":"Clubs"}}}, + {"timestamp":1685916865393,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685916865394,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685916868477,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Hearts"}}}, + {"timestamp":1685916870395,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916872313,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685916872314,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685916875363,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916875365,"username":"Aga","action":{"action":"Score","points":6,"reason":"Six"}}, + {"timestamp":1685916880053,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685916882256,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685916884916,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685916889872,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685916889874,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685916891107,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685916894335,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685916894336,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685916894337,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685916894338,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Spades"}}}, + {"timestamp":1685916894339,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Clubs"}}}, + {"timestamp":1685916894340,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Hearts"}}}, + {"timestamp":1685916894341,"username":"Geoff","action":{"action":"Score","points":12,"reason":"Fifteen two, fifteen four, fifteen six and six is 12"}}, + {"timestamp":1685916894342,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685916894342,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685916894343,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685916894343,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685916894344,"username":"Aga","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685916894344,"username":"Aga","action":{"action":"WinGame"}} + ]"#; + + let actions = serde_json::from_str(actions).unwrap(); + + let settings = r#"{"format":"Cribbage","title":"Nice Event","max_players":2,"target_score":121,"start_time":null}"#; + let settings = serde_json::from_str(settings).unwrap(); + let seed = r#"{"rng":"ChaCha20","seed":"22ba86df89426588f7646aed15a1e98503957fdb6e1a220a5a8a2d3dfa1f5b4f"}"#; + let seed = serde_json::from_str(seed).unwrap(); + + test_game(actions, settings, seed); + } + + #[test] + fn complete_cribbage_game_2() { + let actions = r#"[ + {"timestamp":1685917049486,"username":"Aga","action":{"action":"Join","seat":0,"chips":0}}, + {"timestamp":1685917053211,"username":"Geoff","action":{"action":"Join","seat":1,"chips":0}}, + {"timestamp":1685917053211,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685917053212,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685917053213,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917053214,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917053215,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685917053217,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917053217,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685917053218,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917053218,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917053219,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917053221,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685917053221,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685917053222,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917053222,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685917058333,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917058975,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685917060915,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917061210,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917061212,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685917064590,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917065791,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917065792,"username":"Aga","action":{"action":"Score","points":2,"reason":"Fifteen for two"}}, + {"timestamp":1685917068352,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917072590,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685917074725,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685917076827,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685917076828,"username":"Aga","action":{"action":"Score","points":3,"reason":"Three"}}, + {"timestamp":1685917079845,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685917081696,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685917081697,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917137113,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685917138661,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917138662,"username":"Aga","action":{"action":"Score","points":3,"reason":"Two and a go is three"}}, + {"timestamp":1685917138663,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685917138664,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917138664,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917138665,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685917138665,"username":"Geoff","action":{"action":"Score","points":4,"reason":"Fifteen two, fifteen four, look all day, see no more"}}, + {"timestamp":1685917138666,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Diamonds"}}}, + {"timestamp":1685917138667,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685917138667,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917138668,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917138668,"username":"Aga","action":{"action":"Score","points":8,"reason":"Fifteen two, fifteen four, fifteen six and two is 8"}}, + {"timestamp":1685917138669,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917138669,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917138670,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Spades"}}}, + {"timestamp":1685917138671,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917138671,"username":"Aga","action":{"action":"Score","points":6,"reason":"Fifteen two, fifteen four, fifteen six, pick up sticks"}}, + {"timestamp":1685917138672,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685917138673,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Diamonds"}}}, + {"timestamp":1685917138687,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917138688,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917138688,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917138689,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685917138690,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917138691,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917138692,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917138692,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Spades"}}}, + {"timestamp":1685917138693,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Hearts"}}}, + {"timestamp":1685917138693,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917138694,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685917138694,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685917217357,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917218187,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Seven","suit":"Spades"}}}, + {"timestamp":1685917225421,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917226020,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Nine","suit":"Hearts"}}}, + {"timestamp":1685917226021,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917229781,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Diamonds"}}}, + {"timestamp":1685917231033,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917231034,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Fifteen for two"}}, + {"timestamp":1685917233466,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685917237189,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917239236,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685917240291,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685917240292,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917243970,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917244988,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917245972,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917245973,"username":"Aga","action":{"action":"Score","points":3,"reason":"Three"}}, + {"timestamp":1685917248182,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685917248184,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917252771,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685917252772,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917252773,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Diamonds"}}}, + {"timestamp":1685917252774,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685917252775,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917252775,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917252776,"username":"Aga","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685917252776,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Clubs"}}}, + {"timestamp":1685917252777,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917252777,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917252778,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917252778,"username":"Geoff","action":{"action":"Score","points":14,"reason":"Fifteen two, fifteen four, fifteen six and eight is 14"}}, + {"timestamp":1685917252779,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917252780,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Spades"}}}, + {"timestamp":1685917252780,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917252781,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Hearts"}}}, + {"timestamp":1685917252781,"username":"Geoff","action":{"action":"Score","points":8,"reason":"Fifteen two, fifteen four and four is 8"}}, + {"timestamp":1685917252782,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685917252782,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685917252792,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917252793,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917252795,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917252796,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917252797,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917252799,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685917252804,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685917252805,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685917252805,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917252806,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917252807,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917252807,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685917293969,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685917295018,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917298157,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685917298922,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917298923,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Ace","suit":"Hearts"}}}, + {"timestamp":1685917302438,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685917304161,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917304163,"username":"Aga","action":{"action":"Score","points":2,"reason":"Fifteen for two"}}, + {"timestamp":1685917306637,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685917306638,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685917312970,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917314720,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917316589,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685917317539,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685917317540,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917320494,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917321918,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917322946,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917322948,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917322948,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685917322949,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917322949,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Clubs"}}}, + {"timestamp":1685917322949,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917322950,"username":"Geoff","action":{"action":"Score","points":10,"reason":"Fifteen two, fifteen four, fifteen six, fifteen eight and two is 10"}}, + {"timestamp":1685917322951,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917322951,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917322952,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917322952,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917322953,"username":"Aga","action":{"action":"Score","points":12,"reason":"Fifteen two, fifteen four and eight is 12"}}, + {"timestamp":1685917322953,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917322954,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Diamonds"}}}, + {"timestamp":1685917322955,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917322955,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685917322956,"username":"Aga","action":{"action":"Score","points":5,"reason":"Two and three"}}, + {"timestamp":1685917322956,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685917322957,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685917322957,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685917322957,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Diamonds"}}}, + {"timestamp":1685917322969,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917322970,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917322970,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917322971,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685917322972,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685917322973,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917322976,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Hearts"}}}, + {"timestamp":1685917322977,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685917322978,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917322979,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685917432487,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Ace","suit":"Diamonds"}}}, + {"timestamp":1685917433186,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685917439507,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917440199,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685917440201,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685917445369,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917446922,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Hearts"}}}, + {"timestamp":1685917448233,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917449583,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685917449584,"username":"Geoff","action":{"action":"Score","points":5,"reason":"Thirty-one for two and three is five"}}, + {"timestamp":1685917456551,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685917457830,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917459252,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685917459253,"username":"Aga","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685917463730,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685917463731,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917464761,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917464762,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917464763,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917464764,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Spades"}}}, + {"timestamp":1685917464764,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Diamonds"}}}, + {"timestamp":1685917464766,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917464766,"username":"Aga","action":{"action":"Score","points":8,"reason":"Fifteen two, fifteen four, fifteen six and two is 8"}}, + {"timestamp":1685917464767,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917464769,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Hearts"}}}, + {"timestamp":1685917464770,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Diamonds"}}}, + {"timestamp":1685917464771,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Hearts"}}}, + {"timestamp":1685917464773,"username":"Geoff","action":{"action":"Score","points":4,"reason":"Two and two"}}, + {"timestamp":1685917464774,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685917464792,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917464793,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Spades"}}}, + {"timestamp":1685917464794,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Diamonds"}}}, + {"timestamp":1685917464796,"username":"Geoff","action":{"action":"Score","points":4,"reason":"Fifteen two, fifteen four, look all day, see no more"}}, + {"timestamp":1685917464797,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685917464798,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917464799,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917464799,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917464800,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917464801,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685917464803,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Spades"}}}, + {"timestamp":1685917464803,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685917464804,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917464805,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ten","suit":"Diamonds"}}}, + {"timestamp":1685917464805,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685917464806,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917464807,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685917464808,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685917525351,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685917527096,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917539097,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Ten","suit":"Diamonds"}}}, + {"timestamp":1685917540284,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685917540286,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Five","suit":"Diamonds"}}}, + {"timestamp":1685917556509,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685917558692,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917558693,"username":"Aga","action":{"action":"Score","points":2,"reason":"Fifteen for two"}}, + {"timestamp":1685917562343,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917562344,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Two"}}, + {"timestamp":1685917565229,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685917569389,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685917570500,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685917570501,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917572790,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917574771,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917575937,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917577090,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Seven","suit":"Spades"}}}, + {"timestamp":1685917577091,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917577091,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917577093,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917577094,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917577095,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685917577096,"username":"Geoff","action":{"action":"Score","points":12,"reason":"Fifteen two, fifteen four, fifteen six, fifteen eight and two and two is 12"}}, + {"timestamp":1685917577097,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917577097,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685917577098,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917577099,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Spades"}}}, + {"timestamp":1685917577099,"username":"Aga","action":{"action":"Score","points":15,"reason":"Fifteen"}}, + {"timestamp":1685917577100,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Spades"}}}, + {"timestamp":1685917577100,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Clubs"}}}, + {"timestamp":1685917577102,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685917577136,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Ten","suit":"Diamonds"}}}, + {"timestamp":1685917577137,"username":"Aga","action":{"action":"Score","points":14,"reason":"Fifteen two, fifteen four, fifteen six, fifteen eight and six is 14"}}, + {"timestamp":1685917577139,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685917577140,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685917577140,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685917577141,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Diamonds"}}}, + {"timestamp":1685917577142,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Clubs"}}}, + {"timestamp":1685917577143,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917577144,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685917577144,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917577145,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917577145,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917577146,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685917577146,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917577147,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917577147,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685917603853,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917604503,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685917610790,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917611356,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685917611357,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Seven","suit":"Diamonds"}}}, + {"timestamp":1685917619138,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Queen","suit":"Diamonds"}}}, + {"timestamp":1685917620633,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685917622546,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917623842,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917625206,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917625207,"username":"Aga","action":{"action":"Score","points":2,"reason":"Thirty-one for two"}}, + {"timestamp":1685917628237,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685917629623,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917630688,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Ace","suit":"Clubs"}}}, + {"timestamp":1685917630689,"username":"Geoff","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917630690,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917630691,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Spades"}}}, + {"timestamp":1685917630693,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Clubs"}}}, + {"timestamp":1685917630694,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Diamonds"}}}, + {"timestamp":1685917630696,"username":"Aga","action":{"action":"Score","points":7,"reason":"Fifteen two, fifteen four and three is 7"}}, + {"timestamp":1685917630697,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685917630698,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Hearts"}}}, + {"timestamp":1685917630699,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917630701,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Ace","suit":"Clubs"}}}, + {"timestamp":1685917630717,"username":"Geoff","action":{"action":"Score","points":6,"reason":"Fifteen two, fifteen four and two is 6"}}, + {"timestamp":1685917630719,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Spades"}}}, + {"timestamp":1685917630719,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Eight","suit":"Clubs"}}}, + {"timestamp":1685917630721,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Clubs"}}}, + {"timestamp":1685917630722,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917630724,"username":"Geoff","action":{"action":"Score","points":4,"reason":"Fifteen two and two is 4"}}, + {"timestamp":1685917630725,"username":"Aga","action":{"action":"NextToDeal"}}, + {"timestamp":1685917630727,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917630728,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685917630729,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685917630730,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Diamonds"}}}, + {"timestamp":1685917630731,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917630732,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917630733,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917630734,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917630735,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917630737,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917630738,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917630739,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917630741,"username":"Aga","action":{"action":"EndDeal"}}, + {"timestamp":1685917840475,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917841044,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917847130,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917847707,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917847709,"username":"Aga","action":{"action":"CommunityCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685917852686,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917854364,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917856139,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685917857542,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917858732,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917860394,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685917860395,"username":"Aga","action":{"action":"Score","points":4,"reason":"Four"}}, + {"timestamp":1685917864041,"username":"Geoff","action":{"action":"Pass"}}, + {"timestamp":1685917865148,"username":"Aga","action":{"action":"Pass"}}, + {"timestamp":1685917865149,"username":"Aga","action":{"action":"Score","points":1,"reason":"One for a go"}}, + {"timestamp":1685917870937,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917872081,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Diamonds"}}}, + {"timestamp":1685917872082,"username":"Aga","action":{"action":"Score","points":3,"reason":"Fifteen for two and a go is three"}}, + {"timestamp":1685917872082,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917872083,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Hearts"}}}, + {"timestamp":1685917872083,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Five","suit":"Spades"}}}, + {"timestamp":1685917872084,"username":"Geoff","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Diamonds"}}}, + {"timestamp":1685917872085,"username":"Geoff","action":{"action":"Score","points":14,"reason":"Fifteen two, fifteen four, fifteen six and eight is 14"}}, + {"timestamp":1685917872086,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917872086,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Three","suit":"Clubs"}}}, + {"timestamp":1685917872087,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Diamonds"}}}, + {"timestamp":1685917872087,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917872088,"username":"Aga","action":{"action":"Score","points":7,"reason":"Fifteen two, fifteen four and two and one for his nob is 7"}}, + {"timestamp":1685917872089,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917872089,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Six","suit":"Clubs"}}}, + {"timestamp":1685917872090,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Queen","suit":"Hearts"}}}, + {"timestamp":1685917872090,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"King","suit":"Hearts"}}}, + {"timestamp":1685917872091,"username":"Aga","action":{"action":"Score","points":2,"reason":"Fifteen two, and the rest won't do"}}, + {"timestamp":1685917872092,"username":"Geoff","action":{"action":"NextToDeal"}}, + {"timestamp":1685917872093,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Ace","suit":"Clubs"}}}, + {"timestamp":1685917872137,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Clubs"}}}, + {"timestamp":1685917872138,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917872138,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Six","suit":"Hearts"}}}, + {"timestamp":1685917872139,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917872140,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685917872140,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917872141,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685917872141,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685917872142,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Diamonds"}}}, + {"timestamp":1685917872142,"username":"Aga","action":{"action":"ReceiveCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685917872143,"username":"Geoff","action":{"action":"ReceiveCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917872143,"username":"Geoff","action":{"action":"EndDeal"}}, + {"timestamp":1685917903694,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Two","suit":"Hearts"}}}, + {"timestamp":1685917904310,"username":"Geoff","action":{"action":"PutInBox","card":{"rank":"Six","suit":"Hearts"}}}, + {"timestamp":1685917913352,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"Ace","suit":"Clubs"}}}, + {"timestamp":1685917913962,"username":"Aga","action":{"action":"PutInBox","card":{"rank":"King","suit":"Spades"}}}, + {"timestamp":1685917913963,"username":"Geoff","action":{"action":"CommunityCard","card":{"rank":"Four","suit":"Hearts"}}}, + {"timestamp":1685917919478,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917920627,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Hearts"}}}, + {"timestamp":1685917922747,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685917924073,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"King","suit":"Clubs"}}}, + {"timestamp":1685917924075,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Thirty-one for two"}}, + {"timestamp":1685917929987,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685917931267,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Spades"}}}, + {"timestamp":1685917932774,"username":"Aga","action":{"action":"PlayCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917933955,"username":"Geoff","action":{"action":"PlayCard","card":{"rank":"Jack","suit":"Diamonds"}}}, + {"timestamp":1685917933956,"username":"Geoff","action":{"action":"Score","points":2,"reason":"Thirty-one for two"}}, + {"timestamp":1685917933957,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Two","suit":"Clubs"}}}, + {"timestamp":1685917933958,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Four","suit":"Diamonds"}}}, + {"timestamp":1685917933959,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Seven","suit":"Clubs"}}}, + {"timestamp":1685917933959,"username":"Aga","action":{"action":"RevealCard","card":{"rank":"Nine","suit":"Diamonds"}}}, + {"timestamp":1685917933960,"username":"Aga","action":{"action":"Score","points":8,"reason":"Fifteen two, fifteen four, fifteen six and two is 8"}}, + {"timestamp":1685917933972,"username":"Aga","action":{"action":"WinGame"}} + ]"#; + + let actions = serde_json::from_str(actions).unwrap(); + + let settings = r#"{"format":"Cribbage","title":"Peerless Juncture","max_players":2,"target_score":121,"start_time":null}"#; + let settings = serde_json::from_str(settings).unwrap(); + let seed = r#"{"rng":"ChaCha20","seed":"02f1522d05ef62fad10eebfee8ac0b52df61105ae957f7b64d553a96fba064d9"}"#; + let seed = serde_json::from_str(seed).unwrap(); + + test_game(actions, settings, seed); + } }