diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,9 @@
+# 0.10.0
+
+* Significantly improved documentation coverage and added module descriptions (by Christian Sakai, resolves #5)
+* Fixed a bug where the installation id field of 'PullRequestEvent' was not optional (by Rob Berry)
+* Implementing "head" and "base" fields to PullRequestReview (by Rob Berry and Thomas DuBuisson)
+
 # 0.9.1
 
 * Fixed a bug whereby the test fixtures were not included in the source distribution (resolves #8)
diff --git a/github-webhooks.cabal b/github-webhooks.cabal
--- a/github-webhooks.cabal
+++ b/github-webhooks.cabal
@@ -2,16 +2,19 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: a1a4064d53639fefe12d7deb1295ebb9246da1ff5a828e58baf91112ee25169a
+-- hash: c264a8311dd4c58ea01c739272cf8c7623e391652d8b5cc8a65ea1cc1d08f98a
 
 name:           github-webhooks
-version:        0.9.1
+version:        0.10.0
 synopsis:       Aeson instances for GitHub Webhook payloads.
 description:    Complete instances for decoding GitHub Webhook payloads (using @aeson@). See the README at <https://github.com/onrock-eng/github-webhooks#readme> for examples.
 category:       GitHub
 homepage:       https://github.com/onrock-eng/github-webhooks#readme
 bug-reports:    https://github.com/onrock-eng/github-webhooks/issues
-author:         Kyle Van Berendonck <kyle.vanberendonck@onrock.engineering>
+author:         Kyle Van Berendonck <kyle.vanberendonck@onrock.engineering>,
+                Christian Sakai <christianmsakai@gmail.com>,
+                Thomas DuBuisson <thomas.dubuisson@gmail.com>,
+                Rob Berry
 maintainer:     Kyle Van Berendonck <foss@onrock.engineering>
 copyright:      (c) 2017-2018 OnRock Engineering
 license:        MIT
diff --git a/package.yaml b/package.yaml
--- a/package.yaml
+++ b/package.yaml
@@ -1,5 +1,5 @@
 name: github-webhooks
-version: 0.9.1
+version: 0.10.0
 
 category: GitHub
 license: MIT
@@ -11,7 +11,11 @@
   - fixtures/*.json
 synopsis: Aeson instances for GitHub Webhook payloads.
 copyright: (c) 2017-2018 OnRock Engineering
-author: Kyle Van Berendonck <kyle.vanberendonck@onrock.engineering>
+author:
+  - Kyle Van Berendonck <kyle.vanberendonck@onrock.engineering>
+  - Christian Sakai <christianmsakai@gmail.com>
+  - Thomas DuBuisson <thomas.dubuisson@gmail.com>
+  - Rob Berry
 maintainer: Kyle Van Berendonck <foss@onrock.engineering>
 github: onrock-eng/github-webhooks
 description:
diff --git a/spec/DecodeEventsSpec.hs b/spec/DecodeEventsSpec.hs
--- a/spec/DecodeEventsSpec.hs
+++ b/spec/DecodeEventsSpec.hs
@@ -2920,514 +2920,1193 @@
           , whPullReqRevCommentUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/comments{/number}"
           , whPullReqCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/1/comments"
           , whPullReqStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
-          , whPullReqCommentCount = Just 0
-          , whPullReqRevCommentCount = Just 0
-          , whPullReqCommitCount = Just 1
-          , whPullReqAdditionsCount = Just 1
-          , whPullReqDeletionsCount = Just 1
-          , whPullReqFileChangeCount = Just 1
-          }
-    , evPullReqRepo =
-        HookRepository
-          { whRepoId = 35129377
-          , whRepoName = "public-repo"
-          , whRepoFullName = "baxterthehacker/public-repo"
-          , whRepoOwner =
-              Right HookUser
-                { whUserLogin = "baxterthehacker"
-                , whUserId = 6752317
-                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-                , whUserGravatarId = URL ""
-                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-                , whUserType = OwnerUser
-                , whUserIsAdminOfSite = False
-                }
-          , whRepoIsPrivate = False
-          , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
-          , whRepoDescription = ""
-          , whRepoIsAFork = False
-          , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
-          , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
-          , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
-          , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
-          , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
-          , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
-          , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
-          , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
-          , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
-          , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
-          , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
-          , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
-          , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
-          , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
-          , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
-          , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
-          , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
-          , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
-          , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
-          , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
-          , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
-          , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
-          , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
-          , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
-          , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
-          , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
-          , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
-          , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
-          , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
-          , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
-          , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
-          , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
-          , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
-          , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
-          , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
-          , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
-          , whRepoCreatedAt = read "2015-05-05 23:40:12"
-          , whRepoUpdatedAt = read "2015-05-05 23:40:12"
-          , whRepoPushedAt = read "2015-05-05 23:40:26"
-          , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
-          , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
-          , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
-          , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
-          , whRepoHomepage = Nothing
-          , whRepoSize = 0
-          , whRepoStargazersCount = 0
-          , whRepoWatchersCount = 0
-          , whRepoLanguage = Nothing
-          , whRepoHasIssues = True
-          , whRepoHasDownloads = True
-          , whRepoHasWiki = True
-          , whRepoHasPages = True
-          , whRepoForkCount = 0
-          , whRepoMirrorUrl = Nothing
-          , whRepoOpenIssuesCount = 1
-          , whRepoDefaultBranchName = "master"
-          }
-    , evPullReqSender =
-        HookUser
-          { whUserLogin = "baxterthehacker"
-          , whUserId = 6752317
-          , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-          , whUserGravatarId = URL ""
-          , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-          , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-          , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-          , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-          , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-          , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-          , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-          , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-          , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-          , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-          , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-          , whUserType = OwnerUser
-          , whUserIsAdminOfSite = False
-          }
-    , evPullReqInstallationId = 234
-    }
-
-pullRequestReviewCommentEventFixture :: PullRequestReviewCommentEvent
-pullRequestReviewCommentEventFixture = PullRequestReviewCommentEvent
-    { evPullReqRevComAction = PullRequestReviewCommentCreatedAction
-    , evPullReqRevComment =
-        HookPullRequestReviewComment
-          { whPullReqRevComUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/comments/29724692"
-          , whPullReqRevComId = 29724692
-          , whPullReqRevComDiffHunk = "@@ -1 +1 @@\n-# public-repo"
-          , whPullReqRevComPath = "README.md"
-          , whPullReqRevComPos = 1
-          , whPullReqRevComOrigPos = 1
-          , whPullReqRevComCommitSha = "0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
-          , whPullReqRevComOrigSha = "0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
-          , whPullReqRevComUser =
-              HookUser
-                { whUserLogin = "baxterthehacker"
-                , whUserId = 6752317
-                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-                , whUserGravatarId = URL ""
-                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-                , whUserType = OwnerUser
-                , whUserIsAdminOfSite = False
-                }
-          , whPullReqRevComBody = "Maybe you should use more emojji on this line."
-          , whPullReqRevComCreatedAt = read "2015-05-05 23:40:27"
-          , whPullReqRevComUpdatedAt = read "2015-05-05 23:40:27"
-          , whPullReqRevComHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1#discussion_r29724692"
-          , whPullReqRevComPullReqUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1"
-          }
-    , evPullReqRevTarget =
-        HookPullRequest
-          { whPullReqUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1"
-          , whPullReqId = 34778301
-          , whPullReqHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1"
-          , whPullReqDiffUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1.diff"
-          , whPullReqPatchUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1.patch"
-          , whPullReqIssueUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/1"
-          , whPullReqNumber = 1
-          , whPullReqState = "open"
-          , whPullReqIsLocked = False
-          , whPullReqTitle = "Update the README with new information"
-          , whPullReqUser =
-              HookUser
-                { whUserLogin = "baxterthehacker"
-                , whUserId = 6752317
-                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-                , whUserGravatarId = URL ""
-                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-                , whUserType = OwnerUser
-                , whUserIsAdminOfSite = False
-                }
-          , whPullReqBody = "This is a pretty simple change that we need to pull into master."
-          , whPullReqCreatedAt = read "2015-05-05 23:40:27"
-          , whPullReqUpdatedAt = read "2015-05-05 23:40:27"
-          , whPullReqClosedAt = Nothing
-          , whPullReqMergedAt = Nothing
-          , whPullReqMergeCommitSha = Just "18721552ba489fb84e12958c1b5694b5475f7991"
-          , whPullReqAssignee = Nothing
-          , whPullReqMilestone = Nothing
-          , whPullReqCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1/commits"
-          , whPullReqRevCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1/comments"
-          , whPullReqRevCommentUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/comments{/number}"
-          , whPullReqCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/1/comments"
-          , whPullReqStatusesUrl =
-              URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
-          , whPullReqCommentCount = Nothing
-          , whPullReqRevCommentCount = Nothing
-          , whPullReqCommitCount = Nothing
-          , whPullReqAdditionsCount = Nothing
-          , whPullReqDeletionsCount = Nothing
-          , whPullReqFileChangeCount = Nothing
-          }
-    , evPullReqRevRepo =
-        HookRepository
-          { whRepoId = 35129377
-          , whRepoName = "public-repo"
-          , whRepoFullName = "baxterthehacker/public-repo"
-          , whRepoOwner =
-              Right HookUser
-                { whUserLogin = "baxterthehacker"
-                , whUserId = 6752317
-                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-                , whUserGravatarId = URL ""
-                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-                , whUserType = OwnerUser
-                , whUserIsAdminOfSite = False
-                }
-          , whRepoIsPrivate = False
-          , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
-          , whRepoDescription = ""
-          , whRepoIsAFork = False
-          , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
-          , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
-          , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
-          , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
-          , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
-          , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
-          , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
-          , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
-          , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
-          , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
-          , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
-          , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
-          , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
-          , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
-          , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
-          , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
-          , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
-          , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
-          , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
-          , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
-          , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
-          , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
-          , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
-          , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
-          , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
-          , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
-          , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
-          , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
-          , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
-          , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
-          , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
-          , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
-          , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
-          , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
-          , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
-          , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
-          , whRepoCreatedAt = read "2015-05-05 23:40:12"
-          , whRepoUpdatedAt = read "2015-05-05 23:40:12"
-          , whRepoPushedAt = read "2015-05-05 23:40:27"
-          , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
-          , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
-          , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
-          , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
-          , whRepoHomepage = Nothing
-          , whRepoSize = 0
-          , whRepoStargazersCount = 0
-          , whRepoWatchersCount = 0
-          , whRepoLanguage = Nothing
-          , whRepoHasIssues = True
-          , whRepoHasDownloads = True
-          , whRepoHasWiki = True
-          , whRepoHasPages = True
-          , whRepoForkCount = 0
-          , whRepoMirrorUrl = Nothing
-          , whRepoOpenIssuesCount = 1
-          , whRepoDefaultBranchName = "master"
-          }
-    , evPullReqRevSender =
-        HookUser
-          { whUserLogin = "baxterthehacker"
-          , whUserId = 6752317
-          , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-          , whUserGravatarId = URL ""
-          , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-          , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-          , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-          , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-          , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-          , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-          , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-          , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-          , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-          , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-          , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-          , whUserType = OwnerUser
-          , whUserIsAdminOfSite = False
-          }
-    }
-
-pullRequestReviewEventFixture :: PullRequestReviewEvent
-pullRequestReviewEventFixture = PullRequestReviewEvent
-    { evPullReqReviewAction = PullRequestReviewSubmittedAction
-    , evPullReqReviewPayload =
-        HookPullRequestReview
-          { whPullReqReviewId = 2626884
-          , whPullReqReviewUser =
-              HookUser
-                { whUserLogin = "baxterthehacker"
-                , whUserId = 6752317
-                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-                , whUserGravatarId = URL ""
-                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-                , whUserType = OwnerUser
-                , whUserIsAdminOfSite = False
-                }
-          , whPullReqReviewBody = "Looks great!"
-          , whPullReqReviewSubmittedAt = read "2016-10-03 23:39:09"
-          , whPullReqReviewState = "approved"
-          , whPullReqReviewHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8#pullrequestreview-2626884"
-          , whPullReqReviewPullUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8"
-          }
-    , evPullReqReviewTarget =
-        HookPullRequest
-          { whPullReqUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8"
-          , whPullReqId = 87811438
-          , whPullReqHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8"
-          , whPullReqDiffUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8.diff"
-          , whPullReqPatchUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8.patch"
-          , whPullReqIssueUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/8"
-          , whPullReqNumber = 8
-          , whPullReqState = "open"
-          , whPullReqIsLocked = False
-          , whPullReqTitle = "Add a README description"
-          , whPullReqUser =
-              HookUser
-                { whUserLogin = "skalnik"
-                , whUserId = 2546
-                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/2546?v=3"
-                , whUserGravatarId = URL ""
-                , whUserUrl = URL "https://api.github.com/users/skalnik"
-                , whUserHtmlUrl = URL "https://github.com/skalnik"
-                , whUserFollowersUrl = URL "https://api.github.com/users/skalnik/followers"
-                , whUserFollowingUrl = URL "https://api.github.com/users/skalnik/following{/other_user}"
-                , whUserGistsUrl = URL "https://api.github.com/users/skalnik/gists{/gist_id}"
-                , whUserStarredUrl = URL "https://api.github.com/users/skalnik/starred{/owner}{/repo}"
-                , whUserSubscriptionsUrl = URL "https://api.github.com/users/skalnik/subscriptions"
-                , whUserOrganizationsUrl = URL "https://api.github.com/users/skalnik/orgs"
-                , whUserReposUrl = URL "https://api.github.com/users/skalnik/repos"
-                , whUserEventsUrl = URL "https://api.github.com/users/skalnik/events{/privacy}"
-                , whUserReceivedEventsUrl = URL "https://api.github.com/users/skalnik/received_events"
-                , whUserType = OwnerUser
-                , whUserIsAdminOfSite = True
-                }
-          , whPullReqBody = "Just a few more details"
-          , whPullReqCreatedAt = read "2016-10-03 23:37:43"
-          , whPullReqUpdatedAt = read "2016-10-03 23:39:09"
-          , whPullReqClosedAt = Nothing
-          , whPullReqMergedAt = Nothing
-          , whPullReqMergeCommitSha = Just "faea154a7decef6819754aab0f8c0e232e6c8b4f"
-          , whPullReqAssignee = Nothing
-          , whPullReqMilestone = Nothing
-          , whPullReqCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8/commits"
-          , whPullReqRevCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8/comments"
-          , whPullReqRevCommentUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/comments{/number}"
-          , whPullReqCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/8/comments"
-          , whPullReqStatusesUrl =
-              URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/b7a1f9c27caa4e03c14a88feb56e2d4f7500aa63"
-          , whPullReqCommentCount = Nothing
-          , whPullReqRevCommentCount = Nothing
-          , whPullReqCommitCount = Nothing
-          , whPullReqAdditionsCount = Nothing
-          , whPullReqDeletionsCount = Nothing
-          , whPullReqFileChangeCount = Nothing
-          }
-    , evPullReqReviewRepo =
-        HookRepository
-          { whRepoId = 35129377
-          , whRepoName = "public-repo"
-          , whRepoFullName = "baxterthehacker/public-repo"
-          , whRepoOwner =
-              Right HookUser
-                { whUserLogin = "baxterthehacker"
-                , whUserId = 6752317
-                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-                , whUserGravatarId = URL ""
-                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-                , whUserType = OwnerUser
-                , whUserIsAdminOfSite = False
-                }
-          , whRepoIsPrivate = False
-          , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
-          , whRepoDescription = ""
-          , whRepoIsAFork = False
-          , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
-          , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
-          , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
-          , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
-          , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
-          , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
-          , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
-          , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
-          , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
-          , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
-          , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
-          , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
-          , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
-          , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
-          , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
-          , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
-          , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
-          , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
-          , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
-          , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
-          , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
-          , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
-          , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
-          , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
-          , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
-          , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
-          , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
-          , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
-          , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
-          , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
-          , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
-          , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
-          , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
-          , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
-          , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
-          , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
-          , whRepoCreatedAt = read "2015-05-05 23:40:12"
-          , whRepoUpdatedAt = read "2016-08-15 17:19:01"
-          , whRepoPushedAt = read "2016-10-03 23:37:43"
-          , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
-          , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
-          , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
-          , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
-          , whRepoHomepage = Nothing
-          , whRepoSize = 233
-          , whRepoStargazersCount = 2
-          , whRepoWatchersCount = 2
-          , whRepoLanguage = Nothing
-          , whRepoHasIssues = True
-          , whRepoHasDownloads = True
-          , whRepoHasWiki = True
-          , whRepoHasPages = True
-          , whRepoForkCount = 2
-          , whRepoMirrorUrl = Nothing
-          , whRepoOpenIssuesCount = 5
-          , whRepoDefaultBranchName = "master"
-          }
-    , evPullReqReviewSender =
-        HookUser
-          { whUserLogin = "baxterthehacker"
-          , whUserId = 6752317
-          , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
-          , whUserGravatarId = URL ""
-          , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
-          , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
-          , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
-          , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
-          , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
-          , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
-          , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
-          , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
-          , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
-          , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
-          , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
-          , whUserType = OwnerUser
-          , whUserIsAdminOfSite = False
-          }
-    }
+          , whPullReqBase =
+              PullRequestTarget
+                { whPullReqTargetSha = "9049f1265b7d61be4a8904a9a27120d2064dab3b"
+                , whPullReqTargetUser =
+                    HookUser
+                      { whUserLogin = "baxterthehacker"
+                      , whUserId = 6752317
+                      , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                      , whUserGravatarId = URL ""
+                      , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                      , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                      , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                      , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                      , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                      , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                      , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                      , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                      , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                      , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                      , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                      , whUserType = OwnerUser
+                      , whUserIsAdminOfSite = False
+                      }
+                , whPullReqTargetRepo =
+                    HookRepository
+                      { whRepoId = 35129377
+                      , whRepoName = "public-repo"
+                      , whRepoFullName = "baxterthehacker/public-repo"
+                      , whRepoOwner =
+                          Right
+                            HookUser
+                              { whUserLogin = "baxterthehacker"
+                              , whUserId = 6752317
+                              , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                              , whUserGravatarId = URL ""
+                              , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                              , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                              , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                              , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                              , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                              , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                              , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                              , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                              , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                              , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                              , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                              , whUserType = OwnerUser
+                              , whUserIsAdminOfSite = False
+                              }
+                      , whRepoIsPrivate = False
+                      , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoDescription = ""
+                      , whRepoIsAFork = False
+                      , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+                      , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+                      , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+                      , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+                      , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+                      , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+                      , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+                      , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+                      , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+                      , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+                      , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+                      , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+                      , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+                      , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+                      , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+                      , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+                      , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+                      , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+                      , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+                      , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+                      , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+                      , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+                      , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+                      , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+                      , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+                      , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+                      , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+                      , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+                      , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+                      , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+                      , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+                      , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+                      , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+                      , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+                      , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+                      , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+                      , whRepoCreatedAt = read "2015-05-05 23:40:12"
+                      , whRepoUpdatedAt = read "2015-05-05 23:40:12"
+                      , whRepoPushedAt = read "2015-05-05 23:40:26"
+                      , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+                      , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoHomepage = Nothing
+                      , whRepoSize = 0
+                      , whRepoStargazersCount = 0
+                      , whRepoWatchersCount = 0
+                      , whRepoLanguage = Nothing
+                      , whRepoHasIssues = True
+                      , whRepoHasDownloads = True
+                      , whRepoHasWiki = True
+                      , whRepoHasPages = True
+                      , whRepoForkCount = 0
+                      , whRepoMirrorUrl = Nothing
+                      , whRepoOpenIssuesCount = 1
+                      , whRepoDefaultBranchName = "master"
+                      }
+                , whPullReqTargetLabel = "baxterthehacker:master"
+                , whPullReqTargetRef = "master"
+                }
+          , whPullReqHead =
+              PullRequestTarget
+                { whPullReqTargetSha = "0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
+                , whPullReqTargetUser =
+                    HookUser
+                      { whUserLogin = "baxterthehacker"
+                      , whUserId = 6752317
+                      , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                      , whUserGravatarId = URL ""
+                      , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                      , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                      , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                      , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                      , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                      , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                      , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                      , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                      , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                      , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                      , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                      , whUserType = OwnerUser
+                      , whUserIsAdminOfSite = False
+                      }
+                , whPullReqTargetRepo =
+                    HookRepository
+                      { whRepoId = 35129377
+                      , whRepoName = "public-repo"
+                      , whRepoFullName = "baxterthehacker/public-repo"
+                      , whRepoOwner =
+                          Right
+                            HookUser
+                              { whUserLogin = "baxterthehacker"
+                              , whUserId = 6752317
+                              , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                              , whUserGravatarId = URL ""
+                              , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                              , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                              , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                              , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                              , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                              , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                              , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                              , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                              , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                              , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                              , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                              , whUserType = OwnerUser
+                              , whUserIsAdminOfSite = False
+                              }
+                      , whRepoIsPrivate = False
+                      , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoDescription = ""
+                      , whRepoIsAFork = False
+                      , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+                      , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+                      , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+                      , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+                      , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+                      , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+                      , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+                      , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+                      , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+                      , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+                      , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+                      , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+                      , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+                      , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+                      , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+                      , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+                      , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+                      , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+                      , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+                      , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+                      , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+                      , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+                      , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+                      , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+                      , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+                      , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+                      , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+                      , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+                      , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+                      , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+                      , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+                      , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+                      , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+                      , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+                      , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+                      , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+                      , whRepoCreatedAt = read "2015-05-05 23:40:12"
+                      , whRepoUpdatedAt = read "2015-05-05 23:40:12"
+                      , whRepoPushedAt = read "2015-05-05 23:40:26"
+                      , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+                      , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoHomepage = Nothing
+                      , whRepoSize = 0
+                      , whRepoStargazersCount = 0
+                      , whRepoWatchersCount = 0
+                      , whRepoLanguage = Nothing
+                      , whRepoHasIssues = True
+                      , whRepoHasDownloads = True
+                      , whRepoHasWiki = True
+                      , whRepoHasPages = True
+                      , whRepoForkCount = 0
+                      , whRepoMirrorUrl = Nothing
+                      , whRepoOpenIssuesCount = 1
+                      , whRepoDefaultBranchName = "master"
+                      }
+                , whPullReqTargetLabel = "baxterthehacker:changes"
+                , whPullReqTargetRef = "changes"
+                }
+          , whPullReqCommentCount = Just 0
+          , whPullReqRevCommentCount = Just 0
+          , whPullReqCommitCount = Just 1
+          , whPullReqAdditionsCount = Just 1
+          , whPullReqDeletionsCount = Just 1
+          , whPullReqFileChangeCount = Just 1
+          }
+    , evPullReqRepo =
+        HookRepository
+          { whRepoId = 35129377
+          , whRepoName = "public-repo"
+          , whRepoFullName = "baxterthehacker/public-repo"
+          , whRepoOwner =
+              Right HookUser
+                { whUserLogin = "baxterthehacker"
+                , whUserId = 6752317
+                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                , whUserGravatarId = URL ""
+                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                , whUserType = OwnerUser
+                , whUserIsAdminOfSite = False
+                }
+          , whRepoIsPrivate = False
+          , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+          , whRepoDescription = ""
+          , whRepoIsAFork = False
+          , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+          , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+          , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+          , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+          , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+          , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+          , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+          , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+          , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+          , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+          , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+          , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+          , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+          , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+          , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+          , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+          , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+          , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+          , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+          , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+          , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+          , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+          , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+          , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+          , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+          , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+          , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+          , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+          , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+          , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+          , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+          , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+          , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+          , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+          , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+          , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+          , whRepoCreatedAt = read "2015-05-05 23:40:12"
+          , whRepoUpdatedAt = read "2015-05-05 23:40:12"
+          , whRepoPushedAt = read "2015-05-05 23:40:26"
+          , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+          , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+          , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+          , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+          , whRepoHomepage = Nothing
+          , whRepoSize = 0
+          , whRepoStargazersCount = 0
+          , whRepoWatchersCount = 0
+          , whRepoLanguage = Nothing
+          , whRepoHasIssues = True
+          , whRepoHasDownloads = True
+          , whRepoHasWiki = True
+          , whRepoHasPages = True
+          , whRepoForkCount = 0
+          , whRepoMirrorUrl = Nothing
+          , whRepoOpenIssuesCount = 1
+          , whRepoDefaultBranchName = "master"
+          }
+    , evPullReqSender =
+        HookUser
+          { whUserLogin = "baxterthehacker"
+          , whUserId = 6752317
+          , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+          , whUserGravatarId = URL ""
+          , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+          , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+          , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+          , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+          , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+          , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+          , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+          , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+          , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+          , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+          , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+          , whUserType = OwnerUser
+          , whUserIsAdminOfSite = False
+          }
+    , evPullReqInstallationId = Just 234
+    }
+
+pullRequestReviewCommentEventFixture :: PullRequestReviewCommentEvent
+pullRequestReviewCommentEventFixture = PullRequestReviewCommentEvent
+    { evPullReqRevComAction = PullRequestReviewCommentCreatedAction
+    , evPullReqRevComment =
+        HookPullRequestReviewComment
+          { whPullReqRevComUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/comments/29724692"
+          , whPullReqRevComId = 29724692
+          , whPullReqRevComDiffHunk = "@@ -1 +1 @@\n-# public-repo"
+          , whPullReqRevComPath = "README.md"
+          , whPullReqRevComPos = 1
+          , whPullReqRevComOrigPos = 1
+          , whPullReqRevComCommitSha = "0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
+          , whPullReqRevComOrigSha = "0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
+          , whPullReqRevComUser =
+              HookUser
+                { whUserLogin = "baxterthehacker"
+                , whUserId = 6752317
+                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                , whUserGravatarId = URL ""
+                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                , whUserType = OwnerUser
+                , whUserIsAdminOfSite = False
+                }
+          , whPullReqRevComBody = "Maybe you should use more emojji on this line."
+          , whPullReqRevComCreatedAt = read "2015-05-05 23:40:27"
+          , whPullReqRevComUpdatedAt = read "2015-05-05 23:40:27"
+          , whPullReqRevComHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1#discussion_r29724692"
+          , whPullReqRevComPullReqUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1"
+          }
+    , evPullReqRevTarget =
+        HookPullRequest
+          { whPullReqUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1"
+          , whPullReqId = 34778301
+          , whPullReqHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1"
+          , whPullReqDiffUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1.diff"
+          , whPullReqPatchUrl = URL "https://github.com/baxterthehacker/public-repo/pull/1.patch"
+          , whPullReqIssueUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/1"
+          , whPullReqNumber = 1
+          , whPullReqState = "open"
+          , whPullReqIsLocked = False
+          , whPullReqTitle = "Update the README with new information"
+          , whPullReqUser =
+              HookUser
+                { whUserLogin = "baxterthehacker"
+                , whUserId = 6752317
+                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                , whUserGravatarId = URL ""
+                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                , whUserType = OwnerUser
+                , whUserIsAdminOfSite = False
+                }
+          , whPullReqBody = "This is a pretty simple change that we need to pull into master."
+          , whPullReqCreatedAt = read "2015-05-05 23:40:27"
+          , whPullReqUpdatedAt = read "2015-05-05 23:40:27"
+          , whPullReqClosedAt = Nothing
+          , whPullReqMergedAt = Nothing
+          , whPullReqMergeCommitSha = Just "18721552ba489fb84e12958c1b5694b5475f7991"
+          , whPullReqAssignee = Nothing
+          , whPullReqMilestone = Nothing
+          , whPullReqCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1/commits"
+          , whPullReqRevCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/1/comments"
+          , whPullReqRevCommentUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/comments{/number}"
+          , whPullReqCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/1/comments"
+          , whPullReqStatusesUrl =
+              URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
+          , whPullReqCommentCount = Nothing
+          , whPullReqRevCommentCount = Nothing
+          , whPullReqCommitCount = Nothing
+          , whPullReqAdditionsCount = Nothing
+          , whPullReqDeletionsCount = Nothing
+          , whPullReqFileChangeCount = Nothing
+          , whPullReqBase =
+              PullRequestTarget
+                { whPullReqTargetSha = "9049f1265b7d61be4a8904a9a27120d2064dab3b"
+                , whPullReqTargetUser =
+                    HookUser
+                      { whUserLogin = "baxterthehacker"
+                      , whUserId = 6752317
+                      , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                      , whUserGravatarId = URL ""
+                      , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                      , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                      , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                      , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                      , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                      , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                      , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                      , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                      , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                      , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                      , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                      , whUserType = OwnerUser
+                      , whUserIsAdminOfSite = False
+                      }
+                , whPullReqTargetRepo =
+                    HookRepository
+                      { whRepoId = 35129377
+                      , whRepoName = "public-repo"
+                      , whRepoFullName = "baxterthehacker/public-repo"
+                      , whRepoOwner =
+                          Right
+                            HookUser
+                              { whUserLogin = "baxterthehacker"
+                              , whUserId = 6752317
+                              , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                              , whUserGravatarId = URL ""
+                              , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                              , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                              , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                              , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                              , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                              , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                              , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                              , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                              , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                              , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                              , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                              , whUserType = OwnerUser
+                              , whUserIsAdminOfSite = False
+                              }
+                      , whRepoIsPrivate = False
+                      , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoDescription = ""
+                      , whRepoIsAFork = False
+                      , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+                      , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+                      , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+                      , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+                      , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+                      , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+                      , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+                      , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+                      , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+                      , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+                      , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+                      , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+                      , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+                      , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+                      , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+                      , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+                      , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+                      , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+                      , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+                      , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+                      , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+                      , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+                      , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+                      , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+                      , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+                      , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+                      , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+                      , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+                      , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+                      , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+                      , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+                      , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+                      , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+                      , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+                      , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+                      , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+                      , whRepoCreatedAt = read "2015-05-05 23:40:12"
+                      , whRepoUpdatedAt = read "2015-05-05 23:40:12"
+                      , whRepoPushedAt = read "2015-05-05 23:40:27"
+                      , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+                      , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoHomepage = Nothing
+                      , whRepoSize = 0
+                      , whRepoStargazersCount = 0
+                      , whRepoWatchersCount = 0
+                      , whRepoLanguage = Nothing
+                      , whRepoHasIssues = True
+                      , whRepoHasDownloads = True
+                      , whRepoHasWiki = True
+                      , whRepoHasPages = True
+                      , whRepoForkCount = 0
+                      , whRepoMirrorUrl = Nothing
+                      , whRepoOpenIssuesCount = 1
+                      , whRepoDefaultBranchName = "master"
+                      }
+                , whPullReqTargetLabel = "baxterthehacker:master"
+                , whPullReqTargetRef = "master"
+                }
+          , whPullReqHead =
+              PullRequestTarget
+                { whPullReqTargetSha = "0d1a26e67d8f5eaf1f6ba5c57fc3c7d91ac0fd1c"
+                , whPullReqTargetUser =
+                    HookUser
+                      { whUserLogin = "baxterthehacker"
+                      , whUserId = 6752317
+                      , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                      , whUserGravatarId = URL ""
+                      , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                      , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                      , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                      , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                      , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                      , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                      , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                      , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                      , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                      , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                      , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                      , whUserType = OwnerUser
+                      , whUserIsAdminOfSite = False
+                      }
+                , whPullReqTargetRepo =
+                    HookRepository
+                      { whRepoId = 35129377
+                      , whRepoName = "public-repo"
+                      , whRepoFullName = "baxterthehacker/public-repo"
+                      , whRepoOwner =
+                          Right
+                            HookUser
+                              { whUserLogin = "baxterthehacker"
+                              , whUserId = 6752317
+                              , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                              , whUserGravatarId = URL ""
+                              , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                              , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                              , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                              , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                              , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                              , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                              , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                              , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                              , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                              , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                              , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                              , whUserType = OwnerUser
+                              , whUserIsAdminOfSite = False
+                              }
+                      , whRepoIsPrivate = False
+                      , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoDescription = ""
+                      , whRepoIsAFork = False
+                      , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+                      , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+                      , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+                      , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+                      , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+                      , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+                      , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+                      , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+                      , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+                      , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+                      , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+                      , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+                      , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+                      , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+                      , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+                      , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+                      , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+                      , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+                      , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+                      , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+                      , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+                      , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+                      , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+                      , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+                      , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+                      , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+                      , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+                      , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+                      , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+                      , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+                      , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+                      , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+                      , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+                      , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+                      , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+                      , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+                      , whRepoCreatedAt = read "2015-05-05 23:40:12"
+                      , whRepoUpdatedAt = read "2015-05-05 23:40:12"
+                      , whRepoPushedAt = read "2015-05-05 23:40:27"
+                      , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+                      , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+                      , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+                      , whRepoHomepage = Nothing
+                      , whRepoSize = 0
+                      , whRepoStargazersCount = 0
+                      , whRepoWatchersCount = 0
+                      , whRepoLanguage = Nothing
+                      , whRepoHasIssues = True
+                      , whRepoHasDownloads = True
+                      , whRepoHasWiki = True
+                      , whRepoHasPages = True
+                      , whRepoForkCount = 0
+                      , whRepoMirrorUrl = Nothing
+                      , whRepoOpenIssuesCount = 1
+                      , whRepoDefaultBranchName = "master"
+                      }
+                , whPullReqTargetLabel = "baxterthehacker:changes"
+                , whPullReqTargetRef = "changes"
+                }
+          }
+    , evPullReqRevRepo =
+        HookRepository
+          { whRepoId = 35129377
+          , whRepoName = "public-repo"
+          , whRepoFullName = "baxterthehacker/public-repo"
+          , whRepoOwner =
+              Right HookUser
+                { whUserLogin = "baxterthehacker"
+                , whUserId = 6752317
+                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                , whUserGravatarId = URL ""
+                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                , whUserType = OwnerUser
+                , whUserIsAdminOfSite = False
+                }
+          , whRepoIsPrivate = False
+          , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+          , whRepoDescription = ""
+          , whRepoIsAFork = False
+          , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+          , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+          , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+          , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+          , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+          , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+          , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+          , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+          , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+          , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+          , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+          , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+          , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+          , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+          , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+          , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+          , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+          , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+          , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+          , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+          , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+          , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+          , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+          , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+          , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+          , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+          , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+          , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+          , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+          , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+          , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+          , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+          , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+          , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+          , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+          , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+          , whRepoCreatedAt = read "2015-05-05 23:40:12"
+          , whRepoUpdatedAt = read "2015-05-05 23:40:12"
+          , whRepoPushedAt = read "2015-05-05 23:40:27"
+          , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+          , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+          , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+          , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+          , whRepoHomepage = Nothing
+          , whRepoSize = 0
+          , whRepoStargazersCount = 0
+          , whRepoWatchersCount = 0
+          , whRepoLanguage = Nothing
+          , whRepoHasIssues = True
+          , whRepoHasDownloads = True
+          , whRepoHasWiki = True
+          , whRepoHasPages = True
+          , whRepoForkCount = 0
+          , whRepoMirrorUrl = Nothing
+          , whRepoOpenIssuesCount = 1
+          , whRepoDefaultBranchName = "master"
+          }
+    , evPullReqRevSender =
+        HookUser
+          { whUserLogin = "baxterthehacker"
+          , whUserId = 6752317
+          , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+          , whUserGravatarId = URL ""
+          , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+          , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+          , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+          , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+          , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+          , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+          , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+          , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+          , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+          , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+          , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+          , whUserType = OwnerUser
+          , whUserIsAdminOfSite = False
+          }
+    }
+
+pullRequestReviewEventFixture :: PullRequestReviewEvent
+pullRequestReviewEventFixture = PullRequestReviewEvent
+  { evPullReqReviewAction = PullRequestReviewSubmittedAction
+  , evPullReqReviewPayload =
+      HookPullRequestReview
+        { whPullReqReviewId = 2626884
+        , whPullReqReviewUser =
+            HookUser
+              { whUserLogin = "baxterthehacker"
+              , whUserId = 6752317
+              , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+              , whUserGravatarId = URL ""
+              , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+              , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+              , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+              , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+              , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+              , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+              , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+              , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+              , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+              , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+              , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+              , whUserType = OwnerUser
+              , whUserIsAdminOfSite = False
+              }
+        , whPullReqReviewBody = "Looks great!"
+        , whPullReqReviewSubmittedAt = read "2016-10-03 23:39:09"
+        , whPullReqReviewState = "approved"
+        , whPullReqReviewHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8#pullrequestreview-2626884"
+        , whPullReqReviewPullUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8"
+        }
+  , evPullReqReviewTarget =
+      HookPullRequest
+        { whPullReqUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8"
+        , whPullReqId = 87811438
+        , whPullReqHtmlUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8"
+        , whPullReqDiffUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8.diff"
+        , whPullReqPatchUrl = URL "https://github.com/baxterthehacker/public-repo/pull/8.patch"
+        , whPullReqIssueUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/8"
+        , whPullReqNumber = 8
+        , whPullReqState = "open"
+        , whPullReqIsLocked = False
+        , whPullReqTitle = "Add a README description"
+        , whPullReqUser =
+            HookUser
+              { whUserLogin = "skalnik"
+              , whUserId = 2546
+              , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/2546?v=3"
+              , whUserGravatarId = URL ""
+              , whUserUrl = URL "https://api.github.com/users/skalnik"
+              , whUserHtmlUrl = URL "https://github.com/skalnik"
+              , whUserFollowersUrl = URL "https://api.github.com/users/skalnik/followers"
+              , whUserFollowingUrl = URL "https://api.github.com/users/skalnik/following{/other_user}"
+              , whUserGistsUrl = URL "https://api.github.com/users/skalnik/gists{/gist_id}"
+              , whUserStarredUrl = URL "https://api.github.com/users/skalnik/starred{/owner}{/repo}"
+              , whUserSubscriptionsUrl = URL "https://api.github.com/users/skalnik/subscriptions"
+              , whUserOrganizationsUrl = URL "https://api.github.com/users/skalnik/orgs"
+              , whUserReposUrl = URL "https://api.github.com/users/skalnik/repos"
+              , whUserEventsUrl = URL "https://api.github.com/users/skalnik/events{/privacy}"
+              , whUserReceivedEventsUrl = URL "https://api.github.com/users/skalnik/received_events"
+              , whUserType = OwnerUser
+              , whUserIsAdminOfSite = True
+              }
+        , whPullReqBody = "Just a few more details"
+        , whPullReqCreatedAt = read "2016-10-03 23:37:43"
+        , whPullReqUpdatedAt = read "2016-10-03 23:39:09"
+        , whPullReqClosedAt = Nothing
+        , whPullReqMergedAt = Nothing
+        , whPullReqMergeCommitSha = Just "faea154a7decef6819754aab0f8c0e232e6c8b4f"
+        , whPullReqAssignee = Nothing
+        , whPullReqMilestone = Nothing
+        , whPullReqCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8/commits"
+        , whPullReqRevCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/8/comments"
+        , whPullReqRevCommentUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls/comments{/number}"
+        , whPullReqCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/8/comments"
+        , whPullReqStatusesUrl =
+            URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/b7a1f9c27caa4e03c14a88feb56e2d4f7500aa63"
+        , whPullReqBase =
+            PullRequestTarget
+              { whPullReqTargetSha = "9049f1265b7d61be4a8904a9a27120d2064dab3b"
+              , whPullReqTargetUser =
+                  HookUser
+                    { whUserLogin = "baxterthehacker"
+                    , whUserId = 6752317
+                    , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                    , whUserGravatarId = URL ""
+                    , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                    , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                    , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                    , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                    , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                    , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                    , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                    , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                    , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                    , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                    , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                    , whUserType = OwnerUser
+                    , whUserIsAdminOfSite = False
+                    }
+              , whPullReqTargetRepo =
+                  HookRepository
+                    { whRepoId = 35129377
+                    , whRepoName = "public-repo"
+                    , whRepoFullName = "baxterthehacker/public-repo"
+                    , whRepoOwner =
+                        Right
+                          HookUser
+                            { whUserLogin = "baxterthehacker"
+                            , whUserId = 6752317
+                            , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                            , whUserGravatarId = URL ""
+                            , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                            , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                            , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                            , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                            , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                            , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                            , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                            , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                            , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                            , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                            , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                            , whUserType = OwnerUser
+                            , whUserIsAdminOfSite = False
+                            }
+                    , whRepoIsPrivate = False
+                    , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+                    , whRepoDescription = ""
+                    , whRepoIsAFork = False
+                    , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+                    , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+                    , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+                    , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+                    , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+                    , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+                    , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+                    , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+                    , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+                    , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+                    , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+                    , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+                    , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+                    , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+                    , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+                    , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+                    , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+                    , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+                    , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+                    , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+                    , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+                    , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+                    , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+                    , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+                    , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+                    , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+                    , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+                    , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+                    , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+                    , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+                    , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+                    , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+                    , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+                    , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+                    , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+                    , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+                    , whRepoCreatedAt = read "2015-05-05 23:40:12"
+                    , whRepoUpdatedAt = read "2016-08-15 17:19:01"
+                    , whRepoPushedAt = read "2016-10-03 23:37:43"
+                    , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+                    , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+                    , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+                    , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+                    , whRepoHomepage = Nothing
+                    , whRepoSize = 233
+                    , whRepoStargazersCount = 2
+                    , whRepoWatchersCount = 2
+                    , whRepoLanguage = Nothing
+                    , whRepoHasIssues = True
+                    , whRepoHasDownloads = True
+                    , whRepoHasWiki = True
+                    , whRepoHasPages = True
+                    , whRepoForkCount = 2
+                    , whRepoMirrorUrl = Nothing
+                    , whRepoOpenIssuesCount = 5
+                    , whRepoDefaultBranchName = "master"
+                    }
+              , whPullReqTargetLabel = "baxterthehacker:master"
+              , whPullReqTargetRef = "master"
+              }
+        , whPullReqHead =
+            PullRequestTarget
+              { whPullReqTargetSha = "b7a1f9c27caa4e03c14a88feb56e2d4f7500aa63"
+              , whPullReqTargetUser =
+                  HookUser
+                    { whUserLogin = "skalnik"
+                    , whUserId = 2546
+                    , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/2546?v=3"
+                    , whUserGravatarId = URL ""
+                    , whUserUrl = URL "https://api.github.com/users/skalnik"
+                    , whUserHtmlUrl = URL "https://github.com/skalnik"
+                    , whUserFollowersUrl = URL "https://api.github.com/users/skalnik/followers"
+                    , whUserFollowingUrl = URL "https://api.github.com/users/skalnik/following{/other_user}"
+                    , whUserGistsUrl = URL "https://api.github.com/users/skalnik/gists{/gist_id}"
+                    , whUserStarredUrl = URL "https://api.github.com/users/skalnik/starred{/owner}{/repo}"
+                    , whUserSubscriptionsUrl = URL "https://api.github.com/users/skalnik/subscriptions"
+                    , whUserOrganizationsUrl = URL "https://api.github.com/users/skalnik/orgs"
+                    , whUserReposUrl = URL "https://api.github.com/users/skalnik/repos"
+                    , whUserEventsUrl = URL "https://api.github.com/users/skalnik/events{/privacy}"
+                    , whUserReceivedEventsUrl = URL "https://api.github.com/users/skalnik/received_events"
+                    , whUserType = OwnerUser
+                    , whUserIsAdminOfSite = True
+                    }
+              , whPullReqTargetRepo =
+                  HookRepository
+                    { whRepoId = 69919152
+                    , whRepoName = "public-repo"
+                    , whRepoFullName = "skalnik/public-repo"
+                    , whRepoOwner =
+                        Right
+                          HookUser
+                            { whUserLogin = "skalnik"
+                            , whUserId = 2546
+                            , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/2546?v=3"
+                            , whUserGravatarId = URL ""
+                            , whUserUrl = URL "https://api.github.com/users/skalnik"
+                            , whUserHtmlUrl = URL "https://github.com/skalnik"
+                            , whUserFollowersUrl = URL "https://api.github.com/users/skalnik/followers"
+                            , whUserFollowingUrl = URL "https://api.github.com/users/skalnik/following{/other_user}"
+                            , whUserGistsUrl = URL "https://api.github.com/users/skalnik/gists{/gist_id}"
+                            , whUserStarredUrl = URL "https://api.github.com/users/skalnik/starred{/owner}{/repo}"
+                            , whUserSubscriptionsUrl = URL "https://api.github.com/users/skalnik/subscriptions"
+                            , whUserOrganizationsUrl = URL "https://api.github.com/users/skalnik/orgs"
+                            , whUserReposUrl = URL "https://api.github.com/users/skalnik/repos"
+                            , whUserEventsUrl = URL "https://api.github.com/users/skalnik/events{/privacy}"
+                            , whUserReceivedEventsUrl = URL "https://api.github.com/users/skalnik/received_events"
+                            , whUserType = OwnerUser
+                            , whUserIsAdminOfSite = True
+                            }
+                    , whRepoIsPrivate = False
+                    , whRepoHtmlUrl = URL "https://github.com/skalnik/public-repo"
+                    , whRepoDescription = ""
+                    , whRepoIsAFork = True
+                    , whRepoUrl = URL "https://api.github.com/repos/skalnik/public-repo"
+                    , whRepoForksUrl = URL "https://api.github.com/repos/skalnik/public-repo/forks"
+                    , whRepoKeysUrl = URL "https://api.github.com/repos/skalnik/public-repo/keys{/key_id}"
+                    , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/skalnik/public-repo/collaborators{/collaborator}"
+                    , whRepoTeamsUrl = URL "https://api.github.com/repos/skalnik/public-repo/teams"
+                    , whRepoHooksUrl = URL "https://api.github.com/repos/skalnik/public-repo/hooks"
+                    , whRepoIssueEventsUrl = URL "https://api.github.com/repos/skalnik/public-repo/issues/events{/number}"
+                    , whRepoEventsUrl = URL "https://api.github.com/repos/skalnik/public-repo/events"
+                    , whRepoAssigneesUrl = URL "https://api.github.com/repos/skalnik/public-repo/assignees{/user}"
+                    , whRepoBranchesUrl = URL "https://api.github.com/repos/skalnik/public-repo/branches{/branch}"
+                    , whRepoTagsUrl = URL "https://api.github.com/repos/skalnik/public-repo/tags"
+                    , whRepoBlobsUrl = URL "https://api.github.com/repos/skalnik/public-repo/git/blobs{/sha}"
+                    , whRepoGitTagsUrl = URL "https://api.github.com/repos/skalnik/public-repo/git/tags{/sha}"
+                    , whRepoGitRefsUrl = URL "https://api.github.com/repos/skalnik/public-repo/git/refs{/sha}"
+                    , whRepoTreesUrl = URL "https://api.github.com/repos/skalnik/public-repo/git/trees{/sha}"
+                    , whRepoStatusesUrl = URL "https://api.github.com/repos/skalnik/public-repo/statuses/{sha}"
+                    , whRepoLanguagesUrl = URL "https://api.github.com/repos/skalnik/public-repo/languages"
+                    , whRepoStargazersUrl = URL "https://api.github.com/repos/skalnik/public-repo/stargazers"
+                    , whRepoContributorsUrl = URL "https://api.github.com/repos/skalnik/public-repo/contributors"
+                    , whRepoSubscribersUrl = URL "https://api.github.com/repos/skalnik/public-repo/subscribers"
+                    , whRepoSubscriptionUrl = URL "https://api.github.com/repos/skalnik/public-repo/subscription"
+                    , whRepoCommitsUrl = URL "https://api.github.com/repos/skalnik/public-repo/commits{/sha}"
+                    , whRepoGitCommitsUrl = URL "https://api.github.com/repos/skalnik/public-repo/git/commits{/sha}"
+                    , whRepoCommentsUrl = URL "https://api.github.com/repos/skalnik/public-repo/comments{/number}"
+                    , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/skalnik/public-repo/issues/comments{/number}"
+                    , whRepoContentsUrl = URL "https://api.github.com/repos/skalnik/public-repo/contents/{+path}"
+                    , whRepoCompareUrl = URL "https://api.github.com/repos/skalnik/public-repo/compare/{base}...{head}"
+                    , whRepoMergesUrl = URL "https://api.github.com/repos/skalnik/public-repo/merges"
+                    , whRepoArchiveUrl = URL "https://api.github.com/repos/skalnik/public-repo/{archive_format}{/ref}"
+                    , whRepoDownloadsUrl = URL "https://api.github.com/repos/skalnik/public-repo/downloads"
+                    , whRepoIssuesUrl = URL "https://api.github.com/repos/skalnik/public-repo/issues{/number}"
+                    , whRepoPullsUrl = URL "https://api.github.com/repos/skalnik/public-repo/pulls{/number}"
+                    , whRepoMilestonesUrl = URL "https://api.github.com/repos/skalnik/public-repo/milestones{/number}"
+                    , whRepoNotificationsUrl = URL "https://api.github.com/repos/skalnik/public-repo/notifications{?since,all,participating}"
+                    , whRepoLabelsUrl = URL "https://api.github.com/repos/skalnik/public-repo/labels{/name}"
+                    , whRepoReleasesUrl = URL "https://api.github.com/repos/skalnik/public-repo/releases{/id}"
+                    , whRepoCreatedAt = read "2016-10-03 23:23:31"
+                    , whRepoUpdatedAt = read "2016-08-15 17:19:01"
+                    , whRepoPushedAt = read "2016-10-03 23:36:52"
+                    , whRepoGitUrl = URL "git://github.com/skalnik/public-repo.git"
+                    , whRepoSshUrl = URL "git@github.com:skalnik/public-repo.git"
+                    , whRepoCloneUrl = URL "https://github.com/skalnik/public-repo.git"
+                    , whRepoSvnUrl = URL "https://github.com/skalnik/public-repo"
+                    , whRepoHomepage = Nothing
+                    , whRepoSize = 233
+                    , whRepoStargazersCount = 0
+                    , whRepoWatchersCount = 0
+                    , whRepoLanguage = Nothing
+                    , whRepoHasIssues = False
+                    , whRepoHasDownloads = True
+                    , whRepoHasWiki = True
+                    , whRepoHasPages = False
+                    , whRepoForkCount = 0
+                    , whRepoMirrorUrl = Nothing
+                    , whRepoOpenIssuesCount = 0
+                    , whRepoDefaultBranchName = "master"
+                    }
+              , whPullReqTargetLabel = "skalnik:patch-2"
+              , whPullReqTargetRef = "patch-2"
+              }
+        , whPullReqCommentCount = Nothing
+        , whPullReqRevCommentCount = Nothing
+        , whPullReqCommitCount = Nothing
+        , whPullReqAdditionsCount = Nothing
+        , whPullReqDeletionsCount = Nothing
+        , whPullReqFileChangeCount = Nothing
+        }
+  , evPullReqReviewRepo =
+      HookRepository
+        { whRepoId = 35129377
+        , whRepoName = "public-repo"
+        , whRepoFullName = "baxterthehacker/public-repo"
+        , whRepoOwner =
+            Right
+              HookUser
+                { whUserLogin = "baxterthehacker"
+                , whUserId = 6752317
+                , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+                , whUserGravatarId = URL ""
+                , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+                , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+                , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+                , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+                , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+                , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+                , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+                , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+                , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+                , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+                , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+                , whUserType = OwnerUser
+                , whUserIsAdminOfSite = False
+                }
+        , whRepoIsPrivate = False
+        , whRepoHtmlUrl = URL "https://github.com/baxterthehacker/public-repo"
+        , whRepoDescription = ""
+        , whRepoIsAFork = False
+        , whRepoUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo"
+        , whRepoForksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/forks"
+        , whRepoKeysUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}"
+        , whRepoCollaboratorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}"
+        , whRepoTeamsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/teams"
+        , whRepoHooksUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/hooks"
+        , whRepoIssueEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}"
+        , whRepoEventsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/events"
+        , whRepoAssigneesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}"
+        , whRepoBranchesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}"
+        , whRepoTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/tags"
+        , whRepoBlobsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}"
+        , whRepoGitTagsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}"
+        , whRepoGitRefsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}"
+        , whRepoTreesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}"
+        , whRepoStatusesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}"
+        , whRepoLanguagesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/languages"
+        , whRepoStargazersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/stargazers"
+        , whRepoContributorsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contributors"
+        , whRepoSubscribersUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscribers"
+        , whRepoSubscriptionUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/subscription"
+        , whRepoCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}"
+        , whRepoGitCommitsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}"
+        , whRepoCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}"
+        , whRepoIssueCommentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments{/number}"
+        , whRepoContentsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}"
+        , whRepoCompareUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}"
+        , whRepoMergesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/merges"
+        , whRepoArchiveUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}"
+        , whRepoDownloadsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/downloads"
+        , whRepoIssuesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}"
+        , whRepoPullsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}"
+        , whRepoMilestonesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}"
+        , whRepoNotificationsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}"
+        , whRepoLabelsUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}"
+        , whRepoReleasesUrl = URL "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}"
+        , whRepoCreatedAt = read "2015-05-05 23:40:12"
+        , whRepoUpdatedAt = read "2016-08-15 17:19:01"
+        , whRepoPushedAt = read "2016-10-03 23:37:43"
+        , whRepoGitUrl = URL "git://github.com/baxterthehacker/public-repo.git"
+        , whRepoSshUrl = URL "git@github.com:baxterthehacker/public-repo.git"
+        , whRepoCloneUrl = URL "https://github.com/baxterthehacker/public-repo.git"
+        , whRepoSvnUrl = URL "https://github.com/baxterthehacker/public-repo"
+        , whRepoHomepage = Nothing
+        , whRepoSize = 233
+        , whRepoStargazersCount = 2
+        , whRepoWatchersCount = 2
+        , whRepoLanguage = Nothing
+        , whRepoHasIssues = True
+        , whRepoHasDownloads = True
+        , whRepoHasWiki = True
+        , whRepoHasPages = True
+        , whRepoForkCount = 2
+        , whRepoMirrorUrl = Nothing
+        , whRepoOpenIssuesCount = 5
+        , whRepoDefaultBranchName = "master"
+        }
+  , evPullReqReviewSender =
+      HookUser
+        { whUserLogin = "baxterthehacker"
+        , whUserId = 6752317
+        , whUserAvatarUrl = URL "https://avatars.githubusercontent.com/u/6752317?v=3"
+        , whUserGravatarId = URL ""
+        , whUserUrl = URL "https://api.github.com/users/baxterthehacker"
+        , whUserHtmlUrl = URL "https://github.com/baxterthehacker"
+        , whUserFollowersUrl = URL "https://api.github.com/users/baxterthehacker/followers"
+        , whUserFollowingUrl = URL "https://api.github.com/users/baxterthehacker/following{/other_user}"
+        , whUserGistsUrl = URL "https://api.github.com/users/baxterthehacker/gists{/gist_id}"
+        , whUserStarredUrl = URL "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}"
+        , whUserSubscriptionsUrl = URL "https://api.github.com/users/baxterthehacker/subscriptions"
+        , whUserOrganizationsUrl = URL "https://api.github.com/users/baxterthehacker/orgs"
+        , whUserReposUrl = URL "https://api.github.com/users/baxterthehacker/repos"
+        , whUserEventsUrl = URL "https://api.github.com/users/baxterthehacker/events{/privacy}"
+        , whUserReceivedEventsUrl = URL "https://api.github.com/users/baxterthehacker/received_events"
+        , whUserType = OwnerUser
+        , whUserIsAdminOfSite = False
+        }
+  }
 
 pushEventFixture :: PushEvent
 pushEventFixture = PushEvent
diff --git a/src/GitHub/Data/Webhooks/Events.hs b/src/GitHub/Data/Webhooks/Events.hs
--- a/src/GitHub/Data/Webhooks/Events.hs
+++ b/src/GitHub/Data/Webhooks/Events.hs
@@ -1,6 +1,12 @@
 {-# LANGUAGE Trustworthy #-}
+{-|
+Module      : Github.Data.Webhooks.Events
+Copyright   : (c) OnRock Engineering, 2018
+License     : MIT
+Maintainer  : Kyle Van Berendonck <foss@onrock.engineering>
 
---
+This module contains types that represent GitHub webhook's events.
+-}
 module GitHub.Data.Webhooks.Events
     ( EventHasSender(..)
     , EventHasRepo(..)
@@ -107,16 +113,18 @@
 
 import           GitHub.Data.Webhooks.Payload
 
-
+-- | Represents an event that contains its sender information.
 class EventHasSender eventKind where
     -- | Provides the sender context of a Webhook event.
     senderOfEvent :: eventKind -> HookUser
 
+-- | Represents an event that contains its repository information.
 class EventHasRepo eventKind where
     -- | Provides the repository context of a Webhook event.
     repoForEvent :: eventKind -> HookRepository
 
-
+-- | Represents the "action" field in the
+-- 'CommitCommentEvent' payload.
 data CommitCommentEventAction
     -- | Decodes from "created"
     = CommitCommentActionCreated
@@ -855,7 +863,7 @@
     , evPullReqPayload          :: !HookPullRequest
     , evPullReqRepo             :: !HookRepository
     , evPullReqSender           :: !HookUser
-    , evPullReqInstallationId   :: !Int
+    , evPullReqInstallationId   :: !(Maybe Int)
     }
     deriving (Eq, Show, Typeable, Data, Generic)
 
@@ -1352,7 +1360,7 @@
         <*> o .: "pull_request"
         <*> o .: "repository"
         <*> o .: "sender"
-        <*> (o .: "installation" >>= \i -> i .: "id")
+        <*> (o .:? "installation" >>= maybe (pure Nothing) (.:? "id"))
 
 instance FromJSON PullRequestReviewEvent where
     parseJSON = withObject "PullRequestReviewEvent" $ \o -> PullRequestReviewEvent
diff --git a/src/GitHub/Data/Webhooks/Payload.hs b/src/GitHub/Data/Webhooks/Payload.hs
--- a/src/GitHub/Data/Webhooks/Payload.hs
+++ b/src/GitHub/Data/Webhooks/Payload.hs
@@ -1,6 +1,12 @@
 {-# LANGUAGE Trustworthy #-}
+{-|
+Module      : Github.Data.Webhooks.Payload
+Copyright   : (c) OnRock Engineering, 2018
+License     : MIT
+Maintainer  : Kyle Van Berendonck <foss@onrock.engineering>
 
---
+This module contains types that represent GitHub webhook's payload contents.
+-}
 module GitHub.Data.Webhooks.Payload
     ( -- * Construction Types
       URL(..)
@@ -26,6 +32,7 @@
     , HookCommit(..)
     , HookRelease(..)
     , HookPullRequest(..)
+    , PullRequestTarget(..)
     , HookPullRequestReview(..)
     , HookInstallation(..)
     , HookDeployment(..)
@@ -52,6 +59,7 @@
 
 -- Types lifted from the @github@ package.
 
+-- | Represents the owner of the repository.
 data OwnerType = OwnerUser | OwnerOrganization
     deriving (Eq, Ord, Enum, Bounded, Show, Read, Generic, Typeable, Data)
 
@@ -65,6 +73,8 @@
           _               -> fail $ "Unknown owner type: " ++ T.unpack t
 
 
+-- | Represents an internet address that would be suitable to query
+-- for more information. The GitHub API only returns valid 'URL's.
 newtype URL = URL Text
     deriving (Eq, Ord, Show, Generic, Typeable, Data)
 
@@ -73,6 +83,7 @@
 instance FromJSON URL where
   parseJSON = withText "URL" (pure . URL)
 
+-- | Demote GitHub URL to Text.
 getUrl :: URL -> Text
 getUrl (URL url) = url
 
@@ -81,6 +92,8 @@
 
 type IssueState = Text
 
+-- | Represents the "issue" field in the 'IssueCommentEvent'
+-- and 'IssueEvent' payload.
 data HookIssue = HookIssue
     { whIssueUrl                :: !URL
     , whIssueLabelsUrl          :: !URL
@@ -106,7 +119,7 @@
 
 instance NFData HookIssue where rnf = genericRnf
 
-
+-- | Represents the "repository" field in all types of payload.
 data HookRepository = HookRepository
     { whRepoId                  :: !Int
     , whRepoName                :: !Text
@@ -177,7 +190,8 @@
 
 instance NFData HookRepository where rnf = genericRnf
 
-
+-- | Represents the "repositories_added" and "repositories_removed"
+-- field in the 'InstallationRepositoriesEvent' payload.
 data HookRepositorySimple = HookRepositorySimple
   { whSimplRepoId               :: !Int
   , whSimplRepoName             :: !Text
@@ -187,8 +201,7 @@
 
 instance NFData HookRepositorySimple where rnf = genericRnf
 
-
-
+-- | Represents the "label" field in the 'LabelEvent' payload.
 data HookRepositoryLabel = HookRepositoryLabel
     { whRepoLabelUrl            :: !URL
     , whRepoLabelName           :: !Text
@@ -198,7 +211,7 @@
 
 instance NFData HookRepositoryLabel where rnf = genericRnf
 
-
+-- | Represents the "user" field in all types of payload.
 data HookUser = HookUser
     { whUserLogin               :: !Text
     , whUserId                  :: !Int
@@ -222,7 +235,7 @@
 
 instance NFData HookUser where rnf = genericRnf
 
-
+-- FIXME: Not sure where this is.
 data HookSimpleUser = HookSimpleUser
     { whSimplUserName           :: !Text
     , whSimplUserEmail          :: !Text
@@ -232,7 +245,7 @@
 
 instance NFData HookSimpleUser where rnf = genericRnf
 
-
+-- | Represents the "organization" field in all types of payload.
 data HookOrganization = HookOrganization
     { whOrgLogin                :: !Text
     , whOrgId                   :: !Int
@@ -250,7 +263,7 @@
 
 instance NFData HookOrganization where rnf = genericRnf
 
-
+-- | Represents the "invitation" field in the 'OrganizationEvent' payload.
 data HookOrganizationInvitation = HookOrganizationInvitation
     { whOrgInvitationId         :: !Int
     , whOrgInvitationLogin      :: !Text
@@ -261,7 +274,7 @@
 
 instance NFData HookOrganizationInvitation where rnf = genericRnf
 
-
+-- | Represents the "membership" field in the 'OrganizationEvent' payload.
 data HookOrganizationMembership = HookOrganizationMembership
     { whOrgMembershipUrl        :: !URL
     , whOrgMembershipState      :: !Text
@@ -273,7 +286,8 @@
 
 instance NFData HookOrganizationMembership where rnf = genericRnf
 
-
+-- | Represents the "team" field in the 'TeamEvent' and
+-- 'TeamAddEvent' payload.
 data HookTeam = HookTeam
     { whTeamName                :: !Text
     , whTeamId                  :: !Int
@@ -290,6 +304,7 @@
 
 type MilestoneState = Text
 
+-- | Represents the "milestone" field in the 'MilestoneEvent' payload.
 data HookMilestone = HookMilestone
     { whMilestoneUrl            :: !URL
     , whMilestoneHtmlUrl        :: !URL
@@ -315,6 +330,7 @@
 type MembershipState = Text
 type MembershipRole = Text
 
+-- FIXME: Not sure where this is.
 data HookMembership = HookMembership
     { whMembershipUrl           :: !URL
     , whMembershipState         :: !MembershipState
@@ -329,6 +345,7 @@
 
 type ProjectState = Text
 
+-- | Represents the "project" field in the 'ProjectEvent' payload.
 data HookProject = HookProject
     { whProjectOwnerUrl         :: !URL
     , whProjectUrl              :: !URL
@@ -346,7 +363,7 @@
 
 instance NFData HookProject where rnf = genericRnf
 
-
+-- | Represents the "project_card" field in the 'ProjectCardEvent' payload.
 data HookProjectCard = HookProjectCard
     { whProjectCardUrl          :: !URL
     , whProjectCardColumnUrl    :: !URL
@@ -362,7 +379,7 @@
 
 instance NFData HookProjectCard where rnf = genericRnf
 
-
+-- | Represents the "project_column" field in the 'ProjectColumnEvent' payload.
 data HookProjectColumn = HookProjectColumn
     { whProjectColumnUrl        :: !URL
     , whProjectColumnProjUrl    :: !URL
@@ -376,7 +393,8 @@
 
 instance NFData HookProjectColumn where rnf = genericRnf
 
-
+-- | Represents the "issue.labels" field in the
+-- 'IssueCommentEvent' and 'IssueEvent' payloads.
 data HookIssueLabels = HookIssueLabels
     { whIssueLabelId            :: !(Maybe Int)   -- ^ Not always sent.
     , whIssueLabelUrl           :: !URL
@@ -427,9 +445,6 @@
 
 instance NFData HookRelease where rnf = genericRnf
 
-
--- FIXME: Property "head" missing (not sure)
--- FIXME: Property "base" missing (not sure)
 data HookPullRequest = HookPullRequest
     { whPullReqUrl              :: !URL
     , whPullReqId               :: !Int
@@ -455,6 +470,8 @@
     , whPullReqRevCommentUrl    :: !URL
     , whPullReqCommentsUrl      :: !URL
     , whPullReqStatusesUrl      :: !URL
+    , whPullReqBase             :: !PullRequestTarget
+    , whPullReqHead             :: !PullRequestTarget
     -- , whPullReqIsMerged         :: !Bool
     -- , whPullReqIsMergeable      :: !Bool
     -- , whPullReqMergeableState   :: !Text
@@ -470,7 +487,18 @@
 
 instance NFData HookPullRequest where rnf = genericRnf
 
+data PullRequestTarget = PullRequestTarget
+    { whPullReqTargetSha :: !Text
+    , whPullReqTargetUser :: !HookUser
+    , whPullReqTargetRepo :: !HookRepository
+    , whPullReqTargetLabel :: !Text -- ex "user:branch"
+    , whPullReqTargetRef :: !Text -- ex "somebranch"
+    }
+    deriving (Eq, Show, Typeable, Data, Generic)
 
+instance NFData PullRequestTarget where rnf = genericRnf
+
+-- | Represents the "pull_request" field in the 'PullRequestReviewEvent' payload.
 data HookPullRequestReview = HookPullRequestReview
     { whPullReqReviewId         :: !Int
     , whPullReqReviewUser       :: !HookUser
@@ -484,7 +512,7 @@
 
 instance NFData HookPullRequestReview where rnf = genericRnf
 
-
+-- | Represents the "installation" field in the 'InstallationEvent' payload.
 data HookInstallation = HookInstallation
     { whInstallationId          :: !Int
     , whInstallationAccount     :: !HookUser
@@ -496,7 +524,8 @@
 
 instance NFData HookInstallation where rnf = genericRnf
 
-
+-- | Represents the "deployment" field in the
+-- 'DeploymentEvent' and 'DeploymentStatusEvent' payload.
 data HookDeployment = HookDeployment
     { whDeploymentUrl           :: !URL
     , whDeploymentId            :: !Int
@@ -516,7 +545,8 @@
 
 instance NFData HookDeployment where rnf = genericRnf
 
-
+-- | Represents the "deployment_status" field in the
+-- 'DeploymentStatusEvent' payload.
 data HookDeploymentStatus = HookDeploymentStatus
     { whDeploymentStatusUrl     :: !URL
     , whDeploymentStatusId      :: !Int
@@ -533,7 +563,7 @@
 
 instance NFData HookDeploymentStatus where rnf = genericRnf
 
-
+-- | Represents the "pages" field in the 'GollumEvent' payload.
 data HookWikiPage = HookWikiPage
     { whWikiPageName            :: !Text
     , whWikiPageTitle           :: !Text
@@ -546,7 +576,7 @@
 
 instance NFData HookWikiPage where rnf = genericRnf
 
-
+-- | Represents the "build" field in the 'PageBuildEvent' payload.
 data HookPageBuildResult = HookPageBuildResult
     { whPageBuildUrl            :: !URL
     , whPageBuildStatus         :: !Text
@@ -561,7 +591,7 @@
 
 instance NFData HookPageBuildResult where rnf = genericRnf
 
-
+-- | Represents the "issue" field in 'IssueComentEvent' payload.
 data HookIssueComment = HookIssueComment
     { whIssueCommentUrl         :: !URL
     , whIssueCommentHtmlUrl     :: !URL
@@ -576,7 +606,7 @@
 
 instance NFData HookIssueComment where rnf = genericRnf
 
-
+-- | Represents the "comment" field in the 'CommitCommentEvent' payload.
 data HookCommitComment = HookCommitComment
     { whCommitCommentUrl        :: !URL
     , whCommitCommentHtmlUrl    :: !URL
@@ -594,7 +624,8 @@
 
 instance NFData HookCommitComment where rnf = genericRnf
 
-
+-- | Represents the "pull_request" field in the
+-- 'PullRequestReviewCommentEvent' payload.
 data HookPullRequestReviewComment = HookPullRequestReviewComment
     { whPullReqRevComUrl        :: !URL
     , whPullReqRevComId         :: !Int
@@ -909,6 +940,8 @@
       <*> o .: "review_comment_url"
       <*> o .: "comments_url"
       <*> o .: "statuses_url"
+      <*> o .: "base"
+      <*> o .: "head"
       -- <*> o .: "merged"
       -- <*> o .: "mergeable"
       -- <*> o .: "mergeable_state"
@@ -919,6 +952,14 @@
       <*> o .:? "additions"
       <*> o .:? "deletions"
       <*> o .:? "changed_files"
+
+instance FromJSON PullRequestTarget where
+    parseJSON = withObject "PullRequestTarget" $ \o -> PullRequestTarget
+      <$> o .: "sha"
+      <*> o .: "user"
+      <*> o .: "repo"
+      <*> o .: "label"
+      <*> o .: "ref"
 
 instance FromJSON HookPullRequestReview where
   parseJSON = withObject "HookPullRequestReview" $ \o -> HookPullRequestReview
