{"action":"created","comment":{"url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/comments/219972331","pull_request_review_id":158274666,"id":219972331,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxOTk3MjMzMQ==","diff_hunk":"@@ -115,97 +125,97 @@ open class ESRefreshComponent: UIView {\n             }\n         }\n     }\n-    \n-}\n-\n-extension ESRefreshComponent /* KVO methods */ {\n-    \n-    fileprivate static var context = \"ESRefreshKVOContext\"\n-    fileprivate static let offsetKeyPath = \"contentOffset\"\n-    fileprivate static let contentSizeKeyPath = \"contentSize\"\n-    \n-    public func ignoreObserver(_ ignore: Bool = false) {\n-        if let scrollView = scrollView {\n-            scrollView.isScrollEnabled = !ignore\n-        }\n-        isIgnoreObserving = ignore\n-    }\n-    \n-    fileprivate func addObserver(_ view: UIView?) {\n-        if let scrollView = view as? UIScrollView, !isObservingScrollView {\n-            scrollView.addObserver(self, forKeyPath: ESRefreshComponent.offsetKeyPath, options: [.initial, .new], context: &ESRefreshComponent.context)\n-            scrollView.addObserver(self, forKeyPath: ESRefreshComponent.contentSizeKeyPath, options: [.initial, .new], context: &ESRefreshComponent.context)\n-            isObservingScrollView = true\n-        }\n-    }\n-    \n-    fileprivate func removeObserver() {\n-        if let scrollView = superview as? UIScrollView, isObservingScrollView {\n-            scrollView.removeObserver(self, forKeyPath: ESRefreshComponent.offsetKeyPath, context: &ESRefreshComponent.context)\n-            scrollView.removeObserver(self, forKeyPath: ESRefreshComponent.contentSizeKeyPath, context: &ESRefreshComponent.context)\n-            isObservingScrollView = false\n-        }\n-    }\n-    \n-    override open func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {\n-        if context == &ESRefreshComponent.context {\n-            guard isUserInteractionEnabled == true && isHidden == false else {\n-                return\n-            }\n-            if keyPath == ESRefreshComponent.contentSizeKeyPath {\n-                if isIgnoreObserving == false {\n-                    sizeChangeAction(object: object as AnyObject?, change: change)\n-                }\n-            } else if keyPath == ESRefreshComponent.offsetKeyPath {\n-                if isIgnoreObserving == false {\n-                    offsetChangeAction(object: object as AnyObject?, change: change)\n-                }\n-            }\n-        } else {\n-\n-        }\n-    }\n-    \n-}\n \n-public extension ESRefreshComponent /* Action */ {\n+    // MARK: - Actions\n \n     public final func startRefreshing(isAuto: Bool = false) -> Void {\n         guard isRefreshing == false && isAutoRefreshing == false else {\n             return\n         }\n-        \n+\n         _isRefreshing = !isAuto\n         _isAutoRefreshing = isAuto\n-        \n+\n         self.start()\n     }\n-    \n+\n     public final func stopRefreshing() -> Void {\n         guard isRefreshing == true || isAutoRefreshing == true else {\n             return\n         }\n-        \n+\n         self.stop()\n     }\n \n     public func start() {\n-        \n+\n     }\n-    \n+\n     public func stop() {\n         _isRefreshing = false\n         _isAutoRefreshing = false\n     }\n-    \n+\n     //  ScrollView contentSize change action\n-    public func sizeChangeAction(object: AnyObject?, change: [NSKeyValueChangeKey : Any]?) {\n-        \n+    public func sizeChangeAction(scrollView: UIScrollView, value: NSKeyValueObservedChange<CGSize>) {\n+\n     }\n-    \n+\n     //  ScrollView offset change action\n-    public func offsetChangeAction(object: AnyObject?, change: [NSKeyValueChangeKey : Any]?) {\n-        \n+    public func offsetChangeAction(scrollView: UIScrollView, value: NSKeyValueObservedChange<CGPoint>) {\n+    }\n+    \n+}\n+\n+// MARK: - KVO\n+\n+extension ESRefreshComponent {\n+    \n+    public func ignoreObserver(_ ignore: Bool = false) {\n+        if let scrollView = scrollView {\n+            scrollView.isScrollEnabled = !ignore\n+        }\n+        isIgnoreObserving = ignore\n+    }\n+    \n+    fileprivate func addObserver(_ view: UIView?) {\n+        guard\n+            let scrollView = view as? UIScrollView,\n+            !isObservingScrollView\n+        else { return }\n+\n+        offsetObservation = scrollView.observe(\n+            \\UIScrollView.contentOffset,","path":"Sources/ESRefreshComponent.swift","position":146,"original_position":146,"commit_id":"fd104485f6e1287031ca4a97e9139180886f0da1","original_commit_id":"fd104485f6e1287031ca4a97e9139180886f0da1","user":{"login":"AdiAyyakad","id":901668,"node_id":"MDQ6VXNlcjkwMTY2OA==","avatar_url":"https://avatars1.githubusercontent.com/u/901668?v=4","gravatar_id":"","url":"https://api.github.com/users/AdiAyyakad","html_url":"https://github.com/AdiAyyakad","followers_url":"https://api.github.com/users/AdiAyyakad/followers","following_url":"https://api.github.com/users/AdiAyyakad/following{/other_user}","gists_url":"https://api.github.com/users/AdiAyyakad/gists{/gist_id}","starred_url":"https://api.github.com/users/AdiAyyakad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdiAyyakad/subscriptions","organizations_url":"https://api.github.com/users/AdiAyyakad/orgs","repos_url":"https://api.github.com/users/AdiAyyakad/repos","events_url":"https://api.github.com/users/AdiAyyakad/events{/privacy}","received_events_url":"https://api.github.com/users/AdiAyyakad/received_events","type":"User","site_admin":false},"body":"Hmm so `observe(_:options:changeHandler:)` takes in a `KeyPath<Root, Value>` and that `init` is shorthanded by the `\\` operator. I tried just doing `.contentOffset` and I'm getting a `Generic parameter 'Value' could not be inferred` error.","created_at":"2018-09-24T20:10:56Z","updated_at":"2018-09-24T20:10:57Z","html_url":"https://github.com/ButterflyNetwork/pull-to-refresh/pull/1#discussion_r219972331","pull_request_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/comments/219972331"},"html":{"href":"https://github.com/ButterflyNetwork/pull-to-refresh/pull/1#discussion_r219972331"},"pull_request":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1"}},"in_reply_to_id":219958879},"pull_request":{"url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1","id":217711543,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE3NzExNTQz","html_url":"https://github.com/ButterflyNetwork/pull-to-refresh/pull/1","diff_url":"https://github.com/ButterflyNetwork/pull-to-refresh/pull/1.diff","patch_url":"https://github.com/ButterflyNetwork/pull-to-refresh/pull/1.patch","issue_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/1","number":1,"state":"open","locked":false,"title":"Block Based KVO","user":{"login":"AdiAyyakad","id":901668,"node_id":"MDQ6VXNlcjkwMTY2OA==","avatar_url":"https://avatars1.githubusercontent.com/u/901668?v=4","gravatar_id":"","url":"https://api.github.com/users/AdiAyyakad","html_url":"https://github.com/AdiAyyakad","followers_url":"https://api.github.com/users/AdiAyyakad/followers","following_url":"https://api.github.com/users/AdiAyyakad/following{/other_user}","gists_url":"https://api.github.com/users/AdiAyyakad/gists{/gist_id}","starred_url":"https://api.github.com/users/AdiAyyakad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdiAyyakad/subscriptions","organizations_url":"https://api.github.com/users/AdiAyyakad/orgs","repos_url":"https://api.github.com/users/AdiAyyakad/repos","events_url":"https://api.github.com/users/AdiAyyakad/events{/privacy}","received_events_url":"https://api.github.com/users/AdiAyyakad/received_events","type":"User","site_admin":false},"body":"Moved from the original keypath observations to the block based API because safety. Check out the linked PR for a more descriptive description and the Asana ticket.","created_at":"2018-09-24T16:15:56Z","updated_at":"2018-09-24T20:10:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"33c2534ead2d4b951500ccdf3c735b240df3de8c","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1/commits","review_comments_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1/comments","review_comment_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/1/comments","statuses_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/statuses/fd104485f6e1287031ca4a97e9139180886f0da1","head":{"label":"ButterflyNetwork:block-based-kvo","ref":"block-based-kvo","sha":"fd104485f6e1287031ca4a97e9139180886f0da1","user":{"login":"ButterflyNetwork","id":651456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY1MTQ1Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/651456?v=4","gravatar_id":"","url":"https://api.github.com/users/ButterflyNetwork","html_url":"https://github.com/ButterflyNetwork","followers_url":"https://api.github.com/users/ButterflyNetwork/followers","following_url":"https://api.github.com/users/ButterflyNetwork/following{/other_user}","gists_url":"https://api.github.com/users/ButterflyNetwork/gists{/gist_id}","starred_url":"https://api.github.com/users/ButterflyNetwork/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ButterflyNetwork/subscriptions","organizations_url":"https://api.github.com/users/ButterflyNetwork/orgs","repos_url":"https://api.github.com/users/ButterflyNetwork/repos","events_url":"https://api.github.com/users/ButterflyNetwork/events{/privacy}","received_events_url":"https://api.github.com/users/ButterflyNetwork/received_events","type":"Organization","site_admin":false},"repo":{"id":74411960,"node_id":"MDEwOlJlcG9zaXRvcnk3NDQxMTk2MA==","name":"pull-to-refresh","full_name":"ButterflyNetwork/pull-to-refresh","private":false,"owner":{"login":"ButterflyNetwork","id":651456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY1MTQ1Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/651456?v=4","gravatar_id":"","url":"https://api.github.com/users/ButterflyNetwork","html_url":"https://github.com/ButterflyNetwork","followers_url":"https://api.github.com/users/ButterflyNetwork/followers","following_url":"https://api.github.com/users/ButterflyNetwork/following{/other_user}","gists_url":"https://api.github.com/users/ButterflyNetwork/gists{/gist_id}","starred_url":"https://api.github.com/users/ButterflyNetwork/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ButterflyNetwork/subscriptions","organizations_url":"https://api.github.com/users/ButterflyNetwork/orgs","repos_url":"https://api.github.com/users/ButterflyNetwork/repos","events_url":"https://api.github.com/users/ButterflyNetwork/events{/privacy}","received_events_url":"https://api.github.com/users/ButterflyNetwork/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/ButterflyNetwork/pull-to-refresh","description":"An easy way to use pull to refresh and infinite scrolling in Swift.","fork":true,"url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh","forks_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/forks","keys_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/teams","hooks_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/hooks","issue_events_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/events{/number}","events_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/events","assignees_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/assignees{/user}","branches_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/branches{/branch}","tags_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/tags","blobs_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/refs{/sha}","trees_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/statuses/{sha}","languages_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/languages","stargazers_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/stargazers","contributors_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/contributors","subscribers_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/subscribers","subscription_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/subscription","commits_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/commits{/sha}","git_commits_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/commits{/sha}","comments_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/comments{/number}","issue_comment_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/comments{/number}","contents_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/contents/{+path}","compare_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/merges","archive_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/downloads","issues_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues{/number}","pulls_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls{/number}","milestones_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/milestones{/number}","notifications_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/labels{/name}","releases_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/releases{/id}","deployments_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/deployments","created_at":"2016-11-21T22:36:01Z","updated_at":"2016-11-21T22:36:02Z","pushed_at":"2018-09-24T16:15:56Z","git_url":"git://github.com/ButterflyNetwork/pull-to-refresh.git","ssh_url":"git@github.com:ButterflyNetwork/pull-to-refresh.git","clone_url":"https://github.com/ButterflyNetwork/pull-to-refresh.git","svn_url":"https://github.com/ButterflyNetwork/pull-to-refresh","homepage":"","size":36854,"stargazers_count":0,"watchers_count":0,"language":"Swift","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":1,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"ButterflyNetwork:master","ref":"master","sha":"4a359157045579abb8cca581830ffe895a17fcae","user":{"login":"ButterflyNetwork","id":651456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY1MTQ1Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/651456?v=4","gravatar_id":"","url":"https://api.github.com/users/ButterflyNetwork","html_url":"https://github.com/ButterflyNetwork","followers_url":"https://api.github.com/users/ButterflyNetwork/followers","following_url":"https://api.github.com/users/ButterflyNetwork/following{/other_user}","gists_url":"https://api.github.com/users/ButterflyNetwork/gists{/gist_id}","starred_url":"https://api.github.com/users/ButterflyNetwork/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ButterflyNetwork/subscriptions","organizations_url":"https://api.github.com/users/ButterflyNetwork/orgs","repos_url":"https://api.github.com/users/ButterflyNetwork/repos","events_url":"https://api.github.com/users/ButterflyNetwork/events{/privacy}","received_events_url":"https://api.github.com/users/ButterflyNetwork/received_events","type":"Organization","site_admin":false},"repo":{"id":74411960,"node_id":"MDEwOlJlcG9zaXRvcnk3NDQxMTk2MA==","name":"pull-to-refresh","full_name":"ButterflyNetwork/pull-to-refresh","private":false,"owner":{"login":"ButterflyNetwork","id":651456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY1MTQ1Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/651456?v=4","gravatar_id":"","url":"https://api.github.com/users/ButterflyNetwork","html_url":"https://github.com/ButterflyNetwork","followers_url":"https://api.github.com/users/ButterflyNetwork/followers","following_url":"https://api.github.com/users/ButterflyNetwork/following{/other_user}","gists_url":"https://api.github.com/users/ButterflyNetwork/gists{/gist_id}","starred_url":"https://api.github.com/users/ButterflyNetwork/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ButterflyNetwork/subscriptions","organizations_url":"https://api.github.com/users/ButterflyNetwork/orgs","repos_url":"https://api.github.com/users/ButterflyNetwork/repos","events_url":"https://api.github.com/users/ButterflyNetwork/events{/privacy}","received_events_url":"https://api.github.com/users/ButterflyNetwork/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/ButterflyNetwork/pull-to-refresh","description":"An easy way to use pull to refresh and infinite scrolling in Swift.","fork":true,"url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh","forks_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/forks","keys_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/teams","hooks_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/hooks","issue_events_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/events{/number}","events_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/events","assignees_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/assignees{/user}","branches_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/branches{/branch}","tags_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/tags","blobs_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/refs{/sha}","trees_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/statuses/{sha}","languages_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/languages","stargazers_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/stargazers","contributors_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/contributors","subscribers_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/subscribers","subscription_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/subscription","commits_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/commits{/sha}","git_commits_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/git/commits{/sha}","comments_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/comments{/number}","issue_comment_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/comments{/number}","contents_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/contents/{+path}","compare_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/merges","archive_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/downloads","issues_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues{/number}","pulls_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls{/number}","milestones_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/milestones{/number}","notifications_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/labels{/name}","releases_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/releases{/id}","deployments_url":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/deployments","created_at":"2016-11-21T22:36:01Z","updated_at":"2016-11-21T22:36:02Z","pushed_at":"2018-09-24T16:15:56Z","git_url":"git://github.com/ButterflyNetwork/pull-to-refresh.git","ssh_url":"git@github.com:ButterflyNetwork/pull-to-refresh.git","clone_url":"https://github.com/ButterflyNetwork/pull-to-refresh.git","svn_url":"https://github.com/ButterflyNetwork/pull-to-refresh","homepage":"","size":36854,"stargazers_count":0,"watchers_count":0,"language":"Swift","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":1,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1"},"html":{"href":"https://github.com/ButterflyNetwork/pull-to-refresh/pull/1"},"issue":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/1"},"comments":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/issues/1/comments"},"review_comments":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1/comments"},"review_comment":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/pulls/1/commits"},"statuses":{"href":"https://api.github.com/repos/ButterflyNetwork/pull-to-refresh/statuses/fd104485f6e1287031ca4a97e9139180886f0da1"}},"author_association":"NONE"}}
{"actor":{"display_login":"AdiAyyakad"}}