!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Role data structures.(c) Henry J. Wylde, 2015BSD3public@hjwylde.comNone     Player data structures.(c) Henry J. Wylde, 2015BSD3public@hjwylde.comNone !"#$%&'()*+ !"#$%&'()*+ !"#$%&'()*+ !"#$%&'()*+Game and turn data structures.(c) Henry J. Wylde, 2015BSD3public@hjwylde.comNone,-./0123456789:;<=>?@AB,-./0123456789:;<=>?@AB123456978:;<=>?@,-./0AB,-./0123456789:;<=>?@AB%Response and message data structures.(c) Henry J. Wylde, 2015BSD3public@hjwylde.comNone0/CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij(CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij(GHIJKLMNOCDEFPQRSTUVWXYZ[\]^_`abcdefghij)CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijEngine functions.(c) Henry J. Wylde, 2015BSD3public@hjwylde.comNone4klmnopqrstuvwxyz{|}~klmnopqrstuvwxyz{|}~klmnopqrstuwvxyz{|}~klmnopqrstuvwxyz{|}~Command data structures.(c) Henry J. Wylde, 2015BSD3public@hjwylde.comNone4IN         !"#$%&'()*+,-. /00123456789:;<=>?@AABCDDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi:;<=>jklmnopq%rstuvwxxyz{|}~werew_7elFavY0DYlDH3WYBqa7arGame.Werewolf.RoleGame.Werewolf.PlayerGame.Werewolf.GameGame.Werewolf.ResponseGame.Werewolf.EngineGame.Werewolf.Command Allegiance Villagers WerewolvesRole_name _allegiance _description_adviceallRolesseerRole villagerRole werewolfRole findByName findByName_advice allegiance descriptionnameStateAliveDeadPlayer_role_staterolestate newPlayer filterSeersfilterVillagersfilterWerewolvesdoesPlayerExistisSeer isVillager isWerewolfisAliveisDead filterAlive filterDeadTurnSeersNoOneGame_turn_players_sees_votesplayersseesturnvotesnewGame killPlayer isSeersTurnisVillagersTurnisWerewolvesTurn isGameOver turnRotation turnAvailableMessagetomessageResponseokmessagessuccessfailureexitWith exitSuccess exitFailure publicMessageprivateMessagenewGameMessages turnMessagesnightFallsMessagegameOverMessageplayerQuitMessageseersTurnMessagesplayerSeenMessagevillagersTurnMessageplayerMadeLynchVoteMessageplayerLynchedMessagenoPlayerLynchedMessagewerewolvesTurnMessagesplayerMadeDevourVoteMessageplayerDevouredMessagenoPlayerDevouredMessagegameIsOverMessageplayerDoesNotExistMessageplayerCannotDoThatMessage!playerCannotDoThatRightNowMessageplayerIsDeadMessageroleDoesNotExistMessageplayerHasAlreadySeenMessageplayerHasAlreadyVotedMessagetargetIsDeadMessage!playerCannotDevourAnotherWerewolf checkTurn checkGameOver startGame getPlayerSee getPlayerVotedefaultFilePathreadGame writeGame deleteGame doesGameExist createPlayers isPlayerSeerisPlayerVillagerisPlayerWerewolf isPlayerAlive isPlayerDeadrandomiseRolesCommandapplydevourVoteCommandlynchVoteCommand noopCommand quitCommand seeCommandplayersInGameMessagerolesInGameMessagenewPlayerMessage$fToJSONMessage$fFromJSONMessage$fToJSONResponse$fFromJSONResponse checkTurn'only advanceTurndefaultFileNamevalidatePlayer