'StartWorkflowExecution.'

@wraps(Layer1.start_workflow_execution)
def start(self, **kwargs):

    if ('workflow_id' in kwargs):
        workflow_id = kwargs['workflow_id']
        del kwargs['workflow_id']
    else:
        workflow_id = ('%s-%s-%i' % (self.name, self.version, time.time()))
    for def_attr in ('task_list', 'child_policy'):
        kwargs[def_attr] = kwargs.get(def_attr, getattr(self, def_attr))
    run_id = self._swf.start_workflow_execution(self.domain, workflow_id, self.name, self.version, **kwargs)['runId']
    return WorkflowExecution(name=self.name, version=self.version, runId=run_id, domain=self.domain, workflowId=workflow_id, aws_access_key_id=self.aws_access_key_id, aws_secret_access_key=self.aws_secret_access_key)
