{"action":"created","comment":{"url":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/comments/205927651","pull_request_review_id":141301584,"id":205927651,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNTkyNzY1MQ==","diff_hunk":"@@ -0,0 +1,191 @@\n+import React, {Fragment} from 'react'\n+\n+import {ActionLink, StatusLink} from 'components/ui/DbLink'\n+import ACTIONS, {getAction} from 'data/ACTIONS'\n+import STATUSES from 'data/STATUSES'\n+import Module from 'parser/core/Module'\n+import RAISE_STATUSES from 'parser/core/modules/Death'\n+import {Suggestion, SEVERITY} from 'parser/core/modules/Suggestions'\n+\n+const FORM_TIMEOUT_MILLIS = 10000\n+\n+const FORMS = [\n+\tSTATUSES.OPO_OPO_FORM.id,\n+\tSTATUSES.RAPTOR_FORM.id,\n+\tSTATUSES.COEURL_FORM.id,\n+]\n+\n+const OPO_OPO_SKILLS = [\n+\tACTIONS.BOOTSHINE.id,\n+\tACTIONS.DRAGON_KICK.id,\n+\tACTIONS.ARM_OF_THE_DESTROYER.id,\n+]\n+\n+export default class Forms extends Module {\n+\tstatic handle = 'forms'\n+\tstatic dependencies = [\n+\t\t'death',\n+\t\t'downtime',\n+\t\t'combatants',\n+\t\t'suggestions',\n+\t]\n+\n+\t_formless = 0\n+\t_poorForms = 0\n+\t_resetForms = 0\n+\t_skippedForms = 0\n+\t_droppedForms = 0\n+\n+\t_lastFormChanged = null\n+\t_lastFormDropped = null\n+\n+\tconstructor(...args) {\n+\t\tsuper(...args)\n+\t\tthis.addHook('cast', {by: 'player'}, this._onCast)\n+\t\tthis.addHook('applybuff', {to: 'player', abilityId: FORMS}, this._onGain)\n+\t\tthis.addHook('removebuff', {to: 'player', abilityiD: FORMS}, this._onRemove)\n+\t\tthis.addHook('complete', this._onComplete)\n+\t}\n+\n+\t_onCast(event) {\n+\t\tconst action = getAction(event.ability.guid)\n+\n+\t\tif (!action) {\n+\t\t\treturn\n+\t\t}\n+\n+\t\tif (action.onGcd) {\n+\t\t\t// Check the current form and stacks, or zero for no form\n+\t\t\tconst current_form = FORMS.find(form => this.combatants.selected.hasStatus(form)) || 0\n+\t\t\tconst untargetable = this.downtime.getDowntime(this._lastFormChanged || 0, event.timestamp)\n+\n+\t\t\t// If PB is active, we can ignore form unless someone is really derpy\n+\t\t\tif (this.combatants.selected.hasStatus(STATUSES.PERFECT_BALANCE.id)) {\n+\t\t\t\tif (action === ACTIONS.FORM_SHIFT.id) {\n+\t\t\t\t\tthis._poorForm++\n+\t\t\t\t}\n+\t\t\t\treturn\n+\t\t\t}\n+\n+\t\t\t// If we're in downtime or had poor HP uptime, ignore Form Shift\n+\t\t\tif (action === ACTIONS.FORM_SHIFT.id) {\n+\t\t\t\t// Recovery\n+\t\t\t\tif (RAISE_STATUSES.find(dead => this.combatants.select.hasStatus(dead))) {\n+\t\t\t\t\treturn\n+\t\t\t\t}\n+\n+\t\t\t\t// Downtime\n+\t\t\t\tif (untargetable !== 0) { return }\n+\n+\t\t\t\t// Actually using Form Shift\n+\t\t\t\tthis._skippedForms++\n+\n+\t\t\t\treturn\n+\t\t\t}\n+\n+\t\t\t// Handle relevant actions per form\n+\t\t\tswitch (current_form) {\n+\t\t\tcase STATUSES.OPO_OPO_FORM.id:\n+\t\t\t\tbreak\n+\t\t\tcase STATUSES.RAPTOR_FORM.id:\n+\t\t\t\t// Using Opo-Opo skills resets form\n+\t\t\t\tif (OPO_OPO_SKILLS.includes(action)) { this._resetForms++ }\n+\t\t\t\tbreak\n+\t\t\tcase STATUSES.COEURL_FORM.id:","path":"src/parser/jobs/mnk/Forms.js","position":94,"original_position":94,"commit_id":"a6ac51604680a20289b06279f24c3d5450e3cabf","original_commit_id":"a6ac51604680a20289b06279f24c3d5450e3cabf","user":{"login":"ackwell","id":534235,"node_id":"MDQ6VXNlcjUzNDIzNQ==","avatar_url":"https://avatars3.githubusercontent.com/u/534235?v=4","gravatar_id":"","url":"https://api.github.com/users/ackwell","html_url":"https://github.com/ackwell","followers_url":"https://api.github.com/users/ackwell/followers","following_url":"https://api.github.com/users/ackwell/following{/other_user}","gists_url":"https://api.github.com/users/ackwell/gists{/gist_id}","starred_url":"https://api.github.com/users/ackwell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ackwell/subscriptions","organizations_url":"https://api.github.com/users/ackwell/orgs","repos_url":"https://api.github.com/users/ackwell/repos","events_url":"https://api.github.com/users/ackwell/events{/privacy}","received_events_url":"https://api.github.com/users/ackwell/received_events","type":"User","site_admin":false},"body":"Can probably afford to let the switch fall through for these two, saves duping the handling.","created_at":"2018-07-28T01:02:20Z","updated_at":"2018-07-28T01:05:46Z","html_url":"https://github.com/xivanalysis/xivanalysis/pull/56#discussion_r205927651","pull_request_url":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/comments/205927651"},"html":{"href":"https://github.com/xivanalysis/xivanalysis/pull/56#discussion_r205927651"},"pull_request":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56"}}},"pull_request":{"url":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56","id":203829999,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAzODI5OTk5","html_url":"https://github.com/xivanalysis/xivanalysis/pull/56","diff_url":"https://github.com/xivanalysis/xivanalysis/pull/56.diff","patch_url":"https://github.com/xivanalysis/xivanalysis/pull/56.patch","issue_url":"https://api.github.com/repos/xivanalysis/xivanalysis/issues/56","number":56,"state":"open","locked":false,"title":"Basic MNK analysis","user":{"login":"ayyaruq","id":28627120,"node_id":"MDQ6VXNlcjI4NjI3MTIw","avatar_url":"https://avatars1.githubusercontent.com/u/28627120?v=4","gravatar_id":"","url":"https://api.github.com/users/ayyaruq","html_url":"https://github.com/ayyaruq","followers_url":"https://api.github.com/users/ayyaruq/followers","following_url":"https://api.github.com/users/ayyaruq/following{/other_user}","gists_url":"https://api.github.com/users/ayyaruq/gists{/gist_id}","starred_url":"https://api.github.com/users/ayyaruq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ayyaruq/subscriptions","organizations_url":"https://api.github.com/users/ayyaruq/orgs","repos_url":"https://api.github.com/users/ayyaruq/repos","events_url":"https://api.github.com/users/ayyaruq/events{/privacy}","received_events_url":"https://api.github.com/users/ayyaruq/received_events","type":"User","site_admin":false},"body":"WIP for MNK analysis. Can be merged as-is or I can keep adding stuff from the NOTES. Very open to feedback on what I have in mind or things I might have forgotten about.\r\n\r\n## TODO\r\n### Uptime\r\n- [ ] Don't clip or drop Demolish by more than 2 seconds, unless reapplying would be on GL0\r\n- [ ] Avoid GL0 Demolish applications, if opener or downtime ignore this\r\n- [ ] GL3 uptime\r\n- [ ] General auto-attack uptime\r\n\r\n### Forms\r\n- [x] Reset forms by using Opo-Opo form skills in a different form\r\n- [x] Form expiry (taking over 10s to transition)\r\n- [x] Form Shifting under PB (WHY IS THIS A THING?)\r\n- [x] Using formless DK or AotD\r\n- [x] Form Shifting mid-combo\r\n\r\n### AoE\r\n- [ ] Make sure there's enough enemies for RB (2+) or AotD (5+) effectiveness\r\n- [ ] Allow AotD for Silence if we can tell if the enemy is actually interrupted\r\n- [ ] Demolish on multiple targets?\r\n\r\n### Tornado Kick\r\n- [ ] Minor on 8th RoF GCD instead of 9th\r\n- [ ] Major if just after RoF drops\r\n- [ ] Check recovery doesn't take more than 4 GCDs (PB is 3, ending before Snap and using RoW is 4)\r\n- [ ] Use before forced downtime longer than RoE can be used, this might be fight specific and is hard to track since FFLogs is weird about GL refreshes\r\n\r\n### Positionals\r\n- [ ] Can kinda guess this from the damage mainly because MNK potency is high but it's a bit giri-giri\r\n- [ ] Crit the Boot\r\n\r\n### Buff Windows\r\n- [ ] RoF basically on CD, take downtime into account or fights that derp a window\r\n- [ ] Brotherhood, same as RoF besides slight variance for duration\r\n\r\n### Chakras\r\nHow do we track this? There's a game packet for meditative brotherhood procs but FFLogs doesn't use it\r\nMaybe check for FBC being used at low GL when the next GCD gives a stack\r\n","created_at":"2018-07-25T13:03:36Z","updated_at":"2018-07-28T01:05:46Z","closed_at":null,"merged_at":null,"merge_commit_sha":"bb73e5c48139baf40cb1b0c5b813ee7d708909d1","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56/commits","review_comments_url":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56/comments","review_comment_url":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/comments{/number}","comments_url":"https://api.github.com/repos/xivanalysis/xivanalysis/issues/56/comments","statuses_url":"https://api.github.com/repos/xivanalysis/xivanalysis/statuses/a6ac51604680a20289b06279f24c3d5450e3cabf","head":{"label":"ayyaruq:feature/mnk-analysis","ref":"feature/mnk-analysis","sha":"a6ac51604680a20289b06279f24c3d5450e3cabf","user":{"login":"ayyaruq","id":28627120,"node_id":"MDQ6VXNlcjI4NjI3MTIw","avatar_url":"https://avatars1.githubusercontent.com/u/28627120?v=4","gravatar_id":"","url":"https://api.github.com/users/ayyaruq","html_url":"https://github.com/ayyaruq","followers_url":"https://api.github.com/users/ayyaruq/followers","following_url":"https://api.github.com/users/ayyaruq/following{/other_user}","gists_url":"https://api.github.com/users/ayyaruq/gists{/gist_id}","starred_url":"https://api.github.com/users/ayyaruq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ayyaruq/subscriptions","organizations_url":"https://api.github.com/users/ayyaruq/orgs","repos_url":"https://api.github.com/users/ayyaruq/repos","events_url":"https://api.github.com/users/ayyaruq/events{/privacy}","received_events_url":"https://api.github.com/users/ayyaruq/received_events","type":"User","site_admin":false},"repo":{"id":141967963,"node_id":"MDEwOlJlcG9zaXRvcnkxNDE5Njc5NjM=","name":"xivanalysis","full_name":"ayyaruq/xivanalysis","owner":{"login":"ayyaruq","id":28627120,"node_id":"MDQ6VXNlcjI4NjI3MTIw","avatar_url":"https://avatars1.githubusercontent.com/u/28627120?v=4","gravatar_id":"","url":"https://api.github.com/users/ayyaruq","html_url":"https://github.com/ayyaruq","followers_url":"https://api.github.com/users/ayyaruq/followers","following_url":"https://api.github.com/users/ayyaruq/following{/other_user}","gists_url":"https://api.github.com/users/ayyaruq/gists{/gist_id}","starred_url":"https://api.github.com/users/ayyaruq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ayyaruq/subscriptions","organizations_url":"https://api.github.com/users/ayyaruq/orgs","repos_url":"https://api.github.com/users/ayyaruq/repos","events_url":"https://api.github.com/users/ayyaruq/events{/privacy}","received_events_url":"https://api.github.com/users/ayyaruq/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ayyaruq/xivanalysis","description":"Automated performance analysis and suggestion platform for Final Fantasy XIV: Stormblood.","fork":true,"url":"https://api.github.com/repos/ayyaruq/xivanalysis","forks_url":"https://api.github.com/repos/ayyaruq/xivanalysis/forks","keys_url":"https://api.github.com/repos/ayyaruq/xivanalysis/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ayyaruq/xivanalysis/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ayyaruq/xivanalysis/teams","hooks_url":"https://api.github.com/repos/ayyaruq/xivanalysis/hooks","issue_events_url":"https://api.github.com/repos/ayyaruq/xivanalysis/issues/events{/number}","events_url":"https://api.github.com/repos/ayyaruq/xivanalysis/events","assignees_url":"https://api.github.com/repos/ayyaruq/xivanalysis/assignees{/user}","branches_url":"https://api.github.com/repos/ayyaruq/xivanalysis/branches{/branch}","tags_url":"https://api.github.com/repos/ayyaruq/xivanalysis/tags","blobs_url":"https://api.github.com/repos/ayyaruq/xivanalysis/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ayyaruq/xivanalysis/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ayyaruq/xivanalysis/git/refs{/sha}","trees_url":"https://api.github.com/repos/ayyaruq/xivanalysis/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ayyaruq/xivanalysis/statuses/{sha}","languages_url":"https://api.github.com/repos/ayyaruq/xivanalysis/languages","stargazers_url":"https://api.github.com/repos/ayyaruq/xivanalysis/stargazers","contributors_url":"https://api.github.com/repos/ayyaruq/xivanalysis/contributors","subscribers_url":"https://api.github.com/repos/ayyaruq/xivanalysis/subscribers","subscription_url":"https://api.github.com/repos/ayyaruq/xivanalysis/subscription","commits_url":"https://api.github.com/repos/ayyaruq/xivanalysis/commits{/sha}","git_commits_url":"https://api.github.com/repos/ayyaruq/xivanalysis/git/commits{/sha}","comments_url":"https://api.github.com/repos/ayyaruq/xivanalysis/comments{/number}","issue_comment_url":"https://api.github.com/repos/ayyaruq/xivanalysis/issues/comments{/number}","contents_url":"https://api.github.com/repos/ayyaruq/xivanalysis/contents/{+path}","compare_url":"https://api.github.com/repos/ayyaruq/xivanalysis/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ayyaruq/xivanalysis/merges","archive_url":"https://api.github.com/repos/ayyaruq/xivanalysis/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ayyaruq/xivanalysis/downloads","issues_url":"https://api.github.com/repos/ayyaruq/xivanalysis/issues{/number}","pulls_url":"https://api.github.com/repos/ayyaruq/xivanalysis/pulls{/number}","milestones_url":"https://api.github.com/repos/ayyaruq/xivanalysis/milestones{/number}","notifications_url":"https://api.github.com/repos/ayyaruq/xivanalysis/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ayyaruq/xivanalysis/labels{/name}","releases_url":"https://api.github.com/repos/ayyaruq/xivanalysis/releases{/id}","deployments_url":"https://api.github.com/repos/ayyaruq/xivanalysis/deployments","created_at":"2018-07-23T05:57:26Z","updated_at":"2018-07-24T08:55:02Z","pushed_at":"2018-07-26T11:36:23Z","git_url":"git://github.com/ayyaruq/xivanalysis.git","ssh_url":"git@github.com:ayyaruq/xivanalysis.git","clone_url":"https://github.com/ayyaruq/xivanalysis.git","svn_url":"https://github.com/ayyaruq/xivanalysis","homepage":"https://xivanalysis.com","size":2197,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"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":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"xivanalysis:master","ref":"master","sha":"fabd0a3624ab7e79d572e497ecfd70788cfd2995","user":{"login":"xivanalysis","id":39235942,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5MjM1OTQy","avatar_url":"https://avatars0.githubusercontent.com/u/39235942?v=4","gravatar_id":"","url":"https://api.github.com/users/xivanalysis","html_url":"https://github.com/xivanalysis","followers_url":"https://api.github.com/users/xivanalysis/followers","following_url":"https://api.github.com/users/xivanalysis/following{/other_user}","gists_url":"https://api.github.com/users/xivanalysis/gists{/gist_id}","starred_url":"https://api.github.com/users/xivanalysis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xivanalysis/subscriptions","organizations_url":"https://api.github.com/users/xivanalysis/orgs","repos_url":"https://api.github.com/users/xivanalysis/repos","events_url":"https://api.github.com/users/xivanalysis/events{/privacy}","received_events_url":"https://api.github.com/users/xivanalysis/received_events","type":"Organization","site_admin":false},"repo":{"id":132010919,"node_id":"MDEwOlJlcG9zaXRvcnkxMzIwMTA5MTk=","name":"xivanalysis","full_name":"xivanalysis/xivanalysis","owner":{"login":"xivanalysis","id":39235942,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5MjM1OTQy","avatar_url":"https://avatars0.githubusercontent.com/u/39235942?v=4","gravatar_id":"","url":"https://api.github.com/users/xivanalysis","html_url":"https://github.com/xivanalysis","followers_url":"https://api.github.com/users/xivanalysis/followers","following_url":"https://api.github.com/users/xivanalysis/following{/other_user}","gists_url":"https://api.github.com/users/xivanalysis/gists{/gist_id}","starred_url":"https://api.github.com/users/xivanalysis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xivanalysis/subscriptions","organizations_url":"https://api.github.com/users/xivanalysis/orgs","repos_url":"https://api.github.com/users/xivanalysis/repos","events_url":"https://api.github.com/users/xivanalysis/events{/privacy}","received_events_url":"https://api.github.com/users/xivanalysis/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/xivanalysis/xivanalysis","description":"Automated performance analysis and suggestion platform for Final Fantasy XIV: Stormblood.","fork":false,"url":"https://api.github.com/repos/xivanalysis/xivanalysis","forks_url":"https://api.github.com/repos/xivanalysis/xivanalysis/forks","keys_url":"https://api.github.com/repos/xivanalysis/xivanalysis/keys{/key_id}","collaborators_url":"https://api.github.com/repos/xivanalysis/xivanalysis/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/xivanalysis/xivanalysis/teams","hooks_url":"https://api.github.com/repos/xivanalysis/xivanalysis/hooks","issue_events_url":"https://api.github.com/repos/xivanalysis/xivanalysis/issues/events{/number}","events_url":"https://api.github.com/repos/xivanalysis/xivanalysis/events","assignees_url":"https://api.github.com/repos/xivanalysis/xivanalysis/assignees{/user}","branches_url":"https://api.github.com/repos/xivanalysis/xivanalysis/branches{/branch}","tags_url":"https://api.github.com/repos/xivanalysis/xivanalysis/tags","blobs_url":"https://api.github.com/repos/xivanalysis/xivanalysis/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/xivanalysis/xivanalysis/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/xivanalysis/xivanalysis/git/refs{/sha}","trees_url":"https://api.github.com/repos/xivanalysis/xivanalysis/git/trees{/sha}","statuses_url":"https://api.github.com/repos/xivanalysis/xivanalysis/statuses/{sha}","languages_url":"https://api.github.com/repos/xivanalysis/xivanalysis/languages","stargazers_url":"https://api.github.com/repos/xivanalysis/xivanalysis/stargazers","contributors_url":"https://api.github.com/repos/xivanalysis/xivanalysis/contributors","subscribers_url":"https://api.github.com/repos/xivanalysis/xivanalysis/subscribers","subscription_url":"https://api.github.com/repos/xivanalysis/xivanalysis/subscription","commits_url":"https://api.github.com/repos/xivanalysis/xivanalysis/commits{/sha}","git_commits_url":"https://api.github.com/repos/xivanalysis/xivanalysis/git/commits{/sha}","comments_url":"https://api.github.com/repos/xivanalysis/xivanalysis/comments{/number}","issue_comment_url":"https://api.github.com/repos/xivanalysis/xivanalysis/issues/comments{/number}","contents_url":"https://api.github.com/repos/xivanalysis/xivanalysis/contents/{+path}","compare_url":"https://api.github.com/repos/xivanalysis/xivanalysis/compare/{base}...{head}","merges_url":"https://api.github.com/repos/xivanalysis/xivanalysis/merges","archive_url":"https://api.github.com/repos/xivanalysis/xivanalysis/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/xivanalysis/xivanalysis/downloads","issues_url":"https://api.github.com/repos/xivanalysis/xivanalysis/issues{/number}","pulls_url":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls{/number}","milestones_url":"https://api.github.com/repos/xivanalysis/xivanalysis/milestones{/number}","notifications_url":"https://api.github.com/repos/xivanalysis/xivanalysis/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/xivanalysis/xivanalysis/labels{/name}","releases_url":"https://api.github.com/repos/xivanalysis/xivanalysis/releases{/id}","deployments_url":"https://api.github.com/repos/xivanalysis/xivanalysis/deployments","created_at":"2018-05-03T14:56:32Z","updated_at":"2018-07-27T17:38:49Z","pushed_at":"2018-07-27T23:58:19Z","git_url":"git://github.com/xivanalysis/xivanalysis.git","ssh_url":"git@github.com:xivanalysis/xivanalysis.git","clone_url":"https://github.com/xivanalysis/xivanalysis.git","svn_url":"https://github.com/xivanalysis/xivanalysis","homepage":"https://xivanalysis.com","size":2221,"stargazers_count":21,"watchers_count":21,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":30,"mirror_url":null,"archived":false,"open_issues_count":22,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":30,"open_issues":22,"watchers":21,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56"},"html":{"href":"https://github.com/xivanalysis/xivanalysis/pull/56"},"issue":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/issues/56"},"comments":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/issues/56/comments"},"review_comments":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56/comments"},"review_comment":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/pulls/56/commits"},"statuses":{"href":"https://api.github.com/repos/xivanalysis/xivanalysis/statuses/a6ac51604680a20289b06279f24c3d5450e3cabf"}},"author_association":"NONE"}}
{"actor":{"display_login":"ackwell"}}