# File lib/aws/simple_workflow/history_event.rb, line 231
        def _cast key, value
          case key
          when /Timeout$/
            value.to_s =~ /^\d+$/ ? value.to_i : value.downcase.to_sym
          when 'taskList'
            value['name']
          when 'childPolicy'
            value.downcase.to_sym
          when 'activityType'
            name = value['name']
            version = value['version']
            @workflow_execution.domain.activity_types[name,version]
          when 'workflowType'
            name = value['name']
            version = value['version']
            @workflow_execution.domain.workflow_types[name,version]
          when 'workflowExecution'
            workflow_id = value['workflowId']
            run_id = value['runId']
            @workflow_execution.domain.workflow_executions[workflow_id, run_id]
          else
            case value
            when Array then value.collect{|v| _cast(key,v) }
            when Hash then Attributes.new(@workflow_execution, value)
            else value
            end
          end
        end