{"action":"created","comment":{"url":"https://api.github.com/repos/scikit-hep/pyhf/pulls/comments/351456288","pull_request_review_id":323892779,"id":351456288,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDM1MTQ1NjI4OA==","diff_hunk":"@@ -3,33 +3,41 @@\n from . import exceptions\n from . import utils\n from .pdf import Model\n+from .mixins import _ChannelSummaryMixin\n \n logging.basicConfig()\n log = logging.getLogger(__name__)\n \n \n-class Workspace(object):\n+class Workspace(_ChannelSummaryMixin, dict):\n     \"\"\"\n-    An object that is built from a JSON spec that follows `workspace.json`.\n+    A JSON-serializable object that is built from an object that follows the `workspace.json` schema.\n     \"\"\"\n \n     def __init__(self, spec, **config_kwargs):\n-        self.spec = spec\n-\n+        super(Workspace, self).__init__(spec, channels=spec['channels'])\n         self.schema = config_kwargs.pop('schema', 'workspace.json')\n         self.version = config_kwargs.pop('version', None)\n         # run jsonschema validation of input specification against the (provided) schema\n         log.info(\"Validating spec against schema: {0:s}\".format(self.schema))\n-        utils.validate(self.spec, self.schema, version=self.version)\n+        utils.validate(self, self.schema, version=self.version)\n \n         self.measurement_names = []\n-        for measurement in self.spec.get('measurements', []):\n+        for measurement in self.get('measurements', []):\n             self.measurement_names.append(measurement['name'])\n \n         self.observations = {}\n-        for obs in self.spec['observations']:\n+        for obs in self['observations']:\n             self.observations[obs['name']] = obs['data']\n \n+    def __eq__(self, other):","path":"src/pyhf/workspace.py","position":38,"original_position":38,"commit_id":"597b57bbaf57e9043c8a19b62c252d6a764d0319","original_commit_id":"e80186afa10595300c7afdb9d2e26a9d5f7d6545","user":{"login":"lukasheinrich","id":2318083,"node_id":"MDQ6VXNlcjIzMTgwODM=","avatar_url":"https://avatars2.githubusercontent.com/u/2318083?v=4","gravatar_id":"","url":"https://api.github.com/users/lukasheinrich","html_url":"https://github.com/lukasheinrich","followers_url":"https://api.github.com/users/lukasheinrich/followers","following_url":"https://api.github.com/users/lukasheinrich/following{/other_user}","gists_url":"https://api.github.com/users/lukasheinrich/gists{/gist_id}","starred_url":"https://api.github.com/users/lukasheinrich/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lukasheinrich/subscriptions","organizations_url":"https://api.github.com/users/lukasheinrich/orgs","repos_url":"https://api.github.com/users/lukasheinrich/repos","events_url":"https://api.github.com/users/lukasheinrich/events{/privacy}","received_events_url":"https://api.github.com/users/lukasheinrich/received_events","type":"User","site_admin":false},"body":"ok","created_at":"2019-11-27T19:09:33Z","updated_at":"2019-11-27T19:09:33Z","html_url":"https://github.com/scikit-hep/pyhf/pull/657#discussion_r351456288","pull_request_url":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/scikit-hep/pyhf/pulls/comments/351456288"},"html":{"href":"https://github.com/scikit-hep/pyhf/pull/657#discussion_r351456288"},"pull_request":{"href":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657"}},"in_reply_to_id":351441249},"pull_request":{"url":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657","id":346362100,"node_id":"MDExOlB1bGxSZXF1ZXN0MzQ2MzYyMTAw","html_url":"https://github.com/scikit-hep/pyhf/pull/657","diff_url":"https://github.com/scikit-hep/pyhf/pull/657.diff","patch_url":"https://github.com/scikit-hep/pyhf/pull/657.patch","issue_url":"https://api.github.com/repos/scikit-hep/pyhf/issues/657","number":657,"state":"open","locked":false,"title":"feat: channel summary mixin, JSON-serializable workspace object","user":{"login":"kratsg","id":761483,"node_id":"MDQ6VXNlcjc2MTQ4Mw==","avatar_url":"https://avatars0.githubusercontent.com/u/761483?v=4","gravatar_id":"","url":"https://api.github.com/users/kratsg","html_url":"https://github.com/kratsg","followers_url":"https://api.github.com/users/kratsg/followers","following_url":"https://api.github.com/users/kratsg/following{/other_user}","gists_url":"https://api.github.com/users/kratsg/gists{/gist_id}","starred_url":"https://api.github.com/users/kratsg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kratsg/subscriptions","organizations_url":"https://api.github.com/users/kratsg/orgs","repos_url":"https://api.github.com/users/kratsg/repos","events_url":"https://api.github.com/users/kratsg/events{/privacy}","received_events_url":"https://api.github.com/users/kratsg/received_events","type":"User","site_admin":false},"body":"# Description\r\n\r\nThis adds a channel summary mixin to be used by any object that needs a summary of the channel information in the spec they're using. This will apply to both `pyhf.Workspace` and `pyhf.pdf._ModelConfig`.\r\n\r\n# Checklist Before Requesting Reviewer\r\n\r\n- [x] Tests are passing\r\n- [x] \"WIP\" removed from the title of the pull request\r\n- [x] Selected an Assignee for the PR to be responsible for the log summary\r\n\r\n# Before Merging\r\n\r\nFor the PR Assignees:\r\n\r\n- [x] Summarize commit messages into a comprehensive review of the PR\r\n```\r\n- add Channel Summary mixin\r\n- make the pyhf.Workspace JSON-serializable\r\n```","created_at":"2019-11-27T17:50:04Z","updated_at":"2019-11-27T19:09:33Z","closed_at":null,"merged_at":null,"merge_commit_sha":"acdc5400e4461d82e09df5a858b64e05c1f70eeb","assignee":{"login":"kratsg","id":761483,"node_id":"MDQ6VXNlcjc2MTQ4Mw==","avatar_url":"https://avatars0.githubusercontent.com/u/761483?v=4","gravatar_id":"","url":"https://api.github.com/users/kratsg","html_url":"https://github.com/kratsg","followers_url":"https://api.github.com/users/kratsg/followers","following_url":"https://api.github.com/users/kratsg/following{/other_user}","gists_url":"https://api.github.com/users/kratsg/gists{/gist_id}","starred_url":"https://api.github.com/users/kratsg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kratsg/subscriptions","organizations_url":"https://api.github.com/users/kratsg/orgs","repos_url":"https://api.github.com/users/kratsg/repos","events_url":"https://api.github.com/users/kratsg/events{/privacy}","received_events_url":"https://api.github.com/users/kratsg/received_events","type":"User","site_admin":false},"assignees":[{"login":"kratsg","id":761483,"node_id":"MDQ6VXNlcjc2MTQ4Mw==","avatar_url":"https://avatars0.githubusercontent.com/u/761483?v=4","gravatar_id":"","url":"https://api.github.com/users/kratsg","html_url":"https://github.com/kratsg","followers_url":"https://api.github.com/users/kratsg/followers","following_url":"https://api.github.com/users/kratsg/following{/other_user}","gists_url":"https://api.github.com/users/kratsg/gists{/gist_id}","starred_url":"https://api.github.com/users/kratsg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kratsg/subscriptions","organizations_url":"https://api.github.com/users/kratsg/orgs","repos_url":"https://api.github.com/users/kratsg/repos","events_url":"https://api.github.com/users/kratsg/events{/privacy}","received_events_url":"https://api.github.com/users/kratsg/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"matthewfeickert","id":5142394,"node_id":"MDQ6VXNlcjUxNDIzOTQ=","avatar_url":"https://avatars3.githubusercontent.com/u/5142394?v=4","gravatar_id":"","url":"https://api.github.com/users/matthewfeickert","html_url":"https://github.com/matthewfeickert","followers_url":"https://api.github.com/users/matthewfeickert/followers","following_url":"https://api.github.com/users/matthewfeickert/following{/other_user}","gists_url":"https://api.github.com/users/matthewfeickert/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewfeickert/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewfeickert/subscriptions","organizations_url":"https://api.github.com/users/matthewfeickert/orgs","repos_url":"https://api.github.com/users/matthewfeickert/repos","events_url":"https://api.github.com/users/matthewfeickert/events{/privacy}","received_events_url":"https://api.github.com/users/matthewfeickert/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":815282411,"node_id":"MDU6TGFiZWw4MTUyODI0MTE=","url":"https://api.github.com/repos/scikit-hep/pyhf/labels/feat/enhancement","name":"feat/enhancement","color":"a2eeef","default":false,"description":"New feature or request"},{"id":1578717819,"node_id":"MDU6TGFiZWwxNTc4NzE3ODE5","url":"https://api.github.com/repos/scikit-hep/pyhf/labels/refactor","name":"refactor","color":"d581f9","default":false,"description":"A code change that neither fixes a bug nor adds a feature"}],"milestone":null,"commits_url":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657/commits","review_comments_url":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657/comments","review_comment_url":"https://api.github.com/repos/scikit-hep/pyhf/pulls/comments{/number}","comments_url":"https://api.github.com/repos/scikit-hep/pyhf/issues/657/comments","statuses_url":"https://api.github.com/repos/scikit-hep/pyhf/statuses/597b57bbaf57e9043c8a19b62c252d6a764d0319","head":{"label":"scikit-hep:mixin/ChannelSummary","ref":"mixin/ChannelSummary","sha":"597b57bbaf57e9043c8a19b62c252d6a764d0319","user":{"login":"scikit-hep","id":23454624,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzNDU0NjI0","avatar_url":"https://avatars0.githubusercontent.com/u/23454624?v=4","gravatar_id":"","url":"https://api.github.com/users/scikit-hep","html_url":"https://github.com/scikit-hep","followers_url":"https://api.github.com/users/scikit-hep/followers","following_url":"https://api.github.com/users/scikit-hep/following{/other_user}","gists_url":"https://api.github.com/users/scikit-hep/gists{/gist_id}","starred_url":"https://api.github.com/users/scikit-hep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scikit-hep/subscriptions","organizations_url":"https://api.github.com/users/scikit-hep/orgs","repos_url":"https://api.github.com/users/scikit-hep/repos","events_url":"https://api.github.com/users/scikit-hep/events{/privacy}","received_events_url":"https://api.github.com/users/scikit-hep/received_events","type":"Organization","site_admin":false},"repo":{"id":118789569,"node_id":"MDEwOlJlcG9zaXRvcnkxMTg3ODk1Njk=","name":"pyhf","full_name":"scikit-hep/pyhf","private":false,"owner":{"login":"scikit-hep","id":23454624,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzNDU0NjI0","avatar_url":"https://avatars0.githubusercontent.com/u/23454624?v=4","gravatar_id":"","url":"https://api.github.com/users/scikit-hep","html_url":"https://github.com/scikit-hep","followers_url":"https://api.github.com/users/scikit-hep/followers","following_url":"https://api.github.com/users/scikit-hep/following{/other_user}","gists_url":"https://api.github.com/users/scikit-hep/gists{/gist_id}","starred_url":"https://api.github.com/users/scikit-hep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scikit-hep/subscriptions","organizations_url":"https://api.github.com/users/scikit-hep/orgs","repos_url":"https://api.github.com/users/scikit-hep/repos","events_url":"https://api.github.com/users/scikit-hep/events{/privacy}","received_events_url":"https://api.github.com/users/scikit-hep/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/scikit-hep/pyhf","description":"pure-python implementation of some (maybe someday all?) HistFactory models","fork":false,"url":"https://api.github.com/repos/scikit-hep/pyhf","forks_url":"https://api.github.com/repos/scikit-hep/pyhf/forks","keys_url":"https://api.github.com/repos/scikit-hep/pyhf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/scikit-hep/pyhf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/scikit-hep/pyhf/teams","hooks_url":"https://api.github.com/repos/scikit-hep/pyhf/hooks","issue_events_url":"https://api.github.com/repos/scikit-hep/pyhf/issues/events{/number}","events_url":"https://api.github.com/repos/scikit-hep/pyhf/events","assignees_url":"https://api.github.com/repos/scikit-hep/pyhf/assignees{/user}","branches_url":"https://api.github.com/repos/scikit-hep/pyhf/branches{/branch}","tags_url":"https://api.github.com/repos/scikit-hep/pyhf/tags","blobs_url":"https://api.github.com/repos/scikit-hep/pyhf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/scikit-hep/pyhf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/scikit-hep/pyhf/git/refs{/sha}","trees_url":"https://api.github.com/repos/scikit-hep/pyhf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/scikit-hep/pyhf/statuses/{sha}","languages_url":"https://api.github.com/repos/scikit-hep/pyhf/languages","stargazers_url":"https://api.github.com/repos/scikit-hep/pyhf/stargazers","contributors_url":"https://api.github.com/repos/scikit-hep/pyhf/contributors","subscribers_url":"https://api.github.com/repos/scikit-hep/pyhf/subscribers","subscription_url":"https://api.github.com/repos/scikit-hep/pyhf/subscription","commits_url":"https://api.github.com/repos/scikit-hep/pyhf/commits{/sha}","git_commits_url":"https://api.github.com/repos/scikit-hep/pyhf/git/commits{/sha}","comments_url":"https://api.github.com/repos/scikit-hep/pyhf/comments{/number}","issue_comment_url":"https://api.github.com/repos/scikit-hep/pyhf/issues/comments{/number}","contents_url":"https://api.github.com/repos/scikit-hep/pyhf/contents/{+path}","compare_url":"https://api.github.com/repos/scikit-hep/pyhf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/scikit-hep/pyhf/merges","archive_url":"https://api.github.com/repos/scikit-hep/pyhf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/scikit-hep/pyhf/downloads","issues_url":"https://api.github.com/repos/scikit-hep/pyhf/issues{/number}","pulls_url":"https://api.github.com/repos/scikit-hep/pyhf/pulls{/number}","milestones_url":"https://api.github.com/repos/scikit-hep/pyhf/milestones{/number}","notifications_url":"https://api.github.com/repos/scikit-hep/pyhf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/scikit-hep/pyhf/labels{/name}","releases_url":"https://api.github.com/repos/scikit-hep/pyhf/releases{/id}","deployments_url":"https://api.github.com/repos/scikit-hep/pyhf/deployments","created_at":"2018-01-24T16:14:39Z","updated_at":"2019-11-27T12:18:27Z","pushed_at":"2019-11-27T18:43:31Z","git_url":"git://github.com/scikit-hep/pyhf.git","ssh_url":"git@github.com:scikit-hep/pyhf.git","clone_url":"https://github.com/scikit-hep/pyhf.git","svn_url":"https://github.com/scikit-hep/pyhf","homepage":"https://scikit-hep.org/pyhf/","size":44166,"stargazers_count":80,"watchers_count":80,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":23,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":156,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":23,"open_issues":156,"watchers":80,"default_branch":"master"}},"base":{"label":"scikit-hep:master","ref":"master","sha":"57b0cbfde610f1b23bcfbb0494843fe1545f7568","user":{"login":"scikit-hep","id":23454624,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzNDU0NjI0","avatar_url":"https://avatars0.githubusercontent.com/u/23454624?v=4","gravatar_id":"","url":"https://api.github.com/users/scikit-hep","html_url":"https://github.com/scikit-hep","followers_url":"https://api.github.com/users/scikit-hep/followers","following_url":"https://api.github.com/users/scikit-hep/following{/other_user}","gists_url":"https://api.github.com/users/scikit-hep/gists{/gist_id}","starred_url":"https://api.github.com/users/scikit-hep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scikit-hep/subscriptions","organizations_url":"https://api.github.com/users/scikit-hep/orgs","repos_url":"https://api.github.com/users/scikit-hep/repos","events_url":"https://api.github.com/users/scikit-hep/events{/privacy}","received_events_url":"https://api.github.com/users/scikit-hep/received_events","type":"Organization","site_admin":false},"repo":{"id":118789569,"node_id":"MDEwOlJlcG9zaXRvcnkxMTg3ODk1Njk=","name":"pyhf","full_name":"scikit-hep/pyhf","private":false,"owner":{"login":"scikit-hep","id":23454624,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzNDU0NjI0","avatar_url":"https://avatars0.githubusercontent.com/u/23454624?v=4","gravatar_id":"","url":"https://api.github.com/users/scikit-hep","html_url":"https://github.com/scikit-hep","followers_url":"https://api.github.com/users/scikit-hep/followers","following_url":"https://api.github.com/users/scikit-hep/following{/other_user}","gists_url":"https://api.github.com/users/scikit-hep/gists{/gist_id}","starred_url":"https://api.github.com/users/scikit-hep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scikit-hep/subscriptions","organizations_url":"https://api.github.com/users/scikit-hep/orgs","repos_url":"https://api.github.com/users/scikit-hep/repos","events_url":"https://api.github.com/users/scikit-hep/events{/privacy}","received_events_url":"https://api.github.com/users/scikit-hep/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/scikit-hep/pyhf","description":"pure-python implementation of some (maybe someday all?) HistFactory models","fork":false,"url":"https://api.github.com/repos/scikit-hep/pyhf","forks_url":"https://api.github.com/repos/scikit-hep/pyhf/forks","keys_url":"https://api.github.com/repos/scikit-hep/pyhf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/scikit-hep/pyhf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/scikit-hep/pyhf/teams","hooks_url":"https://api.github.com/repos/scikit-hep/pyhf/hooks","issue_events_url":"https://api.github.com/repos/scikit-hep/pyhf/issues/events{/number}","events_url":"https://api.github.com/repos/scikit-hep/pyhf/events","assignees_url":"https://api.github.com/repos/scikit-hep/pyhf/assignees{/user}","branches_url":"https://api.github.com/repos/scikit-hep/pyhf/branches{/branch}","tags_url":"https://api.github.com/repos/scikit-hep/pyhf/tags","blobs_url":"https://api.github.com/repos/scikit-hep/pyhf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/scikit-hep/pyhf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/scikit-hep/pyhf/git/refs{/sha}","trees_url":"https://api.github.com/repos/scikit-hep/pyhf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/scikit-hep/pyhf/statuses/{sha}","languages_url":"https://api.github.com/repos/scikit-hep/pyhf/languages","stargazers_url":"https://api.github.com/repos/scikit-hep/pyhf/stargazers","contributors_url":"https://api.github.com/repos/scikit-hep/pyhf/contributors","subscribers_url":"https://api.github.com/repos/scikit-hep/pyhf/subscribers","subscription_url":"https://api.github.com/repos/scikit-hep/pyhf/subscription","commits_url":"https://api.github.com/repos/scikit-hep/pyhf/commits{/sha}","git_commits_url":"https://api.github.com/repos/scikit-hep/pyhf/git/commits{/sha}","comments_url":"https://api.github.com/repos/scikit-hep/pyhf/comments{/number}","issue_comment_url":"https://api.github.com/repos/scikit-hep/pyhf/issues/comments{/number}","contents_url":"https://api.github.com/repos/scikit-hep/pyhf/contents/{+path}","compare_url":"https://api.github.com/repos/scikit-hep/pyhf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/scikit-hep/pyhf/merges","archive_url":"https://api.github.com/repos/scikit-hep/pyhf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/scikit-hep/pyhf/downloads","issues_url":"https://api.github.com/repos/scikit-hep/pyhf/issues{/number}","pulls_url":"https://api.github.com/repos/scikit-hep/pyhf/pulls{/number}","milestones_url":"https://api.github.com/repos/scikit-hep/pyhf/milestones{/number}","notifications_url":"https://api.github.com/repos/scikit-hep/pyhf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/scikit-hep/pyhf/labels{/name}","releases_url":"https://api.github.com/repos/scikit-hep/pyhf/releases{/id}","deployments_url":"https://api.github.com/repos/scikit-hep/pyhf/deployments","created_at":"2018-01-24T16:14:39Z","updated_at":"2019-11-27T12:18:27Z","pushed_at":"2019-11-27T18:43:31Z","git_url":"git://github.com/scikit-hep/pyhf.git","ssh_url":"git@github.com:scikit-hep/pyhf.git","clone_url":"https://github.com/scikit-hep/pyhf.git","svn_url":"https://github.com/scikit-hep/pyhf","homepage":"https://scikit-hep.org/pyhf/","size":44166,"stargazers_count":80,"watchers_count":80,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":23,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":156,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":23,"open_issues":156,"watchers":80,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657"},"html":{"href":"https://github.com/scikit-hep/pyhf/pull/657"},"issue":{"href":"https://api.github.com/repos/scikit-hep/pyhf/issues/657"},"comments":{"href":"https://api.github.com/repos/scikit-hep/pyhf/issues/657/comments"},"review_comments":{"href":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657/comments"},"review_comment":{"href":"https://api.github.com/repos/scikit-hep/pyhf/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/scikit-hep/pyhf/pulls/657/commits"},"statuses":{"href":"https://api.github.com/repos/scikit-hep/pyhf/statuses/597b57bbaf57e9043c8a19b62c252d6a764d0319"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"lukasheinrich"}}