Hearthstone game state:
[{'ENTITY_ID': '1', 'ZONE': 'PLAY', 'CARDTYPE': 'GAME', 'STATE': '2'}, {'ENTITY_ID': '2', 'PLAYSTATE': 'PLAYING', 'RESOURCES': '6', 'HERO_ENTITY': '64', 'MAXHANDSIZE': '10', 'PLAYER_ID': '1', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CARDTYPE': 'PLAYER'}, {'ENTITY_ID': '3', 'PLAYSTATE': 'PLAYING', 'RESOURCES_USED': '4', 'RESOURCES': '6', 'HERO_ENTITY': '66', 'MAXHANDSIZE': '10', 'PLAYER_ID': '2', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CARDTYPE': 'PLAYER'}, {'TEXT': 'Deal $2 damage\nto a minion. <b>Finale:</b> <b>Discover</b> a Fel spell.', 'ENTITY_ID': '7', 'COST': '1', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '1'}, {'TEXT': '[x]After you cast a spell,\ngain +1 Attack until\nyour next turn.', 'ENTITY_ID': '8', 'HEALTH': '3', 'ATK': '1', 'COST': '1', 'LAST_AFFECTED_BY': '25', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDRACE': '92', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '1', 'CARD_TARGET': '100'}, {'TEXT': '[x]After you cast a spell,\ngain +1 Attack until\nyour next turn.', 'ENTITY_ID': '11', 'HEALTH': '3', 'ATK': '1', 'COST': '1', 'LAST_AFFECTED_BY': '25', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDRACE': '92', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '2', 'CARD_TARGET': '100'}, {'TEXT': 'After your hero attacks, gain +1 Attack.', 'ENTITY_ID': '24', 'HEALTH': '3', 'ATK': '1', 'COST': '1', 'LAST_AFFECTED_BY': '25', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDRACE': '15', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '5'}, {'TEXT': '<b>Charge</b>\nAll friendly attacks ignore_<b>Taunt</b>.', 'ENTITY_ID': '25', 'HEALTH': '5', 'ATK': '3', 'COST': '4', 'LAST_AFFECTED_BY': '25', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CHARGE': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '3', 'CARD_TARGET': '66'}, {'TEXT': '<b>Rush</b>. After your hero attacks an enemy, this attacks it too.', 'ENTITY_ID': '26', 'HEALTH': '8', 'ATK': '8', 'COST': '8', 'ZONE': 'HAND', 'CONTROLLER': '1', 'RUSH': '1', 'CLASS': 'DEMONHUNTER', 'CARDRACE': '15', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '2'}, {'TEXT': '<b>Lifesteal</b>. Deal $3 damage to a minion.\n<b>Outcast:</b> This costs (1).', 'ENTITY_ID': '28', 'COST': '3', 'ZONE': 'HAND', 'CONTROLLER': '1', 'LIFESTEAL': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '3'}, {'TEXT': 'Swap your Hero Power to "Deal 5 damage." After 2 uses, swap it back.', 'ENTITY_ID': '33', 'COST': '4', 'ZONE': 'HAND', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'SPELL', 'ZONE_POSITION': '4'}, {'ENTITY_ID': '34', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '1'}, {'ENTITY_ID': '40', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '4'}, {'TEXT': '<b>Taunt</b>', 'ENTITY_ID': '49', 'HEALTH': '2', 'ATK': '2', 'COST': '2', 'EXHAUSTED': '1', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'TAUNT': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '1'}, {'ENTITY_ID': '50', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '2'}, {'ENTITY_ID': '52', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '3'}, {'ENTITY_ID': '53', 'ZONE': 'HAND', 'CONTROLLER': '2', 'ZONE_POSITION': '5'}, {'TEXT': '', 'ENTITY_ID': '64', 'HEALTH': '30', 'LAST_AFFECTED_BY': '25', 'DAMAGE': '5', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'HERO', 'CARD_TARGET': '47'}, {'TEXT': '[x]<b>Hero Power</b>\n+$a1 Attack this turn.', 'ENTITY_ID': '65', 'COST': '1', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'HERO_POWER'}, {'TEXT': '', 'ENTITY_ID': '66', 'HEALTH': '30', 'LAST_AFFECTED_BY': '94', 'DAMAGE': '20', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'SHAMAN', 'CARDTYPE': 'HERO', 'CARD_TARGET': '23'}, {'TEXT': '<b>Hero Power</b>\nSummon a random basic Totem.', 'ENTITY_ID': '67', 'COST': '2', 'EXHAUSTED': '1', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'SHAMAN', 'CARDTYPE': 'HERO_POWER'}, {'TEXT': '<b>Rush</b>', 'ENTITY_ID': '94', 'HEALTH': '1', 'ATK': '1', 'COST': '1', 'LAST_AFFECTED_BY': '25', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'RUSH': '1', 'CLASS': 'DEMONHUNTER', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '4', 'CARD_TARGET': '66'}, {'TEXT': 'Kayn is letting this ignore <b>Taunt</b>.', 'ENTITY_ID': '102', 'ATTACHED': '11', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': 'Kayn is letting this ignore <b>Taunt</b>.', 'ENTITY_ID': '103', 'ATTACHED': '8', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': 'Kayn is letting this ignore <b>Taunt</b>.', 'ENTITY_ID': '104', 'ATTACHED': '94', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': 'Kayn is letting this ignore <b>Taunt</b>.', 'ENTITY_ID': '105', 'ATTACHED': '25', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': 'Kayn is letting this ignore <b>Taunt</b>.', 'ENTITY_ID': '106', 'ATTACHED': '64', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': 'Kayn is letting this ignore <b>Taunt</b>.', 'ENTITY_ID': '108', 'ATTACHED': '24', 'ZONE': 'PLAY', 'CONTROLLER': '1', 'CLASS': 'NEUTRAL', 'CARDTYPE': 'ENCHANTMENT'}, {'TEXT': 'At the end of your turn, restore #1 Health to all friendly minions.', 'ENTITY_ID': '110', 'HEALTH': '2', 'COST': '1', 'EXHAUSTED': '1', 'ZONE': 'PLAY', 'CONTROLLER': '2', 'CLASS': 'SHAMAN', 'CARDRACE': '21', 'CARDTYPE': 'MINION', 'ZONE_POSITION': '2'}]

Available options:
{'ID': 48, 'List': [{'Type': 'END_TURN', 'Main': {'ID': 0, 'Targets': None, 'PlayErrorInfo': {'PlayError': 'INVALID', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 7, 'Targets': [{'ID': 11, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 8, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 94, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 25, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 49, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 110, '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': 28, 'Targets': [{'ID': 11, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 8, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 94, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 25, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 49, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 110, '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': 33, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 65, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 11, 'Targets': [{'ID': 66, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 49, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 110, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 11, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 8, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 94, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 25, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 8, 'Targets': [{'ID': 66, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 49, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 110, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 11, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 8, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 94, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 25, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 94, 'Targets': [{'ID': 66, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 49, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 110, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 11, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 8, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 94, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 25, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 25, 'Targets': [{'ID': 66, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 49, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 110, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 11, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 8, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 94, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 25, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 24, 'Targets': [{'ID': 66, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 49, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 110, 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, {'ID': 64, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 11, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 8, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 94, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 25, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}, {'ID': 24, 'PlayErrorInfo': {'PlayError': 'REQ_ENEMY_TARGET', 'PlayErrorParam': None}}], 'PlayErrorInfo': {'PlayError': 'NONE', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 26, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_ENOUGH_MANA', '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': 49, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_YOUR_TURN', 'PlayErrorParam': None}}, 'Subs': []}, {'Type': 'POWER', 'Main': {'ID': 110, 'Targets': [], 'PlayErrorInfo': {'PlayError': 'REQ_YOUR_TURN', 'PlayErrorParam': None}}, 'Subs': []}]}

Chosen action:
HasSubOption: yes
HasPosition: yes
Id: 48
Index: 2
Target: 49
SubOption: -1
Position: 0

Outcome:
ENTITY_ID: 2
RESOURCES_USED: 0=>3
ENTITY_ID: 8
ATK: 1=>2
LAST_AFFECTED_BY: 25=>8
ENTITY_ID: 11
ATK: 1=>2
LAST_AFFECTED_BY: 25=>11
ENTITY_ID: 33
ZONE_POSITION: 4=>3
ENTITY_ID: 64
DAMAGE: 5=>2
ENTITY_ID: 110
ZONE_POSITION: 2=>1
TEXT: +1 Attack until your next turn.
ENTITY_ID: 112
ATTACHED: 11
ZONE: PLAY
CONTROLLER: 1
CLASS: NEUTRAL
CARDTYPE: ENCHANTMENT
TEXT: +1 Attack until your next turn.
ENTITY_ID: 113
ATTACHED: 8
ZONE: PLAY
CONTROLLER: 1
CLASS: NEUTRAL
CARDTYPE: ENCHANTMENT