{"action":"created","comment":{"url":"https://api.github.com/repos/idaholab/raven/pulls/comments/167334595","pull_request_review_id":95545050,"id":167334595,"diff_hunk":"@@ -0,0 +1,229 @@\n+\\section{Ensemble Models}\n+\\label{sec:ensembleModel}\n+\n+% TODO\n+% Introduction\n+% Data Objects are the Key\n+% Model Definition\n+\n+In most RAVEN MultiRun steps, a sampler provides a variety of inputs to a model, whose outputs then produce a\n+set of responses that can be used in many ways.  However, sometimes a single model is insufficient to produce\n+the response we want.  When this happens, the EnsembleModel opens up a new vista of simulation options.\n+\n+The EnsembleModel is a powerful tool for chaining multiple models together, with outputs of some models\n+becoming inputs for others.  Whether this is adding a preprocessing or postprocessing model, or linking\n+multiple physics-based models together, the EnsembleModel provides the functionality to see many models\n+together as a single model in a MultiRun step.\n+\n+Note that the Ensemble Model combines multiple models for \\emph{each sample}; that is, the whole ensemble of\n+models is run for each sample taken by RAVEN.  If instead you want to postprocess a batch of sampled data, try\n+the PostProcessor models instead.\n+\n+\\subsection{Introduction: The Ensemble Model}\n+The key to the Ensemble Model is careful definition of the inputs and outputs of each model.  When an\n+Ensemble Model is defined in a RAVEN run, RAVEN will automatically scan the inputs and outputs of each model\n+and determine the right order to evaluate the models in (or \\emph{graph}).\n+\n+\\subsection{Example: ballistics and impact}\n+% TODO add an image showing these two models, their inputs and outputs\n+As a basic example, consider two physics models.  The first is a ballistics code, used to determine the\n+kinetic energy $E$ of a ball when it hits the ground, with a path depending on its initial height $y_0$, initial velocity\n+$v_0$, mass $m$ and initial angle $\\theta_0$.  We'll assume we're near the Earth's surface and aside from the initial\n+launch height, we're launching over a flat surface.  This can be represented as a functional $E(y_0,v_0,m,\\theta_0)$.\n+\n+The second physics model is an impact code that estimates the diameter of the crater $D$ made when a ball\n+impacts.  With a few simplifying assumptions ($D$ is under 1 km, the impact is near Earth's surface, the\n+impact is in dry sand with fixed density), size $D$ can be determined as a function of the ball's kinetic\n+energy when impacting $E$, its mass $m$, and its radius $r$: $D(E,m,r)$.\n+\n+We can see that the input $E$ for the impact model is calculated by the ballistics code.  In RAVEN the\n+ensemble model will automatically detect this, and run the ballistics code before the impact code in each\n+iteration.\n+\n+In general, the EnsembleModel also has some finite capacity for resolving circular dependencies using Picard\n+iteration.  See the manual for more information on this capability.\n+\n+Setting up an ensemble model can be a tricky process, so we'll walk through the input using our example\n+outlined above.  For\n+our purposes, we're going to let RAVEN perturb the codes using the GenericCode interface.  We'll call the\n+ballistics code \\texttt{ballistics.py} with keyword input file \\texttt{ballistics\\_input.txt} and similarly the impact\n+code \\texttt{impact.py} with keyword input file \\texttt{impact\\_input.txt}.\n+\n+The RAVEN input file for this example is located at\n+\\begin{verbatim}\n+raven/tests/framework/user_guide/EnsembleModel/basic.xml\n+\\end{verbatim}\n+with run directory \\texttt{run\\_basic}.  The models and inputs are in the run directory.\n+\n+Now we turn our attention to the RAVEN input file. We will discuss \\xmlNode{DataObjects}, \\xmlNode{Files},\n+\\xmlNode{Models}, and \\xmlNode{Steps} in detail; the rest are typical usage and need no special attention.\n+\n+\\subsubsection{DataObjects}\n+The key to a successful EnsembleModel is setting up the data object inputs and outputs.  Each model has a\n+\\xmlNode{TargetEvaluation} data object that specifies what the inputs and outputs are for that model.  In\n+addition, any \\xmlNode{Output} data objects in the \\xmlNode{MultiRun} step can collect any or all of the\n+variables used throughout the EnsembleModel calculation, either as inputs or outputs.\n+\n+In this\n+example, our convention is to name the \\xmlNode{TargetEvaluation} data objects as \\xmlString{model\\_data}, replacing\n+\\xmlString{model} with the model name.  Additionally, we add a data object to store the final results of the\n+\\xmlNode{MultiRun} step:\n+\\xmlExample{framework/user_guide/EnsembleModel/basic.xml}{DataObjects}\n+In this example, we see three data objects.  \\xmlString{ballistics\\_data} determines the inputs and outputs of the\n+\\texttt{ballistics.py} model, so for its input space we have \\texttt{y0,v0,ang,m}, which correspond to\n+$y_0,v_0,\\theta_0,m$; for the output, we have \\texttt{E} (for $E$).\n+\n+The second data object, \\xmlString{impact\\_data}, delineates the inputs and outputs of the \\texttt{impact.py}\n+model, so for its input space we have \\texttt{E,m,r}, while in the output space we have \\texttt{D}.  RAVEN\n+will use these first two data objects to map the order in which these two models should be run (first\n+ballistics, then impact) and transfer data from one to the next.\n+\n+The third data object, \\xmlString{final\\_results}, can contain any information we want it to.  In this case,\n+we want to collect all the variables in their original spaces, so we take \\texttt{y0,v0,ang,m,r} as inputs and\n+\\texttt{E,D} as outputs.\n+\n+\n+\\subsubsection{Files}\n+Since we know both of our models take input files to set the variable values, we inform RAVEN about the\n+template input files and\n+give those files RAVEN names in the \\xmlNode{Files} block.  In this example, our input file for \\texttt{ballistics.py} is\n+\\texttt{ballistics\\_template.txt}, which we simply name \\xmlString{ballistics\\_input}.  Similarly,\n+for \\texttt{impact.py} the input file is \\texttt{impact\\_template.txt}, which we name\n+\\xmlString{impact\\_input}:\n+\\xmlExample{framework/user_guide/EnsembleModel/basic.xml}{Files}\n+We will pause to note that the file \\texttt{ballistics\\_template.txt} is different than the file\n+\\texttt{ballistics\\_input.py}, and similarly for the impact code.  In the template file, we've replaced\n+variable values with the \\texttt{\\$RAVEN-\\$} wildcard, since we will be using the Generic Code model for these\n+two models.  Having a template input file may not be required for all code interfaces, but it is required for\n+the Generic interface. See more about this interface in the Models section and in the user manual.\n+\n+\n+\\subsubsection{Models}\n+Once we've specified the data objects and files, we are prepared to set up the \\xmlNode{Models} block.  To set\n+up an ensemble model, we define each sub-module by itself as if it were a stand-alone RAVEN model, and then","path":"doc/user_guide/ensembleModel.tex","position":103,"original_position":103,"commit_id":"e5219a26842a3a94743a4eb48a46fdfb8cdc7875","original_commit_id":"e5219a26842a3a94743a4eb48a46fdfb8cdc7875","user":{"login":"alfoa","id":9202671,"avatar_url":"https://avatars0.githubusercontent.com/u/9202671?v=4","gravatar_id":"","url":"https://api.github.com/users/alfoa","html_url":"https://github.com/alfoa","followers_url":"https://api.github.com/users/alfoa/followers","following_url":"https://api.github.com/users/alfoa/following{/other_user}","gists_url":"https://api.github.com/users/alfoa/gists{/gist_id}","starred_url":"https://api.github.com/users/alfoa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alfoa/subscriptions","organizations_url":"https://api.github.com/users/alfoa/orgs","repos_url":"https://api.github.com/users/alfoa/repos","events_url":"https://api.github.com/users/alfoa/events{/privacy}","received_events_url":"https://api.github.com/users/alfoa/received_events","type":"User","site_admin":false},"body":"same as above","created_at":"2018-02-09T20:13:37Z","updated_at":"2018-02-09T20:19:57Z","html_url":"https://github.com/idaholab/raven/pull/571#discussion_r167334595","pull_request_url":"https://api.github.com/repos/idaholab/raven/pulls/571","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/idaholab/raven/pulls/comments/167334595"},"html":{"href":"https://github.com/idaholab/raven/pull/571#discussion_r167334595"},"pull_request":{"href":"https://api.github.com/repos/idaholab/raven/pulls/571"}}},"pull_request":{"url":"https://api.github.com/repos/idaholab/raven/pulls/571","id":167543196,"html_url":"https://github.com/idaholab/raven/pull/571","diff_url":"https://github.com/idaholab/raven/pull/571.diff","patch_url":"https://github.com/idaholab/raven/pull/571.patch","issue_url":"https://api.github.com/repos/idaholab/raven/issues/571","number":571,"state":"open","locked":false,"title":"Rework Ensemble for Indexes","user":{"login":"PaulTalbot-INL","id":2044370,"avatar_url":"https://avatars1.githubusercontent.com/u/2044370?v=4","gravatar_id":"","url":"https://api.github.com/users/PaulTalbot-INL","html_url":"https://github.com/PaulTalbot-INL","followers_url":"https://api.github.com/users/PaulTalbot-INL/followers","following_url":"https://api.github.com/users/PaulTalbot-INL/following{/other_user}","gists_url":"https://api.github.com/users/PaulTalbot-INL/gists{/gist_id}","starred_url":"https://api.github.com/users/PaulTalbot-INL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PaulTalbot-INL/subscriptions","organizations_url":"https://api.github.com/users/PaulTalbot-INL/orgs","repos_url":"https://api.github.com/users/PaulTalbot-INL/repos","events_url":"https://api.github.com/users/PaulTalbot-INL/events{/privacy}","received_events_url":"https://api.github.com/users/PaulTalbot-INL/received_events","type":"User","site_admin":false},"body":"Allows indexes to be in both the input AND output space for a TargetEvaluation for a model within an Ensemble Model configuration.\r\n\r\nPreviously this would falsely create a Picard iteration trigger, as the index is in both the output and input space. \r\n\r\nNow, if an input variable depends on an index, the index is never included as an output variable.","created_at":"2018-02-06T22:09:20Z","updated_at":"2018-02-09T20:19:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"fc5cd9a3d784ae6877664a0e2886ec17aaea1610","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/idaholab/raven/pulls/571/commits","review_comments_url":"https://api.github.com/repos/idaholab/raven/pulls/571/comments","review_comment_url":"https://api.github.com/repos/idaholab/raven/pulls/comments{/number}","comments_url":"https://api.github.com/repos/idaholab/raven/issues/571/comments","statuses_url":"https://api.github.com/repos/idaholab/raven/statuses/e5219a26842a3a94743a4eb48a46fdfb8cdc7875","head":{"label":"PaulTalbot-INL:rework-ensmod-timedep","ref":"rework-ensmod-timedep","sha":"e5219a26842a3a94743a4eb48a46fdfb8cdc7875","user":{"login":"PaulTalbot-INL","id":2044370,"avatar_url":"https://avatars1.githubusercontent.com/u/2044370?v=4","gravatar_id":"","url":"https://api.github.com/users/PaulTalbot-INL","html_url":"https://github.com/PaulTalbot-INL","followers_url":"https://api.github.com/users/PaulTalbot-INL/followers","following_url":"https://api.github.com/users/PaulTalbot-INL/following{/other_user}","gists_url":"https://api.github.com/users/PaulTalbot-INL/gists{/gist_id}","starred_url":"https://api.github.com/users/PaulTalbot-INL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PaulTalbot-INL/subscriptions","organizations_url":"https://api.github.com/users/PaulTalbot-INL/orgs","repos_url":"https://api.github.com/users/PaulTalbot-INL/repos","events_url":"https://api.github.com/users/PaulTalbot-INL/events{/privacy}","received_events_url":"https://api.github.com/users/PaulTalbot-INL/received_events","type":"User","site_admin":false},"repo":{"id":86344071,"name":"raven","full_name":"PaulTalbot-INL/raven","owner":{"login":"PaulTalbot-INL","id":2044370,"avatar_url":"https://avatars1.githubusercontent.com/u/2044370?v=4","gravatar_id":"","url":"https://api.github.com/users/PaulTalbot-INL","html_url":"https://github.com/PaulTalbot-INL","followers_url":"https://api.github.com/users/PaulTalbot-INL/followers","following_url":"https://api.github.com/users/PaulTalbot-INL/following{/other_user}","gists_url":"https://api.github.com/users/PaulTalbot-INL/gists{/gist_id}","starred_url":"https://api.github.com/users/PaulTalbot-INL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PaulTalbot-INL/subscriptions","organizations_url":"https://api.github.com/users/PaulTalbot-INL/orgs","repos_url":"https://api.github.com/users/PaulTalbot-INL/repos","events_url":"https://api.github.com/users/PaulTalbot-INL/events{/privacy}","received_events_url":"https://api.github.com/users/PaulTalbot-INL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/PaulTalbot-INL/raven","description":"RAVEN is a flexible and multi-purpose probabilistic risk analysis, uncertainty quantification, parameter optimization and data knowledge-discovering framework.","fork":true,"url":"https://api.github.com/repos/PaulTalbot-INL/raven","forks_url":"https://api.github.com/repos/PaulTalbot-INL/raven/forks","keys_url":"https://api.github.com/repos/PaulTalbot-INL/raven/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PaulTalbot-INL/raven/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PaulTalbot-INL/raven/teams","hooks_url":"https://api.github.com/repos/PaulTalbot-INL/raven/hooks","issue_events_url":"https://api.github.com/repos/PaulTalbot-INL/raven/issues/events{/number}","events_url":"https://api.github.com/repos/PaulTalbot-INL/raven/events","assignees_url":"https://api.github.com/repos/PaulTalbot-INL/raven/assignees{/user}","branches_url":"https://api.github.com/repos/PaulTalbot-INL/raven/branches{/branch}","tags_url":"https://api.github.com/repos/PaulTalbot-INL/raven/tags","blobs_url":"https://api.github.com/repos/PaulTalbot-INL/raven/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PaulTalbot-INL/raven/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PaulTalbot-INL/raven/git/refs{/sha}","trees_url":"https://api.github.com/repos/PaulTalbot-INL/raven/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PaulTalbot-INL/raven/statuses/{sha}","languages_url":"https://api.github.com/repos/PaulTalbot-INL/raven/languages","stargazers_url":"https://api.github.com/repos/PaulTalbot-INL/raven/stargazers","contributors_url":"https://api.github.com/repos/PaulTalbot-INL/raven/contributors","subscribers_url":"https://api.github.com/repos/PaulTalbot-INL/raven/subscribers","subscription_url":"https://api.github.com/repos/PaulTalbot-INL/raven/subscription","commits_url":"https://api.github.com/repos/PaulTalbot-INL/raven/commits{/sha}","git_commits_url":"https://api.github.com/repos/PaulTalbot-INL/raven/git/commits{/sha}","comments_url":"https://api.github.com/repos/PaulTalbot-INL/raven/comments{/number}","issue_comment_url":"https://api.github.com/repos/PaulTalbot-INL/raven/issues/comments{/number}","contents_url":"https://api.github.com/repos/PaulTalbot-INL/raven/contents/{+path}","compare_url":"https://api.github.com/repos/PaulTalbot-INL/raven/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PaulTalbot-INL/raven/merges","archive_url":"https://api.github.com/repos/PaulTalbot-INL/raven/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PaulTalbot-INL/raven/downloads","issues_url":"https://api.github.com/repos/PaulTalbot-INL/raven/issues{/number}","pulls_url":"https://api.github.com/repos/PaulTalbot-INL/raven/pulls{/number}","milestones_url":"https://api.github.com/repos/PaulTalbot-INL/raven/milestones{/number}","notifications_url":"https://api.github.com/repos/PaulTalbot-INL/raven/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PaulTalbot-INL/raven/labels{/name}","releases_url":"https://api.github.com/repos/PaulTalbot-INL/raven/releases{/id}","deployments_url":"https://api.github.com/repos/PaulTalbot-INL/raven/deployments","created_at":"2017-03-27T14:15:57Z","updated_at":"2017-06-06T21:18:36Z","pushed_at":"2018-02-09T16:56:13Z","git_url":"git://github.com/PaulTalbot-INL/raven.git","ssh_url":"git@github.com:PaulTalbot-INL/raven.git","clone_url":"https://github.com/PaulTalbot-INL/raven.git","svn_url":"https://github.com/PaulTalbot-INL/raven","homepage":"https://raven.inl.gov/","size":463620,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":1,"default_branch":"devel"}},"base":{"label":"idaholab:dataobject-rework","ref":"dataobject-rework","sha":"3067d8b4e71203d581a831941f336232db915ea4","user":{"login":"idaholab","id":3855370,"avatar_url":"https://avatars0.githubusercontent.com/u/3855370?v=4","gravatar_id":"","url":"https://api.github.com/users/idaholab","html_url":"https://github.com/idaholab","followers_url":"https://api.github.com/users/idaholab/followers","following_url":"https://api.github.com/users/idaholab/following{/other_user}","gists_url":"https://api.github.com/users/idaholab/gists{/gist_id}","starred_url":"https://api.github.com/users/idaholab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/idaholab/subscriptions","organizations_url":"https://api.github.com/users/idaholab/orgs","repos_url":"https://api.github.com/users/idaholab/repos","events_url":"https://api.github.com/users/idaholab/events{/privacy}","received_events_url":"https://api.github.com/users/idaholab/received_events","type":"Organization","site_admin":false},"repo":{"id":85989537,"name":"raven","full_name":"idaholab/raven","owner":{"login":"idaholab","id":3855370,"avatar_url":"https://avatars0.githubusercontent.com/u/3855370?v=4","gravatar_id":"","url":"https://api.github.com/users/idaholab","html_url":"https://github.com/idaholab","followers_url":"https://api.github.com/users/idaholab/followers","following_url":"https://api.github.com/users/idaholab/following{/other_user}","gists_url":"https://api.github.com/users/idaholab/gists{/gist_id}","starred_url":"https://api.github.com/users/idaholab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/idaholab/subscriptions","organizations_url":"https://api.github.com/users/idaholab/orgs","repos_url":"https://api.github.com/users/idaholab/repos","events_url":"https://api.github.com/users/idaholab/events{/privacy}","received_events_url":"https://api.github.com/users/idaholab/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/idaholab/raven","description":"RAVEN is a flexible and multi-purpose probabilistic risk analysis, uncertainty quantification, parameter optimization and data knowledge-discovering framework.","fork":false,"url":"https://api.github.com/repos/idaholab/raven","forks_url":"https://api.github.com/repos/idaholab/raven/forks","keys_url":"https://api.github.com/repos/idaholab/raven/keys{/key_id}","collaborators_url":"https://api.github.com/repos/idaholab/raven/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/idaholab/raven/teams","hooks_url":"https://api.github.com/repos/idaholab/raven/hooks","issue_events_url":"https://api.github.com/repos/idaholab/raven/issues/events{/number}","events_url":"https://api.github.com/repos/idaholab/raven/events","assignees_url":"https://api.github.com/repos/idaholab/raven/assignees{/user}","branches_url":"https://api.github.com/repos/idaholab/raven/branches{/branch}","tags_url":"https://api.github.com/repos/idaholab/raven/tags","blobs_url":"https://api.github.com/repos/idaholab/raven/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/idaholab/raven/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/idaholab/raven/git/refs{/sha}","trees_url":"https://api.github.com/repos/idaholab/raven/git/trees{/sha}","statuses_url":"https://api.github.com/repos/idaholab/raven/statuses/{sha}","languages_url":"https://api.github.com/repos/idaholab/raven/languages","stargazers_url":"https://api.github.com/repos/idaholab/raven/stargazers","contributors_url":"https://api.github.com/repos/idaholab/raven/contributors","subscribers_url":"https://api.github.com/repos/idaholab/raven/subscribers","subscription_url":"https://api.github.com/repos/idaholab/raven/subscription","commits_url":"https://api.github.com/repos/idaholab/raven/commits{/sha}","git_commits_url":"https://api.github.com/repos/idaholab/raven/git/commits{/sha}","comments_url":"https://api.github.com/repos/idaholab/raven/comments{/number}","issue_comment_url":"https://api.github.com/repos/idaholab/raven/issues/comments{/number}","contents_url":"https://api.github.com/repos/idaholab/raven/contents/{+path}","compare_url":"https://api.github.com/repos/idaholab/raven/compare/{base}...{head}","merges_url":"https://api.github.com/repos/idaholab/raven/merges","archive_url":"https://api.github.com/repos/idaholab/raven/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/idaholab/raven/downloads","issues_url":"https://api.github.com/repos/idaholab/raven/issues{/number}","pulls_url":"https://api.github.com/repos/idaholab/raven/pulls{/number}","milestones_url":"https://api.github.com/repos/idaholab/raven/milestones{/number}","notifications_url":"https://api.github.com/repos/idaholab/raven/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/idaholab/raven/labels{/name}","releases_url":"https://api.github.com/repos/idaholab/raven/releases{/id}","deployments_url":"https://api.github.com/repos/idaholab/raven/deployments","created_at":"2017-03-23T19:29:27Z","updated_at":"2018-02-01T17:30:44Z","pushed_at":"2018-02-09T16:56:14Z","git_url":"git://github.com/idaholab/raven.git","ssh_url":"git@github.com:idaholab/raven.git","clone_url":"https://github.com/idaholab/raven.git","svn_url":"https://github.com/idaholab/raven","homepage":"https://raven.inl.gov/","size":482251,"stargazers_count":23,"watchers_count":23,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":20,"mirror_url":null,"archived":false,"open_issues_count":172,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":20,"open_issues":172,"watchers":23,"default_branch":"devel"}},"_links":{"self":{"href":"https://api.github.com/repos/idaholab/raven/pulls/571"},"html":{"href":"https://github.com/idaholab/raven/pull/571"},"issue":{"href":"https://api.github.com/repos/idaholab/raven/issues/571"},"comments":{"href":"https://api.github.com/repos/idaholab/raven/issues/571/comments"},"review_comments":{"href":"https://api.github.com/repos/idaholab/raven/pulls/571/comments"},"review_comment":{"href":"https://api.github.com/repos/idaholab/raven/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/idaholab/raven/pulls/571/commits"},"statuses":{"href":"https://api.github.com/repos/idaholab/raven/statuses/e5219a26842a3a94743a4eb48a46fdfb8cdc7875"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"alfoa"}}