N,*T=$<.map{|s|s.split.map &:to_i} g=->u{$*[u]||=(0...a=u.bit_length-1).map{|b|u[b]>0?T[a][b]+g[1<