{"action":"created","comment":{"url":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/comments/98352361","pull_request_review_id":18992402,"id":98352361,"diff_hunk":"@@ -1,8 +1,461 @@\n /*************************************************************************\n > File Name: ArrayAccessor3.cpp\n > Project Name: CubbyFlow\n-> Author: Chan-Ho Chris Ohk\n+> Author: Chan-Ho Chris Ohk, Kim Dongmin\n > Purpose: 3-D array accessor class.\n > Created Time: 2017/01/28\n > Copyright (c) 2017, Chan-Ho Chris Ohk\n-*************************************************************************/\n\\ No newline at end of file\n+*************************************************************************/\n+#include \"ArrayAccessor3.h\"\n+\n+#include <algorithm>\n+#include <cassert>\n+\n+namespace CubbyFlow\n+{\n+\ttemplate <typename T>\n+\tArrayAccessor<T, 3>::ArrayAccessor() :\n+\t\tm_size(0), m_data(nullptr)\n+\t{\n+\t\t// Do nothing\n+\t}\n+\n+\ttemplate <typename T>\n+\tArrayAccessor<T, 3>::ArrayAccessor(const Size3& size, T* const data)\n+\t{\n+\t\tReset(size, data);\n+\t}\n+\n+\ttemplate <typename T>\n+\tArrayAccessor<T, 3>::ArrayAccessor(size_t width, size_t height, size_t depth, T* const data)\n+\t{\n+\t\tReset(width, height, depth, data);\n+\t}\n+\n+\ttemplate <typename T>\n+\tArrayAccessor<T, 3>::ArrayAccessor(const ArrayAccessor& other)\n+\t{\n+\t\tSet(other);\n+\t}\n+\n+\ttemplate <typename T>\n+\tArrayAccessor<T, 3>::Set(const ArrayAccessor& other)\n+\t{\n+\t\tReset(other.m_size, other.m_data);\n+\t}\n+\n+\ttemplate <typename T>\n+\tvoid ArrayAccessor<T, 3>::Reset(Size3& size, T* const data)\n+\t{\n+\t\tm_size = size;\n+\t\tm_data = data;\n+\t}\n+\n+\ttemplate <typename T>\n+\tvoid ArrayAccessor<T, 3>::Reset(size_t width, size_t height, size_t depth, T* const data)\n+\t{\n+\t\tm_size = Size3(width, hegiht, depth);\n+\t\tm_data = data;\n+\t}\n+\n+\ttemplate <typename T>\n+\tT& ArrayAccessor<T, 3>::At(size_t i)\n+\t{\n+\t\tassert(i < Width() * Height() * Depth());\n+\t\treturn m_data[i];\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T& ArrayAccessor<T, 3>::At(size_t i) const\n+\t{\n+\t\tassert(i < Width() * Height() * Depth());\n+\t\treturn m_data[i];\n+\t}\n+\n+\ttemplate <typename T>\n+\tT& ArrayAccessor<T, 3>::At(const Point3UI& pt)\n+\t{\n+\t\treturn m_data[Index(pt)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T& ArrayAccessor<T, 3>::At(const Point3UI& pt) const\n+\t{\n+\t\treturn m_data[Index(pt)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tT& ArrayAccessor<T, 3>::At(size_t i, size_t j, size_t k)\n+\t{\n+\t\tassert(i < Width());\n+\t\tassert(j < Height());\n+\t\tassert(k < Depth());\n+\t\treturn m_data[Index(i, j, k)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T& ArrayAccessor<T, 3>::At(size_t i, size_t j, size_t k) const\n+\t{\n+\t\tassert(i < Width());\n+\t\tassert(j < Height());\n+\t\tassert(k < Depth());\n+\t\treturn m_data[Index(i, j, k)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T* const ArrayAccessor<T, 3>::Begin() const\n+\t{\n+\t\treturn m_data;\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T* const ArrayAccessor<T, 3>::End() const\n+\t{\n+\t\treturn m_data + Width() * Height();\n+\t}\n+\n+\ttemplate <typename T>\n+\tT* const ArrayAccessor<T, 3>::Begin()\n+\t{\n+\t\treturn m_data;\n+\t}\n+\n+\ttemplate <typename T>\n+\tT* const ArrayAccessor<T, 3>::End()\n+\t{\n+\t\treturn m_data + Width() * Height() * Depth();\n+\t}\n+\n+\ttemplate <typename T>\n+\tSize3 ArrayAccessor<T, 3>::Size() const\n+\t{\n+\t\treturn m_size;\n+\t}\n+\n+\ttemplate <typename T>\n+\tsize_t ArrayAccessor<T, 3>::Width() const\n+\t{\n+\t\treturn m_size.x;\n+\t}\n+\n+\ttemplate <typename T>\n+\tsize_t ArrayAccessor<T, 3>::Height() const\n+\t{\n+\t\treturn m_size.y;\n+\t}\n+\n+\ttemplate <typename T>\n+\tsize_t ArrayAccessor<T, 3>::Depth() const\n+\t{\n+\t\treturn m_size.z;\n+\t}\n+\n+\ttemplate <typename T>\n+\tT* const ArrayAccessor<T, 3>::Data() const\n+\t{\n+\t\treturn m_data;\n+\t}\n+\n+\ttemplate <typename T>\n+\tvoid ArrayAccessor<T, 3>::Swap(ArrayAccessor& other)\n+\t{\n+\t\tstd::swap(other.m_data, m_data);\n+\t\tstd::swap(ohter.m_size, other.m_size);\n+\t}\n+\n+\ttemplate <typename T>\n+\ttemplate <typename Callback>\n+\tvoid ArrayAccessor<T, 3>::ForEach(Callback func) const\n+\t{\n+\t\tfor (size_t k = 0; k < Depth(); ++k)\n+\t\t{\n+\t\t\tfor (size_t j = 0; j < Height(); ++j)\n+\t\t\t{\n+\t\t\t\tfor (size_t i = 0; i < Width(); ++i)\n+\t\t\t\t{\n+\t\t\t\t\tfunc(At(i, j, k));\n+\t\t\t\t}\n+\t\t\t}\n+\t\t}\n+\t\t\n+\t}\n+\n+\ttemplate <typename T>\n+\ttemplate <typename Callback>\n+\tvoid ArrayAccessor<T, 3>::ForEachIndex(Callback func) const\n+\t{\n+\t\tfor (size_t k = 0; k < Depth(); ++k)\n+\t\t{\n+\t\t\tfor (size_t j = 0; j < Height(); ++j)\n+\t\t\t{\n+\t\t\t\tfor (size_t i = 0; i < Width(); ++i)\n+\t\t\t\t{\n+\t\t\t\t\tfunc(i, j, k);\n+\t\t\t\t}\n+\t\t\t}\n+\t\t}\n+\t\t\n+\t}\n+\n+\ttemplate <typename T>\n+\ttemplate <typename Callback>\n+\tvoid ArrayAccessor<T, 3>::ParallelForEach(Callback func)\n+\t{\n+\t\tParallelFor(ZERO_SIZE, Size(), [&](size_t i, size_t j, size_t k)\n+\t\t{\n+\t\t\tfunc(At(i, j, k));\n+\t\t});\n+\t}\n+\n+\ttemplate <typename T>\n+\ttemplate <typename Callback>\n+\tvoid ArrayAccessor<T, 3>::ParallelForEachIndex(Callback func) const\n+\t{\n+\t\tParallelFor(ZERO_SIZE, Size(), [&](size_t i, size_t j, size_t k)\n+\t\t{\n+\t\t\tfunc(i, j, k);\n+\t\t});\n+\t}\n+\n+\ttemplate <typename T>\n+\tsize_t ArrayAccessor<T, 3>::Index(const Point3UI& pt) const\n+\t{\n+\t\treturn pt.x + pt.y * Width() + pt.z * Width() * Height();\n+\t}\n+\n+\ttemplate <typename T>\n+\tsize_t ArrayAccessor<T, 3>::Index(size_t i, size_t j, size_t k) const\n+\t{\n+\t\treturn i + j * Width() + k * Width() * Height();\n+\t}\n+\n+\ttemplate <typename T>\n+\tT& ArrayAccessor<T, 3>::operator[](size_t i)\n+\t{\n+\t\treturn m_data[i];\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T& ArrayAccessor<T, 3>::operator[](size_t i) const\n+\t{\n+\t\treturn m_data[i];\n+\t}\n+\n+\ttemplate <typename T>\n+\tT& ArrayAccessor<T, 3>::operator()(const Point3UI& pt)\n+\t{\n+\t\treturn m_data[Index(pt)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T& ArrayAccessor<T, 3>::operator()(const Point3UI& pt) const\n+\t{\n+\t\treturn m_data[Index(pt)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tT& ArrayAccessor<T, 3>::operator()(size_t i, size_t j, size_t k)\n+\t{\n+\t\treturn m_data[Index(i, j, k)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tconst T& ArrayAccessor<T, 3>::operator()(size_t i, size_t j, size_t k) const\n+\t{\n+\t\treturn m_data[Index(i, j, k)];\n+\t}\n+\n+\ttemplate <typename T>\n+\tArrayAccessor& ArrayAccessor<T, 3>::operator=(const ArrayAccessor& other)\n+\t{\n+\t\tSet(other);\n+\t\treturn *this;\n+\t}\n+\n+\ttemplate <typename T>\n+\tArrayAccessor<T, 3>::operator ConstArrayAccessor<T, 3>() const\n+\t{\n+\t\treturn ConstArrayAccessor<T, 3>(*this);\n+\t}\n+\n+\ttemplate <typename T>\n+\tConstArrayAccessor<T, 3>::ConstArrayAccessor() :\n+\t\tm_size(0), m_data(nullptr)\n+\t{\n+\t\t// Do nothing\n+\t}\n+\n+\ttemplate <typename T>\n+\tConstArrayAccessor<T, 3>::ConstArrayAccessor(const Size3& size, T* const data)\n+\t{\n+\t\tm_size = size;\n+\t\tm_data = data;\n+\t}\n+\n+\ttemplate <typename T>\n+\tConstArrayAccessor<T, 3>::ConstArrayAccessor(size_t width, size_t height, size_t depth, T* const data)\n+\t{\n+\t\tm_size = Size3(width, height, depth);\n+\t\tm_data = data","path":"Sources/Array/ArrayAccessor3.cpp","position":302,"original_position":302,"commit_id":"50310ac2f435b5caa496125c59d7b7a9e59a039c","original_commit_id":"50310ac2f435b5caa496125c59d7b7a9e59a039c","user":{"login":"utilForever","id":5622661,"avatar_url":"https://avatars.githubusercontent.com/u/5622661?v=3","gravatar_id":"","url":"https://api.github.com/users/utilForever","html_url":"https://github.com/utilForever","followers_url":"https://api.github.com/users/utilForever/followers","following_url":"https://api.github.com/users/utilForever/following{/other_user}","gists_url":"https://api.github.com/users/utilForever/gists{/gist_id}","starred_url":"https://api.github.com/users/utilForever/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/utilForever/subscriptions","organizations_url":"https://api.github.com/users/utilForever/orgs","repos_url":"https://api.github.com/users/utilForever/repos","events_url":"https://api.github.com/users/utilForever/events{/privacy}","received_events_url":"https://api.github.com/users/utilForever/received_events","type":"User","site_admin":false},"body":"m_data = data;","created_at":"2017-01-29T12:58:51Z","updated_at":"2017-01-29T12:58:51Z","html_url":"https://github.com/utilForever/CubbyFlow/pull/3#discussion_r98352361","pull_request_url":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3","_links":{"self":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/comments/98352361"},"html":{"href":"https://github.com/utilForever/CubbyFlow/pull/3#discussion_r98352361"},"pull_request":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3"}}},"pull_request":{"url":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3","id":103603316,"html_url":"https://github.com/utilForever/CubbyFlow/pull/3","diff_url":"https://github.com/utilForever/CubbyFlow/pull/3.diff","patch_url":"https://github.com/utilForever/CubbyFlow/pull/3.patch","issue_url":"https://api.github.com/repos/utilForever/CubbyFlow/issues/3","number":3,"state":"open","locked":false,"title":"Update ArrayAccessor2.cpp","user":{"login":"dmk98","id":11494594,"avatar_url":"https://avatars.githubusercontent.com/u/11494594?v=3","gravatar_id":"","url":"https://api.github.com/users/dmk98","html_url":"https://github.com/dmk98","followers_url":"https://api.github.com/users/dmk98/followers","following_url":"https://api.github.com/users/dmk98/following{/other_user}","gists_url":"https://api.github.com/users/dmk98/gists{/gist_id}","starred_url":"https://api.github.com/users/dmk98/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmk98/subscriptions","organizations_url":"https://api.github.com/users/dmk98/orgs","repos_url":"https://api.github.com/users/dmk98/repos","events_url":"https://api.github.com/users/dmk98/events{/privacy}","received_events_url":"https://api.github.com/users/dmk98/received_events","type":"User","site_admin":false},"body":"","created_at":"2017-01-28T06:57:42Z","updated_at":"2017-01-29T12:58:51Z","closed_at":null,"merged_at":null,"merge_commit_sha":"891722a74c3e4a2be019995ff544a1089eff20b3","assignee":{"login":"dmk98","id":11494594,"avatar_url":"https://avatars.githubusercontent.com/u/11494594?v=3","gravatar_id":"","url":"https://api.github.com/users/dmk98","html_url":"https://github.com/dmk98","followers_url":"https://api.github.com/users/dmk98/followers","following_url":"https://api.github.com/users/dmk98/following{/other_user}","gists_url":"https://api.github.com/users/dmk98/gists{/gist_id}","starred_url":"https://api.github.com/users/dmk98/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmk98/subscriptions","organizations_url":"https://api.github.com/users/dmk98/orgs","repos_url":"https://api.github.com/users/dmk98/repos","events_url":"https://api.github.com/users/dmk98/events{/privacy}","received_events_url":"https://api.github.com/users/dmk98/received_events","type":"User","site_admin":false},"assignees":[{"login":"dmk98","id":11494594,"avatar_url":"https://avatars.githubusercontent.com/u/11494594?v=3","gravatar_id":"","url":"https://api.github.com/users/dmk98","html_url":"https://github.com/dmk98","followers_url":"https://api.github.com/users/dmk98/followers","following_url":"https://api.github.com/users/dmk98/following{/other_user}","gists_url":"https://api.github.com/users/dmk98/gists{/gist_id}","starred_url":"https://api.github.com/users/dmk98/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmk98/subscriptions","organizations_url":"https://api.github.com/users/dmk98/orgs","repos_url":"https://api.github.com/users/dmk98/repos","events_url":"https://api.github.com/users/dmk98/events{/privacy}","received_events_url":"https://api.github.com/users/dmk98/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3/commits","review_comments_url":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3/comments","review_comment_url":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/comments{/number}","comments_url":"https://api.github.com/repos/utilForever/CubbyFlow/issues/3/comments","statuses_url":"https://api.github.com/repos/utilForever/CubbyFlow/statuses/50310ac2f435b5caa496125c59d7b7a9e59a039c","head":{"label":"dmk98:master","ref":"master","sha":"50310ac2f435b5caa496125c59d7b7a9e59a039c","user":{"login":"dmk98","id":11494594,"avatar_url":"https://avatars.githubusercontent.com/u/11494594?v=3","gravatar_id":"","url":"https://api.github.com/users/dmk98","html_url":"https://github.com/dmk98","followers_url":"https://api.github.com/users/dmk98/followers","following_url":"https://api.github.com/users/dmk98/following{/other_user}","gists_url":"https://api.github.com/users/dmk98/gists{/gist_id}","starred_url":"https://api.github.com/users/dmk98/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmk98/subscriptions","organizations_url":"https://api.github.com/users/dmk98/orgs","repos_url":"https://api.github.com/users/dmk98/repos","events_url":"https://api.github.com/users/dmk98/events{/privacy}","received_events_url":"https://api.github.com/users/dmk98/received_events","type":"User","site_admin":false},"repo":{"id":79984756,"name":"CubbyFlow","full_name":"dmk98/CubbyFlow","owner":{"login":"dmk98","id":11494594,"avatar_url":"https://avatars.githubusercontent.com/u/11494594?v=3","gravatar_id":"","url":"https://api.github.com/users/dmk98","html_url":"https://github.com/dmk98","followers_url":"https://api.github.com/users/dmk98/followers","following_url":"https://api.github.com/users/dmk98/following{/other_user}","gists_url":"https://api.github.com/users/dmk98/gists{/gist_id}","starred_url":"https://api.github.com/users/dmk98/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmk98/subscriptions","organizations_url":"https://api.github.com/users/dmk98/orgs","repos_url":"https://api.github.com/users/dmk98/repos","events_url":"https://api.github.com/users/dmk98/events{/privacy}","received_events_url":"https://api.github.com/users/dmk98/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dmk98/CubbyFlow","description":"Voxel-based fluid simulation engine for computer games","fork":true,"url":"https://api.github.com/repos/dmk98/CubbyFlow","forks_url":"https://api.github.com/repos/dmk98/CubbyFlow/forks","keys_url":"https://api.github.com/repos/dmk98/CubbyFlow/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dmk98/CubbyFlow/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dmk98/CubbyFlow/teams","hooks_url":"https://api.github.com/repos/dmk98/CubbyFlow/hooks","issue_events_url":"https://api.github.com/repos/dmk98/CubbyFlow/issues/events{/number}","events_url":"https://api.github.com/repos/dmk98/CubbyFlow/events","assignees_url":"https://api.github.com/repos/dmk98/CubbyFlow/assignees{/user}","branches_url":"https://api.github.com/repos/dmk98/CubbyFlow/branches{/branch}","tags_url":"https://api.github.com/repos/dmk98/CubbyFlow/tags","blobs_url":"https://api.github.com/repos/dmk98/CubbyFlow/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dmk98/CubbyFlow/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dmk98/CubbyFlow/git/refs{/sha}","trees_url":"https://api.github.com/repos/dmk98/CubbyFlow/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dmk98/CubbyFlow/statuses/{sha}","languages_url":"https://api.github.com/repos/dmk98/CubbyFlow/languages","stargazers_url":"https://api.github.com/repos/dmk98/CubbyFlow/stargazers","contributors_url":"https://api.github.com/repos/dmk98/CubbyFlow/contributors","subscribers_url":"https://api.github.com/repos/dmk98/CubbyFlow/subscribers","subscription_url":"https://api.github.com/repos/dmk98/CubbyFlow/subscription","commits_url":"https://api.github.com/repos/dmk98/CubbyFlow/commits{/sha}","git_commits_url":"https://api.github.com/repos/dmk98/CubbyFlow/git/commits{/sha}","comments_url":"https://api.github.com/repos/dmk98/CubbyFlow/comments{/number}","issue_comment_url":"https://api.github.com/repos/dmk98/CubbyFlow/issues/comments{/number}","contents_url":"https://api.github.com/repos/dmk98/CubbyFlow/contents/{+path}","compare_url":"https://api.github.com/repos/dmk98/CubbyFlow/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dmk98/CubbyFlow/merges","archive_url":"https://api.github.com/repos/dmk98/CubbyFlow/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dmk98/CubbyFlow/downloads","issues_url":"https://api.github.com/repos/dmk98/CubbyFlow/issues{/number}","pulls_url":"https://api.github.com/repos/dmk98/CubbyFlow/pulls{/number}","milestones_url":"https://api.github.com/repos/dmk98/CubbyFlow/milestones{/number}","notifications_url":"https://api.github.com/repos/dmk98/CubbyFlow/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dmk98/CubbyFlow/labels{/name}","releases_url":"https://api.github.com/repos/dmk98/CubbyFlow/releases{/id}","deployments_url":"https://api.github.com/repos/dmk98/CubbyFlow/deployments","created_at":"2017-01-25T05:05:49Z","updated_at":"2017-01-25T05:05:50Z","pushed_at":"2017-01-28T14:58:17Z","git_url":"git://github.com/dmk98/CubbyFlow.git","ssh_url":"git@github.com:dmk98/CubbyFlow.git","clone_url":"https://github.com/dmk98/CubbyFlow.git","svn_url":"https://github.com/dmk98/CubbyFlow","homepage":null,"size":80,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"utilForever:master","ref":"master","sha":"8d23581c80626a2ad66d031fceb4159f27c99ae3","user":{"login":"utilForever","id":5622661,"avatar_url":"https://avatars.githubusercontent.com/u/5622661?v=3","gravatar_id":"","url":"https://api.github.com/users/utilForever","html_url":"https://github.com/utilForever","followers_url":"https://api.github.com/users/utilForever/followers","following_url":"https://api.github.com/users/utilForever/following{/other_user}","gists_url":"https://api.github.com/users/utilForever/gists{/gist_id}","starred_url":"https://api.github.com/users/utilForever/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/utilForever/subscriptions","organizations_url":"https://api.github.com/users/utilForever/orgs","repos_url":"https://api.github.com/users/utilForever/repos","events_url":"https://api.github.com/users/utilForever/events{/privacy}","received_events_url":"https://api.github.com/users/utilForever/received_events","type":"User","site_admin":false},"repo":{"id":79462591,"name":"CubbyFlow","full_name":"utilForever/CubbyFlow","owner":{"login":"utilForever","id":5622661,"avatar_url":"https://avatars.githubusercontent.com/u/5622661?v=3","gravatar_id":"","url":"https://api.github.com/users/utilForever","html_url":"https://github.com/utilForever","followers_url":"https://api.github.com/users/utilForever/followers","following_url":"https://api.github.com/users/utilForever/following{/other_user}","gists_url":"https://api.github.com/users/utilForever/gists{/gist_id}","starred_url":"https://api.github.com/users/utilForever/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/utilForever/subscriptions","organizations_url":"https://api.github.com/users/utilForever/orgs","repos_url":"https://api.github.com/users/utilForever/repos","events_url":"https://api.github.com/users/utilForever/events{/privacy}","received_events_url":"https://api.github.com/users/utilForever/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/utilForever/CubbyFlow","description":"Voxel-based fluid simulation engine for computer games","fork":false,"url":"https://api.github.com/repos/utilForever/CubbyFlow","forks_url":"https://api.github.com/repos/utilForever/CubbyFlow/forks","keys_url":"https://api.github.com/repos/utilForever/CubbyFlow/keys{/key_id}","collaborators_url":"https://api.github.com/repos/utilForever/CubbyFlow/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/utilForever/CubbyFlow/teams","hooks_url":"https://api.github.com/repos/utilForever/CubbyFlow/hooks","issue_events_url":"https://api.github.com/repos/utilForever/CubbyFlow/issues/events{/number}","events_url":"https://api.github.com/repos/utilForever/CubbyFlow/events","assignees_url":"https://api.github.com/repos/utilForever/CubbyFlow/assignees{/user}","branches_url":"https://api.github.com/repos/utilForever/CubbyFlow/branches{/branch}","tags_url":"https://api.github.com/repos/utilForever/CubbyFlow/tags","blobs_url":"https://api.github.com/repos/utilForever/CubbyFlow/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/utilForever/CubbyFlow/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/utilForever/CubbyFlow/git/refs{/sha}","trees_url":"https://api.github.com/repos/utilForever/CubbyFlow/git/trees{/sha}","statuses_url":"https://api.github.com/repos/utilForever/CubbyFlow/statuses/{sha}","languages_url":"https://api.github.com/repos/utilForever/CubbyFlow/languages","stargazers_url":"https://api.github.com/repos/utilForever/CubbyFlow/stargazers","contributors_url":"https://api.github.com/repos/utilForever/CubbyFlow/contributors","subscribers_url":"https://api.github.com/repos/utilForever/CubbyFlow/subscribers","subscription_url":"https://api.github.com/repos/utilForever/CubbyFlow/subscription","commits_url":"https://api.github.com/repos/utilForever/CubbyFlow/commits{/sha}","git_commits_url":"https://api.github.com/repos/utilForever/CubbyFlow/git/commits{/sha}","comments_url":"https://api.github.com/repos/utilForever/CubbyFlow/comments{/number}","issue_comment_url":"https://api.github.com/repos/utilForever/CubbyFlow/issues/comments{/number}","contents_url":"https://api.github.com/repos/utilForever/CubbyFlow/contents/{+path}","compare_url":"https://api.github.com/repos/utilForever/CubbyFlow/compare/{base}...{head}","merges_url":"https://api.github.com/repos/utilForever/CubbyFlow/merges","archive_url":"https://api.github.com/repos/utilForever/CubbyFlow/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/utilForever/CubbyFlow/downloads","issues_url":"https://api.github.com/repos/utilForever/CubbyFlow/issues{/number}","pulls_url":"https://api.github.com/repos/utilForever/CubbyFlow/pulls{/number}","milestones_url":"https://api.github.com/repos/utilForever/CubbyFlow/milestones{/number}","notifications_url":"https://api.github.com/repos/utilForever/CubbyFlow/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/utilForever/CubbyFlow/labels{/name}","releases_url":"https://api.github.com/repos/utilForever/CubbyFlow/releases{/id}","deployments_url":"https://api.github.com/repos/utilForever/CubbyFlow/deployments","created_at":"2017-01-19T14:43:21Z","updated_at":"2017-01-26T23:50:10Z","pushed_at":"2017-01-28T14:58:17Z","git_url":"git://github.com/utilForever/CubbyFlow.git","ssh_url":"git@github.com:utilForever/CubbyFlow.git","clone_url":"https://github.com/utilForever/CubbyFlow.git","svn_url":"https://github.com/utilForever/CubbyFlow","homepage":null,"size":72,"stargazers_count":2,"watchers_count":2,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":1,"forks":1,"open_issues":1,"watchers":2,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3"},"html":{"href":"https://github.com/utilForever/CubbyFlow/pull/3"},"issue":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/issues/3"},"comments":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/issues/3/comments"},"review_comments":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3/comments"},"review_comment":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/pulls/3/commits"},"statuses":{"href":"https://api.github.com/repos/utilForever/CubbyFlow/statuses/50310ac2f435b5caa496125c59d7b7a9e59a039c"}}}}
{"actor":{"display_login":"utilForever"}}