{"action":"created","comment":{"url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/comments/144848015","pull_request_review_id":69561803,"id":144848015,"diff_hunk":"@@ -124,18 +127,41 @@ instance Default MemPool where\n         }\n \n ----------------------------------------------------------------------------\n--- ToilModifier\n+-- UtxoModifier, UndoMap and AddrCoinsMap\n ----------------------------------------------------------------------------\n \n type UtxoModifier = MM.MapModifier TxIn TxOutAux\n type UndoMap = HashMap TxId TxUndo\n-\n-fromUtxo :: Utxo -> UtxoModifier\n-fromUtxo = foldr (uncurry MM.insert) mempty . M.toList\n+type AddrCoinMap = HashMap Address Coin\n+\n+utxoToModifier :: Utxo -> UtxoModifier\n+utxoToModifier = foldr (uncurry MM.insert) mempty . M.toList\n+\n+-- | Takes utxo modifier and address-coin map with correspodning utxo\n+-- and applies utxo modifier to map.\n+-- Works for O(size of modifier * log (size of map)).\n+applyUtxoModToAddrCoinMap\n+    :: UtxoModifier\n+    -> (AddrCoinMap, Utxo)\n+    -> AddrCoinMap\n+applyUtxoModToAddrCoinMap modifier (addrCoins, utxo) =\n+    let outToPair = view _TxOut . toaOut in\n+    let resolvedAddrs =\n+          mapMaybe (fmap outToPair . flip M.lookup utxo)\n+                   (MM.deletions modifier) in\n+    let subAddress r c = if r < c then Just (c `unsafeSubCoin` r) else Nothing in\n+    let updateHM (ad, coins) = HM.update (subAddress coins) ad in\n+    let addrCoinsRest = foldr updateHM addrCoins resolvedAddrs in\n+    let modAddrCoins = map (outToPair . snd) (MM.insertions modifier) in\n+    foldr (uncurry $ HM.insertWith unsafeAddCoin) addrCoinsRest modAddrCoins","path":"txp/Pos/Txp/Toil/Types.hs","position":79,"original_position":79,"commit_id":"4cb931965733a333e5a6f32886bd1487961ec514","original_commit_id":"4cb931965733a333e5a6f32886bd1487961ec514","user":{"login":"adinapoli-iohk","id":29383371,"avatar_url":"https://avatars3.githubusercontent.com/u/29383371?v=4","gravatar_id":"","url":"https://api.github.com/users/adinapoli-iohk","html_url":"https://github.com/adinapoli-iohk","followers_url":"https://api.github.com/users/adinapoli-iohk/followers","following_url":"https://api.github.com/users/adinapoli-iohk/following{/other_user}","gists_url":"https://api.github.com/users/adinapoli-iohk/gists{/gist_id}","starred_url":"https://api.github.com/users/adinapoli-iohk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adinapoli-iohk/subscriptions","organizations_url":"https://api.github.com/users/adinapoli-iohk/orgs","repos_url":"https://api.github.com/users/adinapoli-iohk/repos","events_url":"https://api.github.com/users/adinapoli-iohk/events{/privacy}","received_events_url":"https://api.github.com/users/adinapoli-iohk/received_events","type":"User","site_admin":false},"body":"I find a bit hard to decompress this function in my head, mostly due to the use of let bindings coupled with folds. Maybe splitting this function into a bunch of `where` clauses, each one describing what is meant to be doing might help? In particular, as we are essentially transforming an `AddrCoinMap` (as we get as input an `AddrCoinMap` and we produce as output another `AddrCoinMap`) cannot we exploit the rich API `containers` give us to get the job done?\r\n\r\nI've also noticed how lazy this function is (in particular, any operation on maps which is not `seq`-ed appropriately will end up building thunks), which I'm wondering if could bite us in the back down the line (of course not always the solution is to go _strict_, so without any tangible measurement I really cannot tell 😁 ) .","created_at":"2017-10-16T13:36:29Z","updated_at":"2017-10-16T13:36:29Z","html_url":"https://github.com/input-output-hk/cardano-sl/pull/1735#discussion_r144848015","pull_request_url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/comments/144848015"},"html":{"href":"https://github.com/input-output-hk/cardano-sl/pull/1735#discussion_r144848015"},"pull_request":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735"}}},"pull_request":{"url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735","id":145254759,"html_url":"https://github.com/input-output-hk/cardano-sl/pull/1735","diff_url":"https://github.com/input-output-hk/cardano-sl/pull/1735.diff","patch_url":"https://github.com/input-output-hk/cardano-sl/pull/1735.patch","issue_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/1735","number":1735,"state":"open","locked":false,"title":"[CSM-494] `/api/wallets` (as well as `/api/accounts`) works for a long time","user":{"login":"pva701","id":7355273,"avatar_url":"https://avatars1.githubusercontent.com/u/7355273?v=4","gravatar_id":"","url":"https://api.github.com/users/pva701","html_url":"https://github.com/pva701","followers_url":"https://api.github.com/users/pva701/followers","following_url":"https://api.github.com/users/pva701/following{/other_user}","gists_url":"https://api.github.com/users/pva701/gists{/gist_id}","starred_url":"https://api.github.com/users/pva701/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pva701/subscriptions","organizations_url":"https://api.github.com/users/pva701/orgs","repos_url":"https://api.github.com/users/pva701/repos","events_url":"https://api.github.com/users/pva701/events{/privacy}","received_events_url":"https://api.github.com/users/pva701/received_events","type":"User","site_admin":false},"body":"At least one problem was we computed balance for an address via iterating over utxo. Now we store hashmap `Address -> Coin` corresponding to wallet utxo.\r\n\r\nI tested on old database, migration works. A number of addresses and transactions = 500, time was reduced from 6sec to 0.2sec. Result JSONs for `/api/wallets` and `/api/accounts/` before and after fix are same.\r\n\r\nTested with n = 3000, ~2 secs.\r\nThere is still what can be optimized, but I suppose it's enough for now and we should get a response from Richie for the current version.\r\n\r\n**UPD**: tested on both version of wallet-db: initial and version in `cardano-sl-1.0-exchange`","created_at":"2017-10-06T22:01:07Z","updated_at":"2017-10-16T13:36:29Z","closed_at":null,"merged_at":null,"merge_commit_sha":"2ce744231f7180ff25f71e7a67399b2247180f50","assignee":null,"assignees":[],"requested_reviewers":[{"login":"sectore","id":47693,"avatar_url":"https://avatars1.githubusercontent.com/u/47693?v=4","gravatar_id":"","url":"https://api.github.com/users/sectore","html_url":"https://github.com/sectore","followers_url":"https://api.github.com/users/sectore/followers","following_url":"https://api.github.com/users/sectore/following{/other_user}","gists_url":"https://api.github.com/users/sectore/gists{/gist_id}","starred_url":"https://api.github.com/users/sectore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sectore/subscriptions","organizations_url":"https://api.github.com/users/sectore/orgs","repos_url":"https://api.github.com/users/sectore/repos","events_url":"https://api.github.com/users/sectore/events{/privacy}","received_events_url":"https://api.github.com/users/sectore/received_events","type":"User","site_admin":false},{"login":"domenkozar","id":126339,"avatar_url":"https://avatars2.githubusercontent.com/u/126339?v=4","gravatar_id":"","url":"https://api.github.com/users/domenkozar","html_url":"https://github.com/domenkozar","followers_url":"https://api.github.com/users/domenkozar/followers","following_url":"https://api.github.com/users/domenkozar/following{/other_user}","gists_url":"https://api.github.com/users/domenkozar/gists{/gist_id}","starred_url":"https://api.github.com/users/domenkozar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/domenkozar/subscriptions","organizations_url":"https://api.github.com/users/domenkozar/orgs","repos_url":"https://api.github.com/users/domenkozar/repos","events_url":"https://api.github.com/users/domenkozar/events{/privacy}","received_events_url":"https://api.github.com/users/domenkozar/received_events","type":"User","site_admin":false},{"login":"dcoutts","id":1339423,"avatar_url":"https://avatars2.githubusercontent.com/u/1339423?v=4","gravatar_id":"","url":"https://api.github.com/users/dcoutts","html_url":"https://github.com/dcoutts","followers_url":"https://api.github.com/users/dcoutts/followers","following_url":"https://api.github.com/users/dcoutts/following{/other_user}","gists_url":"https://api.github.com/users/dcoutts/gists{/gist_id}","starred_url":"https://api.github.com/users/dcoutts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dcoutts/subscriptions","organizations_url":"https://api.github.com/users/dcoutts/orgs","repos_url":"https://api.github.com/users/dcoutts/repos","events_url":"https://api.github.com/users/dcoutts/events{/privacy}","received_events_url":"https://api.github.com/users/dcoutts/received_events","type":"User","site_admin":false},{"login":"avieth","id":1420272,"avatar_url":"https://avatars2.githubusercontent.com/u/1420272?v=4","gravatar_id":"","url":"https://api.github.com/users/avieth","html_url":"https://github.com/avieth","followers_url":"https://api.github.com/users/avieth/followers","following_url":"https://api.github.com/users/avieth/following{/other_user}","gists_url":"https://api.github.com/users/avieth/gists{/gist_id}","starred_url":"https://api.github.com/users/avieth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/avieth/subscriptions","organizations_url":"https://api.github.com/users/avieth/orgs","repos_url":"https://api.github.com/users/avieth/repos","events_url":"https://api.github.com/users/avieth/events{/privacy}","received_events_url":"https://api.github.com/users/avieth/received_events","type":"User","site_admin":false},{"login":"neongreen","id":1523306,"avatar_url":"https://avatars3.githubusercontent.com/u/1523306?v=4","gravatar_id":"","url":"https://api.github.com/users/neongreen","html_url":"https://github.com/neongreen","followers_url":"https://api.github.com/users/neongreen/followers","following_url":"https://api.github.com/users/neongreen/following{/other_user}","gists_url":"https://api.github.com/users/neongreen/gists{/gist_id}","starred_url":"https://api.github.com/users/neongreen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neongreen/subscriptions","organizations_url":"https://api.github.com/users/neongreen/orgs","repos_url":"https://api.github.com/users/neongreen/repos","events_url":"https://api.github.com/users/neongreen/events{/privacy}","received_events_url":"https://api.github.com/users/neongreen/received_events","type":"User","site_admin":false},{"login":"akegalj","id":2461951,"avatar_url":"https://avatars0.githubusercontent.com/u/2461951?v=4","gravatar_id":"","url":"https://api.github.com/users/akegalj","html_url":"https://github.com/akegalj","followers_url":"https://api.github.com/users/akegalj/followers","following_url":"https://api.github.com/users/akegalj/following{/other_user}","gists_url":"https://api.github.com/users/akegalj/gists{/gist_id}","starred_url":"https://api.github.com/users/akegalj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akegalj/subscriptions","organizations_url":"https://api.github.com/users/akegalj/orgs","repos_url":"https://api.github.com/users/akegalj/repos","events_url":"https://api.github.com/users/akegalj/events{/privacy}","received_events_url":"https://api.github.com/users/akegalj/received_events","type":"User","site_admin":false},{"login":"gromakovsky","id":2556409,"avatar_url":"https://avatars0.githubusercontent.com/u/2556409?v=4","gravatar_id":"","url":"https://api.github.com/users/gromakovsky","html_url":"https://github.com/gromakovsky","followers_url":"https://api.github.com/users/gromakovsky/followers","following_url":"https://api.github.com/users/gromakovsky/following{/other_user}","gists_url":"https://api.github.com/users/gromakovsky/gists{/gist_id}","starred_url":"https://api.github.com/users/gromakovsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gromakovsky/subscriptions","organizations_url":"https://api.github.com/users/gromakovsky/orgs","repos_url":"https://api.github.com/users/gromakovsky/repos","events_url":"https://api.github.com/users/gromakovsky/events{/privacy}","received_events_url":"https://api.github.com/users/gromakovsky/received_events","type":"User","site_admin":false},{"login":"ksaric","id":6264437,"avatar_url":"https://avatars0.githubusercontent.com/u/6264437?v=4","gravatar_id":"","url":"https://api.github.com/users/ksaric","html_url":"https://github.com/ksaric","followers_url":"https://api.github.com/users/ksaric/followers","following_url":"https://api.github.com/users/ksaric/following{/other_user}","gists_url":"https://api.github.com/users/ksaric/gists{/gist_id}","starred_url":"https://api.github.com/users/ksaric/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ksaric/subscriptions","organizations_url":"https://api.github.com/users/ksaric/orgs","repos_url":"https://api.github.com/users/ksaric/repos","events_url":"https://api.github.com/users/ksaric/events{/privacy}","received_events_url":"https://api.github.com/users/ksaric/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735/commits","review_comments_url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735/comments","review_comment_url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/comments{/number}","comments_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/1735/comments","statuses_url":"https://api.github.com/repos/input-output-hk/cardano-sl/statuses/4cb931965733a333e5a6f32886bd1487961ec514","head":{"label":"input-output-hk:pva/csm494-getWallets","ref":"pva/csm494-getWallets","sha":"4cb931965733a333e5a6f32886bd1487961ec514","user":{"login":"input-output-hk","id":12909177,"avatar_url":"https://avatars3.githubusercontent.com/u/12909177?v=4","gravatar_id":"","url":"https://api.github.com/users/input-output-hk","html_url":"https://github.com/input-output-hk","followers_url":"https://api.github.com/users/input-output-hk/followers","following_url":"https://api.github.com/users/input-output-hk/following{/other_user}","gists_url":"https://api.github.com/users/input-output-hk/gists{/gist_id}","starred_url":"https://api.github.com/users/input-output-hk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/input-output-hk/subscriptions","organizations_url":"https://api.github.com/users/input-output-hk/orgs","repos_url":"https://api.github.com/users/input-output-hk/repos","events_url":"https://api.github.com/users/input-output-hk/events{/privacy}","received_events_url":"https://api.github.com/users/input-output-hk/received_events","type":"Organization","site_admin":false},"repo":{"id":70913997,"name":"cardano-sl","full_name":"input-output-hk/cardano-sl","owner":{"login":"input-output-hk","id":12909177,"avatar_url":"https://avatars3.githubusercontent.com/u/12909177?v=4","gravatar_id":"","url":"https://api.github.com/users/input-output-hk","html_url":"https://github.com/input-output-hk","followers_url":"https://api.github.com/users/input-output-hk/followers","following_url":"https://api.github.com/users/input-output-hk/following{/other_user}","gists_url":"https://api.github.com/users/input-output-hk/gists{/gist_id}","starred_url":"https://api.github.com/users/input-output-hk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/input-output-hk/subscriptions","organizations_url":"https://api.github.com/users/input-output-hk/orgs","repos_url":"https://api.github.com/users/input-output-hk/repos","events_url":"https://api.github.com/users/input-output-hk/events{/privacy}","received_events_url":"https://api.github.com/users/input-output-hk/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/input-output-hk/cardano-sl","description":"Cryptographic currency implementing Ouroboros PoS protocol","fork":false,"url":"https://api.github.com/repos/input-output-hk/cardano-sl","forks_url":"https://api.github.com/repos/input-output-hk/cardano-sl/forks","keys_url":"https://api.github.com/repos/input-output-hk/cardano-sl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/input-output-hk/cardano-sl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/input-output-hk/cardano-sl/teams","hooks_url":"https://api.github.com/repos/input-output-hk/cardano-sl/hooks","issue_events_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/events{/number}","events_url":"https://api.github.com/repos/input-output-hk/cardano-sl/events","assignees_url":"https://api.github.com/repos/input-output-hk/cardano-sl/assignees{/user}","branches_url":"https://api.github.com/repos/input-output-hk/cardano-sl/branches{/branch}","tags_url":"https://api.github.com/repos/input-output-hk/cardano-sl/tags","blobs_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/refs{/sha}","trees_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/input-output-hk/cardano-sl/statuses/{sha}","languages_url":"https://api.github.com/repos/input-output-hk/cardano-sl/languages","stargazers_url":"https://api.github.com/repos/input-output-hk/cardano-sl/stargazers","contributors_url":"https://api.github.com/repos/input-output-hk/cardano-sl/contributors","subscribers_url":"https://api.github.com/repos/input-output-hk/cardano-sl/subscribers","subscription_url":"https://api.github.com/repos/input-output-hk/cardano-sl/subscription","commits_url":"https://api.github.com/repos/input-output-hk/cardano-sl/commits{/sha}","git_commits_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/commits{/sha}","comments_url":"https://api.github.com/repos/input-output-hk/cardano-sl/comments{/number}","issue_comment_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/comments{/number}","contents_url":"https://api.github.com/repos/input-output-hk/cardano-sl/contents/{+path}","compare_url":"https://api.github.com/repos/input-output-hk/cardano-sl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/input-output-hk/cardano-sl/merges","archive_url":"https://api.github.com/repos/input-output-hk/cardano-sl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/input-output-hk/cardano-sl/downloads","issues_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues{/number}","pulls_url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls{/number}","milestones_url":"https://api.github.com/repos/input-output-hk/cardano-sl/milestones{/number}","notifications_url":"https://api.github.com/repos/input-output-hk/cardano-sl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/input-output-hk/cardano-sl/labels{/name}","releases_url":"https://api.github.com/repos/input-output-hk/cardano-sl/releases{/id}","deployments_url":"https://api.github.com/repos/input-output-hk/cardano-sl/deployments","created_at":"2016-10-14T13:44:38Z","updated_at":"2017-10-16T11:52:39Z","pushed_at":"2017-10-16T13:10:02Z","git_url":"git://github.com/input-output-hk/cardano-sl.git","ssh_url":"git@github.com:input-output-hk/cardano-sl.git","clone_url":"https://github.com/input-output-hk/cardano-sl.git","svn_url":"https://github.com/input-output-hk/cardano-sl","homepage":"","size":72691,"stargazers_count":339,"watchers_count":339,"language":"Haskell","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":39,"mirror_url":null,"open_issues_count":108,"forks":39,"open_issues":108,"watchers":339,"default_branch":"master"}},"base":{"label":"input-output-hk:cardano-sl-1.0","ref":"cardano-sl-1.0","sha":"824b2303a5dd0058e617a351a1667fa66973d919","user":{"login":"input-output-hk","id":12909177,"avatar_url":"https://avatars3.githubusercontent.com/u/12909177?v=4","gravatar_id":"","url":"https://api.github.com/users/input-output-hk","html_url":"https://github.com/input-output-hk","followers_url":"https://api.github.com/users/input-output-hk/followers","following_url":"https://api.github.com/users/input-output-hk/following{/other_user}","gists_url":"https://api.github.com/users/input-output-hk/gists{/gist_id}","starred_url":"https://api.github.com/users/input-output-hk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/input-output-hk/subscriptions","organizations_url":"https://api.github.com/users/input-output-hk/orgs","repos_url":"https://api.github.com/users/input-output-hk/repos","events_url":"https://api.github.com/users/input-output-hk/events{/privacy}","received_events_url":"https://api.github.com/users/input-output-hk/received_events","type":"Organization","site_admin":false},"repo":{"id":70913997,"name":"cardano-sl","full_name":"input-output-hk/cardano-sl","owner":{"login":"input-output-hk","id":12909177,"avatar_url":"https://avatars3.githubusercontent.com/u/12909177?v=4","gravatar_id":"","url":"https://api.github.com/users/input-output-hk","html_url":"https://github.com/input-output-hk","followers_url":"https://api.github.com/users/input-output-hk/followers","following_url":"https://api.github.com/users/input-output-hk/following{/other_user}","gists_url":"https://api.github.com/users/input-output-hk/gists{/gist_id}","starred_url":"https://api.github.com/users/input-output-hk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/input-output-hk/subscriptions","organizations_url":"https://api.github.com/users/input-output-hk/orgs","repos_url":"https://api.github.com/users/input-output-hk/repos","events_url":"https://api.github.com/users/input-output-hk/events{/privacy}","received_events_url":"https://api.github.com/users/input-output-hk/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/input-output-hk/cardano-sl","description":"Cryptographic currency implementing Ouroboros PoS protocol","fork":false,"url":"https://api.github.com/repos/input-output-hk/cardano-sl","forks_url":"https://api.github.com/repos/input-output-hk/cardano-sl/forks","keys_url":"https://api.github.com/repos/input-output-hk/cardano-sl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/input-output-hk/cardano-sl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/input-output-hk/cardano-sl/teams","hooks_url":"https://api.github.com/repos/input-output-hk/cardano-sl/hooks","issue_events_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/events{/number}","events_url":"https://api.github.com/repos/input-output-hk/cardano-sl/events","assignees_url":"https://api.github.com/repos/input-output-hk/cardano-sl/assignees{/user}","branches_url":"https://api.github.com/repos/input-output-hk/cardano-sl/branches{/branch}","tags_url":"https://api.github.com/repos/input-output-hk/cardano-sl/tags","blobs_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/refs{/sha}","trees_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/input-output-hk/cardano-sl/statuses/{sha}","languages_url":"https://api.github.com/repos/input-output-hk/cardano-sl/languages","stargazers_url":"https://api.github.com/repos/input-output-hk/cardano-sl/stargazers","contributors_url":"https://api.github.com/repos/input-output-hk/cardano-sl/contributors","subscribers_url":"https://api.github.com/repos/input-output-hk/cardano-sl/subscribers","subscription_url":"https://api.github.com/repos/input-output-hk/cardano-sl/subscription","commits_url":"https://api.github.com/repos/input-output-hk/cardano-sl/commits{/sha}","git_commits_url":"https://api.github.com/repos/input-output-hk/cardano-sl/git/commits{/sha}","comments_url":"https://api.github.com/repos/input-output-hk/cardano-sl/comments{/number}","issue_comment_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/comments{/number}","contents_url":"https://api.github.com/repos/input-output-hk/cardano-sl/contents/{+path}","compare_url":"https://api.github.com/repos/input-output-hk/cardano-sl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/input-output-hk/cardano-sl/merges","archive_url":"https://api.github.com/repos/input-output-hk/cardano-sl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/input-output-hk/cardano-sl/downloads","issues_url":"https://api.github.com/repos/input-output-hk/cardano-sl/issues{/number}","pulls_url":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls{/number}","milestones_url":"https://api.github.com/repos/input-output-hk/cardano-sl/milestones{/number}","notifications_url":"https://api.github.com/repos/input-output-hk/cardano-sl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/input-output-hk/cardano-sl/labels{/name}","releases_url":"https://api.github.com/repos/input-output-hk/cardano-sl/releases{/id}","deployments_url":"https://api.github.com/repos/input-output-hk/cardano-sl/deployments","created_at":"2016-10-14T13:44:38Z","updated_at":"2017-10-16T11:52:39Z","pushed_at":"2017-10-16T13:10:02Z","git_url":"git://github.com/input-output-hk/cardano-sl.git","ssh_url":"git@github.com:input-output-hk/cardano-sl.git","clone_url":"https://github.com/input-output-hk/cardano-sl.git","svn_url":"https://github.com/input-output-hk/cardano-sl","homepage":"","size":72691,"stargazers_count":339,"watchers_count":339,"language":"Haskell","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":39,"mirror_url":null,"open_issues_count":108,"forks":39,"open_issues":108,"watchers":339,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735"},"html":{"href":"https://github.com/input-output-hk/cardano-sl/pull/1735"},"issue":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/1735"},"comments":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/issues/1735/comments"},"review_comments":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735/comments"},"review_comment":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/pulls/1735/commits"},"statuses":{"href":"https://api.github.com/repos/input-output-hk/cardano-sl/statuses/4cb931965733a333e5a6f32886bd1487961ec514"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"adinapoli-iohk"}}