Hearthstone game state:
[{'ENTITY_ID': '1', 'ZONE': 'PLAY', 'CARDTYPE': 'GAME', 'STATE': '2'}, {'ENTITY_ID': '2', 'PLAYSTATE': 'PLAYING', 'RESOURCES': '4', 'HERO_ENTITY': '64', 'MAXHANDSIZE': '10', 'PLAYER_ID': '1', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CARDTYPE': 'PLAYER'}, {'ENTITY_ID': '3', 'PLAYSTATE': 'PLAYING', 'RESOURCES_USED': '4', 'RESOURCES': '4', 'HERO_ENTITY': '66', 'MAXHANDSIZE': '10', 'PLAYER_ID': '2', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CARDTYPE': 'PLAYER'}, {'TEXT': '<b>Taunt</b>', 'ENTITY_ID': '5', 'HEALTH': '3', 'ATK': '1', 'COST': '1', 'ZONE': 'HAND', 'CONTROLLER': '1', 'TAUNT': '1', 'CLASS': 'WARLOCK', 'CARDRACE': '15', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '5'}, {'TEXT': 'Give a friendly\nminion +3/+3 until your next turn.', 'ENTITY_ID': '8', 'COST': '1', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'WARLOCK', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '1'}, {'TEXT': 'Destroy a friendly Demon. Restore #5 Health to your hero.', 'ENTITY_ID': '25', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'WARLOCK', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '3'}, {'TEXT': '<b>Taunt</b>', 'ENTITY_ID': '27', 'HEALTH': '3', 'ATK': '1', 'COST': '1', 'LAST_AFFECTED_BY': '51', 'EXHAUSTED': '1', 'DAMAGE': '2', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'TAUNT': '1', 'CLASS': 'WARLOCK', 'CARDRACE': '15', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '2', 'CARD_TARGET': '51', 'NUM_ATTACKS_THIS_TURN': '1'}, {'TEXT': '', 'ENTITY_ID': '29', 'HEALTH': '3', 'ATK': '2', 'COST': '2', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDRACE': '20', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '1', 'CARD_TARGET': '66'}, {'TEXT': 'Deal $1 damage to a minion. If that kills it, draw a card.', 'ENTITY_ID': '33', 'COST': '1', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'WARLOCK', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '2'}, {'ENTITY_ID': '37', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '6'}, {'ENTITY_ID': '39', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '5'}, {'ENTITY_ID': '41', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '4'}, {'ENTITY_ID': '47', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '7'}, {'TEXT': '<b>Battlecry:</b> Draw a card.', 'ENTITY_ID': '51', 'HEALTH': '4', 'ATK': '2', 'COST': '4', 'LAST_AFFECTED_BY': '27', 'EXHAUSTED': '1', 'DAMAGE': '1', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'MINION', 'BATTLECRY': '1', 'ZONE_POSITION': '1'}, {'ENTITY_ID': '56', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '2'}, {'ENTITY_ID': '62', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '3'}, {'ENTITY_ID': '63', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '1'}, {'TEXT': '', 'ENTITY_ID': '64', 'HEALTH': '30', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'WARLOCK', 'CARDTYPE': 'HERO'}, {'TEXT': '<b>Hero Power</b>\nDraw a card and take $2_damage.', 'ENTITY_ID': '65', 'COST': '2', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'WARLOCK', 'CARDTYPE': 'HERO_POWER'}, {'TEXT': '', 'ENTITY_ID': '66', 'HEALTH': '30', 'LAST_AFFECTED_BY': '29', 'DAMAGE': '2', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'PALADIN', 'CARDTYPE': 'HERO'}, {'TEXT': '<b>Hero Power</b>\nSummon a 1/1 Silver Hand Recruit.', 'ENTITY_ID': '67', 'COST': '2', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'PALADIN', 'CARDTYPE': 'HERO_POWER'}, {'TEXT': '<b>Battlecry:</b> <b>Discover</b> a <b>Secret</b> from another class.', 'ENTITY_ID': '80', 'HEALTH': '2', 'ATK': '2', 'COST': '2', 'LAST_AFFECTED_BY': '32', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'MINION', 'BATTLECRY': '1', 'ZONE_POSITION': '3'}, {'TEXT': '<b>Secret:</b> When a minion attacks your hero, instead it attacks one of_its neighbors.', 'ENTITY_ID': '87', 'COST': '2', 'LAST_AFFECTED_BY': '80', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'ROGUE', 'CARDTYPE': 'SPELL', 'SECRET': '1', 'ZONE_POSITION': '4'}]

Available options:
{'ID': 20, 'List': [{'Type': 'END_TURN', 'Main': {'ID': 0, 'Targets': None, 'PlayErrorInfo': {'PlayError': 'INVALID', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 33, 'Targets': [{'ID': 29, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 80, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 27, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 51, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_MINION_TARGET', 'PlayErrorParam': None}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_MINION_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 8, 'Targets': [{'ID': 29, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 80, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 27, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_MINION_TARGET', 'PlayErrorParam': None}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_FRIENDLY_TARGET', 'PlayErrorParam': None}}, {'ID': 51, 'PlayErrorInfo': {'PlayError': 'REQ_FRIENDLY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 25, 'Targets': [{'ID': 27, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_WITH_RACE', 'PlayErrorParam': 15}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_FRIENDLY_TARGET', 'PlayErrorParam': None}}, {'ID': 29, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_WITH_RACE', 'PlayErrorParam': 15}}, {'ID': 80, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_WITH_RACE', 'PlayErrorParam': 15}}, {'ID': 51, 'PlayErrorInfo': {'PlayError': 'REQ_FRIENDLY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 87, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 5, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 65, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 29, 'Targets': [{'ID': 66, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 51, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 29, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 80, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 27, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 80, 'Targets': [{'ID': 66, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 51, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 29, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 80, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 27, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 64, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_ATTACK_GREATER_THAN_0', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 66, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_YOUR_TURN', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 67, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_YOUR_TURN', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 27, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_NOT_EXHAUSTED_ACTIVATE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 51, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_YOUR_TURN', 'PlayErrorParam': None}}, 'Subs': []}]}

Chosen action:
HasSubOption: yes
HasPosition: yes
Id: 20
Index: 7
Target: 51
SubOption: -1
Position: 0

Outcome:
ENTITY_ID: 29
LAST_AFFECTED_BY: 0=>51
EXHAUSTED: 0=>1
DAMAGE: 0=>2
CARD_TARGET: 66=>51
NUM_ATTACKS_THIS_TURN: 0=>1
ENTITY_ID: 51
LAST_AFFECTED_BY: 27=>29
DAMAGE: 1=>3