diff --git a/2023/ruby/day_09.rb b/2023/ruby/day_09.rb
index 3461a7b..b07873e 100644
--- a/2023/ruby/day_09.rb
+++ b/2023/ruby/day_09.rb
@@ -1,26 +1,17 @@
histories = ARGF.readlines.map { _1.scan(/-?\d+/).map(&:to_i) }
-# part one
-p histories
- .map {|history|
- diffs = [history]
- until diffs.last.all?(&:zero?)
- diffs << diffs.last.each_cons(2).map { _2 - _1 }
- end
+history_diffs = histories.map {|history|
+ diffs = [history]
+ until diffs.last.all?(&:zero?)
+ diffs << diffs.last.each_cons(2).map { _2 - _1 }
+ end
+ diffs
+}
- diffs.sum(&:last)
- }
- .sum
+# part one
+p history_diffs.sum { _1.sum(&:last) }
# part two
-p histories
- .map {|history|
- diffs = [history]
- until diffs.last.all?(&:zero?)
- diffs << diffs.last.each_cons(2).map { _2 - _1 }
- end
-
- diffs.map(&:first).reverse.inject { _2 - _1 }
- }
- .sum
-
+p history_diffs.sum {|diffs|
+ diffs.map(&:first).reverse.inject { _2 - _1 }
+}