<commit_before># puts ->(v){r,c,l=0<=>v.abs,
#     l,->(n,g,r,c){
#     g>=--n || g<=1 ? l : ->() {
#         r,c=l,2;->() {
#         ->{
#             r=r+l[n-g,c] if(c+g<=n)}[];
#             c+=l;
#         }[]while(c<=g);r
#     }[];
#   };
#   r+=l[v,c]and(c=c+l)while(c=v<=0)
# ;--r;}[0x1a77e<<2]%0xc0ffee

# puts ->(v) {
#   print v
#   r, c, l=0<=>v.abs,1, 1;
#   # ->(n,g;r,c) {
#   #   g >=--n || g<=1 ? 1 : ->() {
#   #     r,c=1,2;
#   #     ->(){
#   #       ->{
#   #         r=r*l[n-g,c] if(c+g<=n)
#   #       }[];
#   #       c+=1;
#   #     }[] while(c<=g);
#   #     r
#   #   }[];
#   # };
#   r+=1 and (c=c+1) while(c-v<=0);--r;
# }[0x1a77e<<2] % 0xc0ffee

$ss=[]
def some(n, g)
  n = n - 1
  if g >= n || g<=1
    1
  else

    sss = $ss[n]
    if sss == nil
      $ss[n] = sss = []
    end

    res = sss[g]
    if res != nil
      return res;
    end

    r = 1
    c = 2
    ng = n - g
    begin
      r = r + some(ng, c) if (c <= ng)
      c+=1
    end while (c <= g)
    sss[g]=r
    r
  end
end

def solve(v)
  r = -1
  c = 1
  begin
    # r += some(v, c) and (c=c+1)
    r += some(v, c) # never falsy
    # r += 1 # never falsy
    c = c+1
  end while (c <= v)
  r - 1
end
puts (solve(0x1a77e<<2) % 0xc0ffee)
# puts (0x1a77e)**2
# puts (solve(0x1a77e<<2) % 0xc0ffee)
# puts -2147483648-2147483647;
# puts some(100,100);
# puts some(100,1);
# puts some(100,2);
# puts some(100,3);
# puts some(100,4);
# puts some(100,5);
# puts some(100,6);
# puts some(100,7);
# puts some(100,8);
# puts some(100,9);
# puts some(100,10);
# puts some(100,11);
# puts some(100,12);
# puts some(100,13);
# puts some(100,48);
# puts some(100,49);
# puts some(100,50);
# puts some(100,51);
# puts some(100,52);
<commit_msg>opener 2015<commit_after># answer = (number of partitions of n) % 0xc0ffee = 8860078

puts ->(v){
    r,c=0<=>v.abs,1
    l=->(n,g;r,c){
    g>=--n || g<=1 ? 1 : ->() {
        r,c=1,2;
        ->() {
          ->{
            r=r+l[n-g,c] if(c+g<=n)
          }[];
          c+=1;
        }[] while(c<=g);
      r
    }[];
  };
  r+=l[v,c]and(c=c+1)while(c-v<=0);--r;}[20]
# ;--r;}[0x1a77e<<2]%0xc0ffee

def solve()
  13340456392205339342944367165332504014670779799573841990073891095127186353482498238433784858139795263109266817661997788444285774169983233308091481960129503831805593697466659149663552528938070202417006719445969268876646880038471823749023741083673840697304494357704151048792875808912318256416867917595024993174834485676991911108453729564815770880816535162918195296079110819858196605458229641964705968918454816731838045902439485664857508397566215197575687589715804466496157600498328884519420318711452917669708306512780608471541143247388945693056517819097814664793355336883212910502621933905458825357107037273902498551722295686566026899467953104197156398309410402620731863192371686340146689089711010975602080677809263913054899763428
end

puts (solve() % 0xc0ffee)

{'fraction_non_alphanumeric': 0.20171821305841925, 'fraction_numerical': 0.31890034364261166, 'mean_word_length': 2.9444444444444446, 'pattern_counts': {'":': 0, '<': 32, '<?xml version=': 0, '>': 25, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4725974', 'n_tokens_mistral': 1937, 'n_tokens_neox': 1428, 'n_words': 202}