Hearthstone game state:
[{'ENTITY_ID': '1', 'ZONE': 'PLAY', 'CARDTYPE': 'GAME', 'STATE': '2'}, {'ENTITY_ID': '2', 'PLAYSTATE': 'PLAYING', 'LAST_AFFECTED_BY': '30', 'RESOURCES_USED': '3', 'RESOURCES': '10', 'HERO_ENTITY': '64', 'MAXHANDSIZE': '10', 'PLAYER_ID': '1', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CARDTYPE': 'PLAYER'}, {'ENTITY_ID': '3', 'PLAYSTATE': 'PLAYING', 'RESOURCES_USED': '6', 'RESOURCES': '10', 'HERO_ENTITY': '66', 'MAXHANDSIZE': '10', 'PLAYER_ID': '2', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CARDTYPE': 'PLAYER'}, {'TEXT': '<b>Battlecry:</b> Summon a 1/1_Murloc Scout.', 'ENTITY_ID': '5', 'HEALTH': '1', 'ATK': '2', 'COST': '2', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDRACE': '14', 'CARDTYPE': 'MINION', 'BATTLECRY': '1', 'ZONE_POSITION': '3'}, {'TEXT': 'Swap your Hero Power to "Deal 5 damage." After 2 uses, swap it back.', 'ENTITY_ID': '12', 'COST': '4', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '1'}, {'TEXT': 'Summon seven 1/1 Illidari with <b>Rush</b>. If_they all die this turn, summon seven more.', 'ENTITY_ID': '20', 'COST': '7', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '2'}, {'TEXT': '<b>Outcast:</b> Draw a card.', 'ENTITY_ID': '22', 'HEALTH': '1', 'ATK': '1', 'COST': '1', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '4', 'CARD_TARGET': '66'}, {'TEXT': '<b>Outcast:</b> Give your hero +3_Attack this turn.', 'ENTITY_ID': '24', 'HEALTH': '3', 'ATK': '3', 'COST': '3', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDRACE': '15', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '1'}, {'TEXT': '<b>Battlecry:</b> The next Demon you play costs (2) less.', 'ENTITY_ID': '30', 'HEALTH': '4', 'ATK': '4', 'COST': '4', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'MINION', 'BATTLECRY': '1', 'ZONE_POSITION': '3', 'CARD_TARGET': '66'}, {'TEXT': 'Whenever this minion takes damage, gain +3_Attack.', 'ENTITY_ID': '38', 'HEALTH': '8', 'ATK': '5', 'COST': '5', 'LAST_AFFECTED_BY': '38', 'EXHAUSTED': '1', 'DAMAGE': '3', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '2', 'CARD_TARGET': '25'}, {'TEXT': '<b>Taunt</b>', 'ENTITY_ID': '40', 'HEALTH': '5', 'ATK': '3', 'COST': '4', 'LAST_AFFECTED_BY': '8', 'EXHAUSTED': '1', 'DAMAGE': '2', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'TAUNT': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '1'}, {'TEXT': '', 'ENTITY_ID': '64', 'HEALTH': '30', 'ATK': '3', 'LAST_AFFECTED_BY': '65', 'DAMAGE': '11', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'HERO', 'CARD_TARGET': '58'}, {'TEXT': '[x]<b>Hero Power</b>\n+$a1 Attack this turn.', 'ENTITY_ID': '65', 'COST': '1', 'EXHAUSTED': '1', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'HERO_POWER'}, {'TEXT': '', 'ENTITY_ID': '66', 'HEALTH': '30', 'ARMOR': '2', 'LAST_AFFECTED_BY': '30', 'DAMAGE': '21', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'WARRIOR', 'CARDTYPE': 'HERO', 'CARD_TARGET': '16'}, {'TEXT': '<b>Hero Power</b>\nGain $d2 Armor.', 'ENTITY_ID': '67', 'COST': '2', 'EXHAUSTED': '1', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'WARRIOR', 'CARDTYPE': 'HERO_POWER'}, {'TEXT': '', 'ENTITY_ID': '122', 'HEALTH': '1', 'ATK': '1', 'COST': '1', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDRACE': '14', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '2', 'CARD_TARGET': '66'}, {'TEXT': 'This minion has increased Attack.', 'ENTITY_ID': '132', 'ATTACHED': '38', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': '+2 Attack this turn.', 'ENTITY_ID': '134', 'ATTACHED': '64', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': 'Your hero has extra Attack this turn.', 'ENTITY_ID': '135', 'ATTACHED': '64', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DRUID', 'CARDTYPE': 'ENCHANTMENT'}]

Available options:
{'ID': 102, 'List': [{'Type': 'END_TURN', 'Main': {'ID': 0, 'Targets': None, 'PlayErrorInfo': {'PlayError': 'INVALID', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 12, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 20, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 5, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 64, 'Targets': [{'ID': 40, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 22, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 122, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 30, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 38, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 22, 'Targets': [{'ID': 40, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 22, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 122, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 30, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 38, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 122, 'Targets': [{'ID': 40, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 22, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 122, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 30, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 38, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 30, 'Targets': [{'ID': 40, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 22, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 122, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 30, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 38, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 24, 'Targets': [{'ID': 40, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 22, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 122, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 30, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 38, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}, {'ID': 66, 'PlayErrorInfo': {'PlayError': 'REQ_TARGET_TAUNTER', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 65, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_NOT_EXHAUSTED_HERO_POWER', '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': 38, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_YOUR_TURN', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 40, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_YOUR_TURN', 'PlayErrorParam': None}}, 'Subs': []}]}

Chosen action:
HasSubOption: yes
HasPosition: yes
Id: 102
Index: 4
Target: 40
SubOption: -1
Position: 0

Outcome:
ENTITY_ID: 38
ZONE_POSITION: 2=>1
ENTITY_ID: 64
LAST_AFFECTED_BY: 65=>40
EXHAUSTED: 0=>1
DAMAGE: 11=>14
CARD_TARGET: 58=>40
NUM_ATTACKS_THIS_TURN: 0=>1