{"action":"created","comment":{"url":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/comments/244265110","pull_request_review_id":188222866,"id":244265110,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDI0NDI2NTExMA==","diff_hunk":"@@ -0,0 +1,358 @@\n+# -*- coding: utf-8 -*-\n+\n+from ...core.enum.ea_mode import EAMode\n+from ..core.enum.condition_status_code import ConditionStatusCode\n+from ...simulator.m68k import M68K\n+from ...core.opcodes.opcode import Opcode\n+from ...core.util import opcode_util\n+from ...core.enum.op_size import OpSize\n+from ..util.parsing import parse_assembly_parameter\n+\n+# makes TC way easier lol\n+from bitstring import Bits\n+\n+COND_CODE_TO_OPCODE = {\n+    '\\x00': 'BRA',\n+    '\\x02': 'BHI',\n+    '\\x03': 'BLS',\n+    '\\x04': 'BCC',\n+    '\\x05': 'BCS',\n+    '\\x06': 'BNE',\n+    '\\x07': 'BEQ',\n+    '\\x08': 'BVC',\n+    '\\x09': 'BVS',\n+    '\\x0A': 'BPL',\n+    '\\x0B': 'BMI',\n+    '\\x0C': 'BGE',\n+    '\\x0D': 'BLT',\n+    '\\x0E': 'BGT',\n+    '\\x0F': 'BLE'\n+}\n+\n+class branch_code(Opcode):\n+    \"\"\"\n+    All Branch operations will inherit from branch_code.\n+    there will be a conditional function to be overidden across child classes\n+    one must also redefine self.cond_code across child classes\n+    Additionally, a redefinition of command_matches(), from_str(), and disassemble_instruction() will suffice\n+    \"\"\"\n+\n+    operand = None\n+    address = None\n+    cond_code = None\n+    offset = None\n+    size = None\n+    \n+    def __init__(self, params: list):\n+        assert len(params) == 3\n+        assert isinstance(params[0], int)\n+        assert isinstance(params[1], OpSize)\n+        assert isinstance(params[2], int)\n+\n+        # Operand = target address\n+        self.operand = params[0]\n+        self.size = params[1]\n+        self.address = params[2]\n+\n+        # make offset out of operand\n+        self.offset = self.operand - self.address\n+        self.offset = Bits(int=self.offset,\n+                           length=(self.size.get_number_of_bytes() * 8)).int\n+        \n+    def conditional(self, simulator: M68K):\n+        \"\"\"\n+        This is a method stub to be overridden in child classes\n+        Checks the status register according to the specifics of \n+        whatever Bcc variant this is.\n+        :param simulator: the M68K sim object that contains the CCR we are checking\n+        :return bool: returns true or false \n+        \"\"\"\n+        raise Exception(\"Branch Operation did not override Parent's conditional stub\")\n+        \n+    def assemble(self) -> bytearray:\n+        \"\"\"\n+        Assembles opcode into Hex\n+        :return: Hex for this operation\n+        \"\"\"\n+        \n+        # yes you actually need to subclass this\n+        assert self.cond_code != None\n+\n+        # hold size\n+        extraSize = 2\n+        \n+        # clear for >8 bit offset\n+        lastbyte = '\\x00'\n+        \n+        # if offset is 8 bits than it is inside the opword\n+        if self.size == OpSize.BYTE:\n+            lastbyte = self.offset.to_bytes()\n+            extraSize = 0\n+\n+        # if offset is 32 bits than the last chunk of opword is FF\n+        if self.size == OpSize.LONG:\n+            lastbyte = '\\xFF'\n+            extraSize = 4\n+            \n+        # first byte = 6+cond_code\n+        firstbyte =  6 << 4\n+        firstbyte &= self.cond_code.to_bytes()\n+        \n+        opword = firstbyte << 8\n+        opword &= lastbyte\n+\n+        # convert to bytearray\n+        opword = bytearray(opword.to_bytes(2, 'big'))\n+\n+        # stop here if 8 bit offset\n+        if self.size == OpSize.BYTE:\n+            return opword\n+\n+        # add offset\n+        opword.extend(self.offset.to_bytes(extraSize, \"big\"))\n+\n+        return opword\n+\n+    \n+    def execute(self, simulator: M68K):\n+        \"\"\"\n+        Commands the Simulator according to this opcode\n+        :param simulator:\n+        :return: nothing\n+        \"\"\"\n+\n+        # check conditional\n+        if not self.conditional(simulator):\n+            pass\n+            \n+        simulator.increment_program_counter(self.offset)\n+        \n+    def __str__(self):\n+        \"\"\"\n+        converts command to a string\n+        :return: string rep of command\n+        \"\"\"\n+\n+        return \"{s} ${d}\".format(\n+                s = COND_CODE_TO_OPCODE.get(self.cond_code),\n+                d = self.operand or (self.address + 2 + (self.size if self.size > 1 else 0) + self.offset))\n+\n+    @classmethod\n+    def command_matches(cls, command: str) -> bool:\n+        \"\"\"\n+        Checks whether a command string is an instance of this command type\n+        :param command: The command string to check (e.g. 'MOVE.B', 'LEA', etc.)\n+        :return: Whether the string is an instance of this command type\n+        \"\"\"\n+        raise Exception(\"Branch Operation did not override parent class command_matches stub!\")\n+        #return\n+\n+    @classmethod\n+    def get_word_length(cls, command: str, parameters: str) -> int:\n+        \"\"\"\n+        Gets what the end length of this command will be in memory\n+        :param command: The text of the command itself (e.g. \"LEA\", \"MOVE.B\", etc.)\n+        :param parameters: The parameters after the command\n+        :return: The length of the bytes in memory in words\n+        \"\"\"\n+        \n+        # opword\n+        length = 2\n+        \n+        # BIG NOTE: I am explicitly ignoring size codes because there are no defined flippy boys","path":"easier68k/core/opcodes/Bcc.py","position":162,"original_position":162,"commit_id":"1f6d1e500ab1fa987b0f0d3e946715cce1aeb153","original_commit_id":"1f6d1e500ab1fa987b0f0d3e946715cce1aeb153","user":{"login":"Chris-Johnston","id":16418643,"node_id":"MDQ6VXNlcjE2NDE4NjQz","avatar_url":"https://avatars0.githubusercontent.com/u/16418643?v=4","gravatar_id":"","url":"https://api.github.com/users/Chris-Johnston","html_url":"https://github.com/Chris-Johnston","followers_url":"https://api.github.com/users/Chris-Johnston/followers","following_url":"https://api.github.com/users/Chris-Johnston/following{/other_user}","gists_url":"https://api.github.com/users/Chris-Johnston/gists{/gist_id}","starred_url":"https://api.github.com/users/Chris-Johnston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Chris-Johnston/subscriptions","organizations_url":"https://api.github.com/users/Chris-Johnston/orgs","repos_url":"https://api.github.com/users/Chris-Johnston/repos","events_url":"https://api.github.com/users/Chris-Johnston/events{/privacy}","received_events_url":"https://api.github.com/users/Chris-Johnston/received_events","type":"User","site_admin":false},"body":"Do we have to worry about when the 8-bit displacement is 0 or `0xFF` here, or is that not an issue?\r\n\r\nSee page 130: https://www.nxp.com/files-static/archives/doc/ref_manual/M68000PRM.pdf","created_at":"2018-12-28T05:30:08Z","updated_at":"2018-12-28T05:43:12Z","html_url":"https://github.com/Chris-Johnston/Easier68k/pull/131#discussion_r244265110","pull_request_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131","author_association":"OWNER","_links":{"self":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/comments/244265110"},"html":{"href":"https://github.com/Chris-Johnston/Easier68k/pull/131#discussion_r244265110"},"pull_request":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131"}}},"pull_request":{"url":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131","id":239355572,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM5MzU1NTcy","html_url":"https://github.com/Chris-Johnston/Easier68k/pull/131","diff_url":"https://github.com/Chris-Johnston/Easier68k/pull/131.diff","patch_url":"https://github.com/Chris-Johnston/Easier68k/pull/131.patch","issue_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/issues/131","number":131,"state":"open","locked":false,"title":"[WIP] All the branch instructions","user":{"login":"pupper68k","id":45747549,"node_id":"MDQ6VXNlcjQ1NzQ3NTQ5","avatar_url":"https://avatars1.githubusercontent.com/u/45747549?v=4","gravatar_id":"","url":"https://api.github.com/users/pupper68k","html_url":"https://github.com/pupper68k","followers_url":"https://api.github.com/users/pupper68k/followers","following_url":"https://api.github.com/users/pupper68k/following{/other_user}","gists_url":"https://api.github.com/users/pupper68k/gists{/gist_id}","starred_url":"https://api.github.com/users/pupper68k/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pupper68k/subscriptions","organizations_url":"https://api.github.com/users/pupper68k/orgs","repos_url":"https://api.github.com/users/pupper68k/repos","events_url":"https://api.github.com/users/pupper68k/events{/privacy}","received_events_url":"https://api.github.com/users/pupper68k/received_events","type":"User","site_admin":false},"body":"Tasks:\r\n - base class for Branch Instructions (DONE)\r\n - edits to assembler.py to pass in the address of the branch instruction (TODO)\r\n - overloads for each 16 branch instructions (TODO)\r\n - tests for each branch instruction (TODO)\r\n\r\n\r\nThis PR will track the changes made to support branch instructions.","created_at":"2018-12-18T03:40:49Z","updated_at":"2018-12-28T05:43:12Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a0dec3624e59fa3b6f72c9ef6da307493b870aa5","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131/commits","review_comments_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131/comments","review_comment_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/issues/131/comments","statuses_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/statuses/1f6d1e500ab1fa987b0f0d3e946715cce1aeb153","head":{"label":"pupper68k:branches-whomst-less-stale","ref":"branches-whomst-less-stale","sha":"1f6d1e500ab1fa987b0f0d3e946715cce1aeb153","user":{"login":"pupper68k","id":45747549,"node_id":"MDQ6VXNlcjQ1NzQ3NTQ5","avatar_url":"https://avatars1.githubusercontent.com/u/45747549?v=4","gravatar_id":"","url":"https://api.github.com/users/pupper68k","html_url":"https://github.com/pupper68k","followers_url":"https://api.github.com/users/pupper68k/followers","following_url":"https://api.github.com/users/pupper68k/following{/other_user}","gists_url":"https://api.github.com/users/pupper68k/gists{/gist_id}","starred_url":"https://api.github.com/users/pupper68k/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pupper68k/subscriptions","organizations_url":"https://api.github.com/users/pupper68k/orgs","repos_url":"https://api.github.com/users/pupper68k/repos","events_url":"https://api.github.com/users/pupper68k/events{/privacy}","received_events_url":"https://api.github.com/users/pupper68k/received_events","type":"User","site_admin":false},"repo":{"id":161953017,"node_id":"MDEwOlJlcG9zaXRvcnkxNjE5NTMwMTc=","name":"Easier68k","full_name":"pupper68k/Easier68k","private":false,"owner":{"login":"pupper68k","id":45747549,"node_id":"MDQ6VXNlcjQ1NzQ3NTQ5","avatar_url":"https://avatars1.githubusercontent.com/u/45747549?v=4","gravatar_id":"","url":"https://api.github.com/users/pupper68k","html_url":"https://github.com/pupper68k","followers_url":"https://api.github.com/users/pupper68k/followers","following_url":"https://api.github.com/users/pupper68k/following{/other_user}","gists_url":"https://api.github.com/users/pupper68k/gists{/gist_id}","starred_url":"https://api.github.com/users/pupper68k/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pupper68k/subscriptions","organizations_url":"https://api.github.com/users/pupper68k/orgs","repos_url":"https://api.github.com/users/pupper68k/repos","events_url":"https://api.github.com/users/pupper68k/events{/privacy}","received_events_url":"https://api.github.com/users/pupper68k/received_events","type":"User","site_admin":false},"html_url":"https://github.com/pupper68k/Easier68k","description":"Work In Progress - A Python 68k assembler and simulator.","fork":true,"url":"https://api.github.com/repos/pupper68k/Easier68k","forks_url":"https://api.github.com/repos/pupper68k/Easier68k/forks","keys_url":"https://api.github.com/repos/pupper68k/Easier68k/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pupper68k/Easier68k/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pupper68k/Easier68k/teams","hooks_url":"https://api.github.com/repos/pupper68k/Easier68k/hooks","issue_events_url":"https://api.github.com/repos/pupper68k/Easier68k/issues/events{/number}","events_url":"https://api.github.com/repos/pupper68k/Easier68k/events","assignees_url":"https://api.github.com/repos/pupper68k/Easier68k/assignees{/user}","branches_url":"https://api.github.com/repos/pupper68k/Easier68k/branches{/branch}","tags_url":"https://api.github.com/repos/pupper68k/Easier68k/tags","blobs_url":"https://api.github.com/repos/pupper68k/Easier68k/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pupper68k/Easier68k/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pupper68k/Easier68k/git/refs{/sha}","trees_url":"https://api.github.com/repos/pupper68k/Easier68k/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pupper68k/Easier68k/statuses/{sha}","languages_url":"https://api.github.com/repos/pupper68k/Easier68k/languages","stargazers_url":"https://api.github.com/repos/pupper68k/Easier68k/stargazers","contributors_url":"https://api.github.com/repos/pupper68k/Easier68k/contributors","subscribers_url":"https://api.github.com/repos/pupper68k/Easier68k/subscribers","subscription_url":"https://api.github.com/repos/pupper68k/Easier68k/subscription","commits_url":"https://api.github.com/repos/pupper68k/Easier68k/commits{/sha}","git_commits_url":"https://api.github.com/repos/pupper68k/Easier68k/git/commits{/sha}","comments_url":"https://api.github.com/repos/pupper68k/Easier68k/comments{/number}","issue_comment_url":"https://api.github.com/repos/pupper68k/Easier68k/issues/comments{/number}","contents_url":"https://api.github.com/repos/pupper68k/Easier68k/contents/{+path}","compare_url":"https://api.github.com/repos/pupper68k/Easier68k/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pupper68k/Easier68k/merges","archive_url":"https://api.github.com/repos/pupper68k/Easier68k/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pupper68k/Easier68k/downloads","issues_url":"https://api.github.com/repos/pupper68k/Easier68k/issues{/number}","pulls_url":"https://api.github.com/repos/pupper68k/Easier68k/pulls{/number}","milestones_url":"https://api.github.com/repos/pupper68k/Easier68k/milestones{/number}","notifications_url":"https://api.github.com/repos/pupper68k/Easier68k/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pupper68k/Easier68k/labels{/name}","releases_url":"https://api.github.com/repos/pupper68k/Easier68k/releases{/id}","deployments_url":"https://api.github.com/repos/pupper68k/Easier68k/deployments","created_at":"2018-12-15T23:49:08Z","updated_at":"2018-12-15T23:49:10Z","pushed_at":"2018-12-28T05:19:46Z","git_url":"git://github.com/pupper68k/Easier68k.git","ssh_url":"git@github.com:pupper68k/Easier68k.git","clone_url":"https://github.com/pupper68k/Easier68k.git","svn_url":"https://github.com/pupper68k/Easier68k","homepage":"","size":361,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"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":"Chris-Johnston:master","ref":"master","sha":"69879211a3c9f992b29edcb92cdf56d030d2996f","user":{"login":"Chris-Johnston","id":16418643,"node_id":"MDQ6VXNlcjE2NDE4NjQz","avatar_url":"https://avatars0.githubusercontent.com/u/16418643?v=4","gravatar_id":"","url":"https://api.github.com/users/Chris-Johnston","html_url":"https://github.com/Chris-Johnston","followers_url":"https://api.github.com/users/Chris-Johnston/followers","following_url":"https://api.github.com/users/Chris-Johnston/following{/other_user}","gists_url":"https://api.github.com/users/Chris-Johnston/gists{/gist_id}","starred_url":"https://api.github.com/users/Chris-Johnston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Chris-Johnston/subscriptions","organizations_url":"https://api.github.com/users/Chris-Johnston/orgs","repos_url":"https://api.github.com/users/Chris-Johnston/repos","events_url":"https://api.github.com/users/Chris-Johnston/events{/privacy}","received_events_url":"https://api.github.com/users/Chris-Johnston/received_events","type":"User","site_admin":false},"repo":{"id":122309183,"node_id":"MDEwOlJlcG9zaXRvcnkxMjIzMDkxODM=","name":"Easier68k","full_name":"Chris-Johnston/Easier68k","private":false,"owner":{"login":"Chris-Johnston","id":16418643,"node_id":"MDQ6VXNlcjE2NDE4NjQz","avatar_url":"https://avatars0.githubusercontent.com/u/16418643?v=4","gravatar_id":"","url":"https://api.github.com/users/Chris-Johnston","html_url":"https://github.com/Chris-Johnston","followers_url":"https://api.github.com/users/Chris-Johnston/followers","following_url":"https://api.github.com/users/Chris-Johnston/following{/other_user}","gists_url":"https://api.github.com/users/Chris-Johnston/gists{/gist_id}","starred_url":"https://api.github.com/users/Chris-Johnston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Chris-Johnston/subscriptions","organizations_url":"https://api.github.com/users/Chris-Johnston/orgs","repos_url":"https://api.github.com/users/Chris-Johnston/repos","events_url":"https://api.github.com/users/Chris-Johnston/events{/privacy}","received_events_url":"https://api.github.com/users/Chris-Johnston/received_events","type":"User","site_admin":false},"html_url":"https://github.com/Chris-Johnston/Easier68k","description":"Work In Progress - A Python 68k assembler and simulator.","fork":false,"url":"https://api.github.com/repos/Chris-Johnston/Easier68k","forks_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/forks","keys_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/teams","hooks_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/hooks","issue_events_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/issues/events{/number}","events_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/events","assignees_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/assignees{/user}","branches_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/branches{/branch}","tags_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/tags","blobs_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/git/refs{/sha}","trees_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/statuses/{sha}","languages_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/languages","stargazers_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/stargazers","contributors_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/contributors","subscribers_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/subscribers","subscription_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/subscription","commits_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/commits{/sha}","git_commits_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/git/commits{/sha}","comments_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/comments{/number}","issue_comment_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/issues/comments{/number}","contents_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/contents/{+path}","compare_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/merges","archive_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/downloads","issues_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/issues{/number}","pulls_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls{/number}","milestones_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/milestones{/number}","notifications_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/labels{/name}","releases_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/releases{/id}","deployments_url":"https://api.github.com/repos/Chris-Johnston/Easier68k/deployments","created_at":"2018-02-21T08:19:23Z","updated_at":"2018-12-20T08:01:51Z","pushed_at":"2018-12-28T05:19:47Z","git_url":"git://github.com/Chris-Johnston/Easier68k.git","ssh_url":"git@github.com:Chris-Johnston/Easier68k.git","clone_url":"https://github.com/Chris-Johnston/Easier68k.git","svn_url":"https://github.com/Chris-Johnston/Easier68k","homepage":"","size":300,"stargazers_count":9,"watchers_count":9,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4,"mirror_url":null,"archived":false,"open_issues_count":33,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":4,"open_issues":33,"watchers":9,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131"},"html":{"href":"https://github.com/Chris-Johnston/Easier68k/pull/131"},"issue":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/issues/131"},"comments":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/issues/131/comments"},"review_comments":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131/comments"},"review_comment":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/pulls/131/commits"},"statuses":{"href":"https://api.github.com/repos/Chris-Johnston/Easier68k/statuses/1f6d1e500ab1fa987b0f0d3e946715cce1aeb153"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"Chris-Johnston"}}