store( ref(( store(0; last;) if(not(eq(arg0() 1;)) ( update(multiply(sub(arg0() 1;) arg1()) last;) ) ) sum(arg1() last()) )) multiply; )