{"action":"created","comment":{"url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/comments/201481308","pull_request_review_id":135993358,"id":201481308,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwMTQ4MTMwOA==","diff_hunk":"@@ -0,0 +1,549 @@\n+#!/usr/bin/env ruby\n+# -*- ruby -*-\n+\n+\n+begin\n+  require 'win32console'\n+rescue LoadError\n+end\n+\n+# --------------------------------------------------------------------\n+# Support code for the Ruby Koans.\n+# --------------------------------------------------------------------\n+\n+\n+\n+# :reek:FeatureEnvy\n+# :reek:InstanceVariableAssumption\n+\n+class FillMeInError < StandardError\n+end\n+# :reek:ControlParameter\n+# :reek:UtilityFunction\n+def ruby_version?(version)\n+  RUBY_VERSION =~ /^#{version}/ ||\n+    (version == 'jruby' && defined?(JRUBY_VERSION)) ||\n+    (version == 'mri' && !defined?(JRUBY_VERSION))\n+end\n+# :reek:UncommunicativeVariableName\n+def in_ruby_version(*versions)\n+  yield if versions.any? { |v| ruby_version?(v) }\n+end\n+\n+in_ruby_version('1.8') do\n+  class KeyError < StandardError\n+  end\n+end\n+\n+# Standard, generic replacement value.\n+# If value19 is given, it is used in place of value for Ruby 1.9.\n+# :reek:UncommunicativeParameterName\n+# :reek:UtilityFunction\n+def __(value = 'FILL ME IN', value19 = :mu)\n+  if RUBY_VERSION < '1.9'\n+    value\n+  else\n+    value19 == :mu ? value : value19\n+  end\n+end\n+# :reek:UncommunicativeParameterName\n+# Numeric replacement value.\n+# :reek:UtilityFunction\n+def _n_(value = 999_999, value19 = :mu)\n+  if RUBY_VERSION < '1.9'\n+    value\n+  else\n+    value19 == :mu ? value : value19\n+  end\n+end\n+# :reek:UncommunicativeParameterName\n+# Error object replacement value.\n+# :reek:UtilityFunction\n+def ___(value = FillMeInError, value19 = :mu)\n+  if RUBY_VERSION < '1.9'\n+    value\n+  else\n+    value19 == :mu ? value : value19\n+  end\n+end\n+\n+# Method name replacement.\n+class Object\n+  def ____(method = nil)\n+    send(method) if method\n+  end\n+\n+  in_ruby_version('1.9', '2') do\n+    public :method_missing\n+  end\n+end\n+\n+class String\n+  def side_padding(width)\n+    extra = width - size\n+    if width < 0\n+      self\n+    else\n+      left_padding = extra / 2\n+      right_padding = (extra + 1) / 2\n+      (' ' * left_padding) + self + (' ' * right_padding)\n+    end\n+  end\n+end\n+\n+module Neo\n+  class << self\n+    def simple_output\n+      ENV['SIMPLE_KOAN_OUTPUT'] == 'true'\n+    end\n+  end\n+\n+  module Color\n+    # shamelessly stolen (and modified) from redgreen\n+    COLORS = {\n+      clear: 0,  black: 30, red: 31,\n+      green: 32, yellow: 33, blue: 34,\n+      magenta: 35, cyan: 36\n+    }.freeze\n+\n+    module_function\n+\n+    COLORS.each do |color, value|\n+      module_eval \"def #{color}(string); colorize(string, #{value}); end\"\n+      module_function color\n+    end\n+\n+    def colorize(string, color_value)\n+      if use_colors?\n+        color(color_value) + string + color(COLORS[:clear])\n+      else\n+        string\n+      end\n+    end\n+\n+    def color(color_value)\n+      \"\\e[#{color_value}m\"\n+    end\n+#:reek:NilCheck\n+    def use_colors?\n+      return false if ENV['NO_COLOR']\n+      if ENV['ANSI_COLOR'].nil?\n+        if using_windows?\n+          using_win32console\n+        else\n+          return true\n+        end\n+      else\n+        ENV['ANSI_COLOR'] =~ /^(t|y)/i\n+      end\n+    end\n+\n+    def using_windows?\n+      File::ALT_SEPARATOR\n+    end\n+\n+    def using_win32console\n+      defined? Win32::Console\n+    end\n+  end\n+  # :reek:ControlParameter\n+  # :reek:DataClump\n+  # :reek:FeatureEnvy\n+  module Assertions\n+    FailedAssertionError = Class.new(StandardError)\n+\n+    def flunk(msg)\n+      raise FailedAssertionError, msg\n+    end\n+\n+    def assert(condition, msg = nil)\n+      msg ||= 'Failed assertion.'\n+      flunk(msg) unless condition\n+      true\n+    end\n+\n+    def assert_equal(expected, actual, msg = nil)\n+      msg ||= \"Expected #{expected.inspect} to equal #{actual.inspect}\"\n+      assert(expected == actual, msg)\n+    end\n+\n+    def assert_not_equal(expected, actual, msg = nil)\n+      msg ||= \"Expected #{expected.inspect} to not equal #{actual.inspect}\"\n+      assert(expected != actual, msg)\n+    end\n+    #:reek:NilCheck\n+    def assert_nil(actual, msg = nil)\n+      msg ||= \"Expected #{actual.inspect} to be nil\"\n+      assert(actual.nil?, msg)\n+    end\n+    #:reek:NilCheck\n+    def assert_not_nil(actual, msg = nil)\n+      msg ||= \"Expected #{actual.inspect} to not be nil\"\n+      assert(!actual.nil?, msg)\n+    end\n+\n+    def assert_match(pattern, actual, msg = nil)\n+      msg ||= \"Expected #{actual.inspect} to match #{pattern.inspect}\"\n+      assert pattern =~ actual, msg\n+    end\n+    #:reek:TooManyStatements\n+    def assert_raise(exception)\n+      begin\n+        yield\n+      rescue Exception => ex\n+        expected = ex.is_a?(exception)\n+        assert(expected, \"Exception #{exception.inspect} expected, but #{ex.inspect} was raised\")\n+        return ex\n+      end\n+      flunk \"Exception #{exception.inspect} expected, but nothing raised\"\n+    end\n+\n+    def assert_nothing_raised\n+      yield\n+    rescue Exception => ex\n+      flunk \"Expected nothing to be raised, but exception #{exception.inspect} was raised\"\n+    end\n+  end\n+  #:reek:InstanceVariableAssumption\n+  #:reek:TooManyInstanceVariables\n+  #:reek:TooManyMethods\n+  # :reek:TooManyStatements\n+  # :reek:UncommunicativeVariableName\n+  class Sensei\n+    attr_reader :failure, :failed_test, :pass_count\n+\n+    FailedAssertionError = Assertions::FailedAssertionError\n+\n+    def initialize\n+      @pass_count = 0\n+      @failure = nil\n+      @failed_test = nil\n+      @observations = []\n+    end\n+\n+    PROGRESS_FILE_NAME = '.path_progress'.freeze\n+\n+    def add_progress(prog)\n+      @_contents = nil\n+      exists = File.exist?(PROGRESS_FILE_NAME)\n+      File.open(PROGRESS_FILE_NAME, 'a+') do |f|\n+        f.print \"#{',' if exists}#{prog}\"\n+      end\n+    end\n+    #:reek:NilCheck\n+    def progress\n+      if @_contents.nil?\n+        if File.exist?(PROGRESS_FILE_NAME)\n+          File.open(PROGRESS_FILE_NAME, 'r') do |f|\n+            @_contents = f.read.to_s.gsub(/\\s/, '').split(',')\n+          end\n+        else\n+          @_contents = []\n+        end\n+      end\n+      @_contents\n+    end\n+\n+    def observe(step)\n+      if step.passed?\n+        @pass_count += 1\n+        if @pass_count > progress.last.to_i\n+          @observations << Color.green(\"#{step.koan_file}##{step.name} has expanded your awareness.\")\n+        end\n+      else\n+        @failed_test = step\n+        @failure = step.failure\n+        add_progress(@pass_count)\n+        @observations << Color.red(\"#{step.koan_file}##{step.name} has damaged your karma.\")\n+        throw :neo_exit\n+      end\n+    end\n+    #:reek:NilCheck\n+    def failed?\n+      !@failure.nil?\n+    end\n+\n+    def assert_failed?\n+      failure.is_a?(FailedAssertionError)\n+    end\n+\n+    def instruct\n+      if failed?\n+        @observations.each { |c| puts c }\n+        encourage\n+        guide_through_error\n+        a_zenlike_statement\n+        show_progress\n+      else\n+        end_screen\n+      end\n+    end\n+\n+    def show_progress\n+      bar_width = 50\n+      total_tests = Neo::Koan.total_tests\n+      scale = bar_width.to_f / total_tests\n+      print Color.green('your path thus far [')\n+      happy_steps = (pass_count * scale).to_i\n+      happy_steps = 1 if happy_steps == 0 && pass_count > 0\n+      print Color.green('.' * happy_steps)\n+      if failed?\n+        print Color.red('X')\n+        print Color.cyan('_' * (bar_width - 1 - happy_steps))\n+      end\n+      print Color.green(']')\n+      print \" #{pass_count}/#{total_tests}\"\n+      puts\n+    end\n+\n+    def end_screen\n+      if Neo.simple_output\n+        boring_end_screen\n+      else\n+        artistic_end_screen\n+      end\n+    end\n+\n+    def boring_end_screen\n+      puts 'Mountains are again merely mountains'\n+    end\n+\n+    def artistic_end_screen\n+      'JRuby 1.9.x Koans'\n+      ruby_version = \"(in #{'J' if defined?(JRUBY_VERSION)}Ruby #{defined?(JRUBY_VERSION) ? JRUBY_VERSION : RUBY_VERSION})\"\n+      ruby_version = ruby_version.side_padding(54)\n+      completed = <<-ENDTEXT\n+                                  ,,   ,  ,,\n+                                :      ::::,    :::,\n+                   ,        ,,: :::::::::::::,,  ::::   :  ,\n+                 ,       ,,,   ,:::::::::::::::::::,  ,:  ,: ,,\n+            :,        ::,  , , :, ,::::::::::::::::::, :::  ,::::\n+           :   :    ::,                          ,:::::::: ::, ,::::\n+          ,     ,:::::                                  :,:::::::,::::,\n+      ,:     , ,:,,:                                       :::::::::::::\n+     ::,:   ,,:::,                                           ,::::::::::::,\n+    ,:::, :,,:::                                               ::::::::::::,\n+   ,::: :::::::,       Mountains are again merely mountains     ,::::::::::::\n+   :::,,,::::::                                                   ::::::::::::\n+ ,:::::::::::,                                                    ::::::::::::,\n+ :::::::::::,                                                     ,::::::::::::\n+:::::::::::::                                                     ,::::::::::::\n+::::::::::::                      Ruby Koans                       ::::::::::::\n+::::::::::::#{ruby_version},::::::::::::\n+:::::::::::,                                                      , :::::::::::\n+,:::::::::::::,                brought to you by                 ,,::::::::::::\n+::::::::::::::                                                    ,::::::::::::\n+ ::::::::::::::,                                                 ,:::::::::::::\n+ ::::::::::::,               Neo Software Artisans              , ::::::::::::\n+  :,::::::::: ::::                                               :::::::::::::\n+   ,:::::::::::  ,:                                          ,,:::::::::::::,\n+     ::::::::::::                                           ,::::::::::::::,\n+      :::::::::::::::::,                                  ::::::::::::::::\n+       :::::::::::::::::::,                             ::::::::::::::::\n+        ::::::::::::::::::::::,                     ,::::,:, , ::::,:::\n+          :::::::::::::::::::::::,               ::,: ::,::, ,,: ::::\n+              ,::::::::::::::::::::              ::,,  , ,,  ,::::\n+                 ,::::::::::::::::              ::,, ,   ,:::,\n+                      ,::::                         , ,,\n+                                                  ,,,\n+      ENDTEXT\n+      puts completed\n+    end\n+\n+    def encourage\n+      puts\n+      puts 'The Master says:'\n+      puts Color.cyan('  You have not yet reached enlightenment.')\n+      if (recents = progress.last(5)) && recents.size == 5 && recents.uniq.size == 1\n+        puts Color.cyan('  I sense frustration. Do not be afraid to ask for help.')\n+      elsif progress.last(2).size == 2 && progress.last(2).uniq.size == 1\n+        puts Color.cyan('  Do not lose hope.')\n+      elsif progress.last.to_i > 0\n+        puts Color.cyan(\"  You are progressing. Excellent. #{progress.last} completed.\")\n+      end\n+    end\n+\n+    def guide_through_error\n+      puts\n+      puts 'The answers you seek...'\n+      puts Color.red(indent(failure.message).join)\n+      puts\n+      puts 'Please meditate on the following code:'\n+      puts embolden_first_line_only(indent(find_interesting_lines(failure.backtrace)))\n+      puts\n+    end\n+    # :reek:UtilityFunction\n+    def embolden_first_line_only(text)\n+      first_line = true\n+      text.collect do |t|\n+        if first_line\n+          first_line = false\n+          Color.red(t)\n+        else\n+          Color.cyan(t)\n+        end\n+      end\n+    end\n+    # :reek:UtilityFunction\n+    def indent(text)\n+      text = text.split(/\\n/) if text.is_a?(String)\n+      text.collect { |t| \"  #{t}\" }\n+    end\n+    #:reek:TooManyStatements\n+    #:reek:UtilityFunction\n+    def find_interesting_lines(backtrace)\n+      backtrace.reject do |line|\n+        line =~ /neo\\.rb/\n+      end\n+    end\n+\n+    # Hat's tip to Ara T. Howard for the zen statements from his\n+    # metakoans Ruby Quiz (http://rubyquiz.com/quiz67.html)\n+    def a_zenlike_statement\n+      zen_statement = if !failed?\n+                        'Mountains are again merely mountains'\n+                      else\n+                        case (@pass_count % 10)\n+                        when 0\n+                          'mountains are merely mountains'\n+                        when 1, 2\n+                          'learn the rules so you know how to break them properly'\n+                        when 3, 4\n+                          'remember that silence is sometimes the best answer'\n+                        when 5, 6\n+                          'sleep is the best meditation'\n+                        when 7, 8\n+                          \"when you lose, don't lose the lesson\"\n+                        else\n+                          'things are not what they appear to be: nor are they otherwise'\n+                        end\n+                      end\n+      puts Color.green(zen_statement)\n+    end\n+  end\n+  # :reek:TooManyInstanceVariables\n+  class Koan\n+    include Assertions\n+\n+    attr_reader :name, :failure, :koan_count, :step_count, :koan_file\n+\n+    def initialize(name, koan_file = nil, koan_count = 0, step_count = 0)\n+      @name = name\n+      @failure = nil\n+      @koan_count = koan_count\n+      @step_count = step_count\n+      @koan_file = koan_file\n+    end\n+    #:reek:NilCheck\n+    def passed?\n+      @failure.nil?\n+    end\n+\n+    def failed(failure)\n+      @failure = failure\n+    end\n+\n+    def setup; end\n+    #:reek:TooManyStatements\n+    def teardown; end\n+    # :reek:TooManyStatements\n+    def meditate\n+      setup\n+      begin\n+        send(name)\n+      rescue StandardError, Neo::Sensei::FailedAssertionError => ex\n+        failed(ex)\n+      ensure\n+        begin\n+          teardown\n+        rescue StandardError, Neo::Sensei::FailedAssertionError => ex\n+          failed(ex) if passed?\n+        end\n+      end\n+      self\n+    end\n+\n+    # Class methods for the Neo test suite.\n+    class << self\n+      def inherited(subclass)\n+        subclasses << subclass\n+      end\n+\n+      def method_added(name)\n+        testmethods << name if !tests_disabled? && Koan.test_pattern =~ name.to_s\n+      end\n+\n+      def end_of_enlightenment\n+        @tests_disabled = true\n+      end\n+\n+      def command_line(args)\n+        args.each do |arg|\n+          case arg\n+          when /^-n\\/(.*)\\/$/\n+            @test_pattern = Regexp.new(Regexp.last_match(1))\n+          when /^-n(.*)$/\n+            @test_pattern = Regexp.new(Regexp.quote(Regexp.last_match(1)))\n+          else\n+            if File.exist?(arg)","path":"2264/1/koans/neo.rb","position":488,"original_position":488,"commit_id":"f54291a0b572a3a262ca975f9bbece75dd6bf52d","original_commit_id":"f54291a0b572a3a262ca975f9bbece75dd6bf52d","user":{"login":"houndci-bot","id":6697940,"node_id":"MDQ6VXNlcjY2OTc5NDA=","avatar_url":"https://avatars0.githubusercontent.com/u/6697940?v=4","gravatar_id":"","url":"https://api.github.com/users/houndci-bot","html_url":"https://github.com/houndci-bot","followers_url":"https://api.github.com/users/houndci-bot/followers","following_url":"https://api.github.com/users/houndci-bot/following{/other_user}","gists_url":"https://api.github.com/users/houndci-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/houndci-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/houndci-bot/subscriptions","organizations_url":"https://api.github.com/users/houndci-bot/orgs","repos_url":"https://api.github.com/users/houndci-bot/repos","events_url":"https://api.github.com/users/houndci-bot/events{/privacy}","received_events_url":"https://api.github.com/users/houndci-bot/received_events","type":"User","site_admin":false},"body":"Style/GuardClause: Use a guard clause instead of wrapping the code inside a conditional expression.","created_at":"2018-07-10T20:22:27Z","updated_at":"2018-07-10T20:22:28Z","html_url":"https://github.com/rubizza-survival-camp/summer-2018/pull/128#discussion_r201481308","pull_request_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/comments/201481308"},"html":{"href":"https://github.com/rubizza-survival-camp/summer-2018/pull/128#discussion_r201481308"},"pull_request":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128"}}},"pull_request":{"url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128","id":200299629,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAwMjk5NjI5","html_url":"https://github.com/rubizza-survival-camp/summer-2018/pull/128","diff_url":"https://github.com/rubizza-survival-camp/summer-2018/pull/128.diff","patch_url":"https://github.com/rubizza-survival-camp/summer-2018/pull/128.patch","issue_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/issues/128","number":128,"state":"open","locked":false,"title":"2264 - 1","user":{"login":"mersXX","id":36623557,"node_id":"MDQ6VXNlcjM2NjIzNTU3","avatar_url":"https://avatars1.githubusercontent.com/u/36623557?v=4","gravatar_id":"","url":"https://api.github.com/users/mersXX","html_url":"https://github.com/mersXX","followers_url":"https://api.github.com/users/mersXX/followers","following_url":"https://api.github.com/users/mersXX/following{/other_user}","gists_url":"https://api.github.com/users/mersXX/gists{/gist_id}","starred_url":"https://api.github.com/users/mersXX/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mersXX/subscriptions","organizations_url":"https://api.github.com/users/mersXX/orgs","repos_url":"https://api.github.com/users/mersXX/repos","events_url":"https://api.github.com/users/mersXX/events{/privacy}","received_events_url":"https://api.github.com/users/mersXX/received_events","type":"User","site_admin":false},"body":"## Номер\r\n2264\r\n\r\n## Номер задания\r\n1\r\n\r\n## Ссылка на видео с демо\r\nhttps://youtu.be/zw1c8x9lA-M\r\n\r\n## Комментарии\r\n-\r\n","created_at":"2018-07-10T06:57:02Z","updated_at":"2018-07-10T20:22:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9ebd028c9233ceb2a78541e53e7fcf5c6e563e9a","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128/commits","review_comments_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128/comments","review_comment_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/comments{/number}","comments_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/issues/128/comments","statuses_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/statuses/f54291a0b572a3a262ca975f9bbece75dd6bf52d","head":{"label":"mersXX:1_task","ref":"1_task","sha":"f54291a0b572a3a262ca975f9bbece75dd6bf52d","user":{"login":"mersXX","id":36623557,"node_id":"MDQ6VXNlcjM2NjIzNTU3","avatar_url":"https://avatars1.githubusercontent.com/u/36623557?v=4","gravatar_id":"","url":"https://api.github.com/users/mersXX","html_url":"https://github.com/mersXX","followers_url":"https://api.github.com/users/mersXX/followers","following_url":"https://api.github.com/users/mersXX/following{/other_user}","gists_url":"https://api.github.com/users/mersXX/gists{/gist_id}","starred_url":"https://api.github.com/users/mersXX/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mersXX/subscriptions","organizations_url":"https://api.github.com/users/mersXX/orgs","repos_url":"https://api.github.com/users/mersXX/repos","events_url":"https://api.github.com/users/mersXX/events{/privacy}","received_events_url":"https://api.github.com/users/mersXX/received_events","type":"User","site_admin":false},"repo":{"id":139887092,"node_id":"MDEwOlJlcG9zaXRvcnkxMzk4ODcwOTI=","name":"summer-2018","full_name":"mersXX/summer-2018","owner":{"login":"mersXX","id":36623557,"node_id":"MDQ6VXNlcjM2NjIzNTU3","avatar_url":"https://avatars1.githubusercontent.com/u/36623557?v=4","gravatar_id":"","url":"https://api.github.com/users/mersXX","html_url":"https://github.com/mersXX","followers_url":"https://api.github.com/users/mersXX/followers","following_url":"https://api.github.com/users/mersXX/following{/other_user}","gists_url":"https://api.github.com/users/mersXX/gists{/gist_id}","starred_url":"https://api.github.com/users/mersXX/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mersXX/subscriptions","organizations_url":"https://api.github.com/users/mersXX/orgs","repos_url":"https://api.github.com/users/mersXX/repos","events_url":"https://api.github.com/users/mersXX/events{/privacy}","received_events_url":"https://api.github.com/users/mersXX/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mersXX/summer-2018","description":null,"fork":true,"url":"https://api.github.com/repos/mersXX/summer-2018","forks_url":"https://api.github.com/repos/mersXX/summer-2018/forks","keys_url":"https://api.github.com/repos/mersXX/summer-2018/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mersXX/summer-2018/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mersXX/summer-2018/teams","hooks_url":"https://api.github.com/repos/mersXX/summer-2018/hooks","issue_events_url":"https://api.github.com/repos/mersXX/summer-2018/issues/events{/number}","events_url":"https://api.github.com/repos/mersXX/summer-2018/events","assignees_url":"https://api.github.com/repos/mersXX/summer-2018/assignees{/user}","branches_url":"https://api.github.com/repos/mersXX/summer-2018/branches{/branch}","tags_url":"https://api.github.com/repos/mersXX/summer-2018/tags","blobs_url":"https://api.github.com/repos/mersXX/summer-2018/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mersXX/summer-2018/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mersXX/summer-2018/git/refs{/sha}","trees_url":"https://api.github.com/repos/mersXX/summer-2018/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mersXX/summer-2018/statuses/{sha}","languages_url":"https://api.github.com/repos/mersXX/summer-2018/languages","stargazers_url":"https://api.github.com/repos/mersXX/summer-2018/stargazers","contributors_url":"https://api.github.com/repos/mersXX/summer-2018/contributors","subscribers_url":"https://api.github.com/repos/mersXX/summer-2018/subscribers","subscription_url":"https://api.github.com/repos/mersXX/summer-2018/subscription","commits_url":"https://api.github.com/repos/mersXX/summer-2018/commits{/sha}","git_commits_url":"https://api.github.com/repos/mersXX/summer-2018/git/commits{/sha}","comments_url":"https://api.github.com/repos/mersXX/summer-2018/comments{/number}","issue_comment_url":"https://api.github.com/repos/mersXX/summer-2018/issues/comments{/number}","contents_url":"https://api.github.com/repos/mersXX/summer-2018/contents/{+path}","compare_url":"https://api.github.com/repos/mersXX/summer-2018/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mersXX/summer-2018/merges","archive_url":"https://api.github.com/repos/mersXX/summer-2018/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mersXX/summer-2018/downloads","issues_url":"https://api.github.com/repos/mersXX/summer-2018/issues{/number}","pulls_url":"https://api.github.com/repos/mersXX/summer-2018/pulls{/number}","milestones_url":"https://api.github.com/repos/mersXX/summer-2018/milestones{/number}","notifications_url":"https://api.github.com/repos/mersXX/summer-2018/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mersXX/summer-2018/labels{/name}","releases_url":"https://api.github.com/repos/mersXX/summer-2018/releases{/id}","deployments_url":"https://api.github.com/repos/mersXX/summer-2018/deployments","created_at":"2018-07-05T18:33:10Z","updated_at":"2018-07-09T15:01:28Z","pushed_at":"2018-07-10T20:19:38Z","git_url":"git://github.com/mersXX/summer-2018.git","ssh_url":"git@github.com:mersXX/summer-2018.git","clone_url":"https://github.com/mersXX/summer-2018.git","svn_url":"https://github.com/mersXX/summer-2018","homepage":null,"size":86271,"stargazers_count":0,"watchers_count":0,"language":"Ruby","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":1,"license":null,"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"rubizza-survival-camp:master","ref":"master","sha":"2e34bee9c50814d3b1149a970f83bbc1c85525a8","user":{"login":"rubizza-survival-camp","id":40864986,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwODY0OTg2","avatar_url":"https://avatars1.githubusercontent.com/u/40864986?v=4","gravatar_id":"","url":"https://api.github.com/users/rubizza-survival-camp","html_url":"https://github.com/rubizza-survival-camp","followers_url":"https://api.github.com/users/rubizza-survival-camp/followers","following_url":"https://api.github.com/users/rubizza-survival-camp/following{/other_user}","gists_url":"https://api.github.com/users/rubizza-survival-camp/gists{/gist_id}","starred_url":"https://api.github.com/users/rubizza-survival-camp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rubizza-survival-camp/subscriptions","organizations_url":"https://api.github.com/users/rubizza-survival-camp/orgs","repos_url":"https://api.github.com/users/rubizza-survival-camp/repos","events_url":"https://api.github.com/users/rubizza-survival-camp/events{/privacy}","received_events_url":"https://api.github.com/users/rubizza-survival-camp/received_events","type":"Organization","site_admin":false},"repo":{"id":139868408,"node_id":"MDEwOlJlcG9zaXRvcnkxMzk4Njg0MDg=","name":"summer-2018","full_name":"rubizza-survival-camp/summer-2018","owner":{"login":"rubizza-survival-camp","id":40864986,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwODY0OTg2","avatar_url":"https://avatars1.githubusercontent.com/u/40864986?v=4","gravatar_id":"","url":"https://api.github.com/users/rubizza-survival-camp","html_url":"https://github.com/rubizza-survival-camp","followers_url":"https://api.github.com/users/rubizza-survival-camp/followers","following_url":"https://api.github.com/users/rubizza-survival-camp/following{/other_user}","gists_url":"https://api.github.com/users/rubizza-survival-camp/gists{/gist_id}","starred_url":"https://api.github.com/users/rubizza-survival-camp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rubizza-survival-camp/subscriptions","organizations_url":"https://api.github.com/users/rubizza-survival-camp/orgs","repos_url":"https://api.github.com/users/rubizza-survival-camp/repos","events_url":"https://api.github.com/users/rubizza-survival-camp/events{/privacy}","received_events_url":"https://api.github.com/users/rubizza-survival-camp/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rubizza-survival-camp/summer-2018","description":null,"fork":false,"url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018","forks_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/forks","keys_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/teams","hooks_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/hooks","issue_events_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/issues/events{/number}","events_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/events","assignees_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/assignees{/user}","branches_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/branches{/branch}","tags_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/tags","blobs_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/git/refs{/sha}","trees_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/statuses/{sha}","languages_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/languages","stargazers_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/stargazers","contributors_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/contributors","subscribers_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/subscribers","subscription_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/subscription","commits_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/commits{/sha}","git_commits_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/git/commits{/sha}","comments_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/comments{/number}","issue_comment_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/issues/comments{/number}","contents_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/contents/{+path}","compare_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/merges","archive_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/downloads","issues_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/issues{/number}","pulls_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls{/number}","milestones_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/milestones{/number}","notifications_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/labels{/name}","releases_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/releases{/id}","deployments_url":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/deployments","created_at":"2018-07-05T15:28:12Z","updated_at":"2018-07-10T20:10:25Z","pushed_at":"2018-07-10T20:21:49Z","git_url":"git://github.com/rubizza-survival-camp/summer-2018.git","ssh_url":"git@github.com:rubizza-survival-camp/summer-2018.git","clone_url":"https://github.com/rubizza-survival-camp/summer-2018.git","svn_url":"https://github.com/rubizza-survival-camp/summer-2018","homepage":null,"size":86336,"stargazers_count":0,"watchers_count":0,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":56,"mirror_url":null,"archived":false,"open_issues_count":27,"license":null,"forks":56,"open_issues":27,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128"},"html":{"href":"https://github.com/rubizza-survival-camp/summer-2018/pull/128"},"issue":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/issues/128"},"comments":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/issues/128/comments"},"review_comments":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128/comments"},"review_comment":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/pulls/128/commits"},"statuses":{"href":"https://api.github.com/repos/rubizza-survival-camp/summer-2018/statuses/f54291a0b572a3a262ca975f9bbece75dd6bf52d"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"houndci-bot"}}