next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
Macaulay2Doc :: rowPermute

rowPermute -- permute some rows

Synopsis

Description

i1 : m = mutableMatrix map(ZZ^5,ZZ^6, (i,j) -> 100*i+j)

o1 = | . .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
     | 1 157536965537041165175488513                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113888960446465 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113888960446465 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113888960446465 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113888960446465 |
     | 2 967290912507640626346487654605751146518633483263908299329953857936582718232404886060381607488603263424617078417790993538626748647680285018522201761578146311979399572572716833769148534224404556648645574632510879163731513501599004573099668390173237876992272014732427266                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113940500054018 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113940500054018 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113940500054018 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113940500054018 |
     | 3 131310840659122123430692979263911999009722972251640185991369824042804680678595907124661132914687389752599106623705679711559645662426589446665491916634553335185750117769896965860982093645702694238408552156022089337677585005644792162631550631704518929241015205135101591702048497421651949341223060011800305000417678936771836859705290771660029880627016871393516996740018697455655911098485989225167419295332575332208068487662427534292639495840438981281583630834966049980873953884267978366217307684165956018862391861591201206040540492196775526904341297499331289362533658422133517200765498665008680283618874450965496206402097271853212210162216328866087335945012562245359118880699125499038388386345661464096130893781623147547063460272670370457213305655110261194094848078716064996610508781906419202249812436583748338818352971107076155665770815214137076318463882510179858664310890212158310348851155778647632470649392900269640567578185914807122191229189203215831437963106098161391078641280691617213996445002447684849598682017627360312780841124219290300845303156510958794741071565298328111203029779641294187301197921220882012577581380882825570558291407473366351815792589241838742644397654785196218448061408723500316138799584763482481117346129540101468532218946202261828070059847668705267196082068982048003776835910702594353145234485751774643513133843909568459615485364817912567271807319795463083699123719445255637474518831590720278378167622645983491354528919630471509412361327522188154714144872998292349316904261416564794600562204602586183366605164230698683370891265475573582194442614610867714828556569486392184983761783230830272556644410822899767352489062632663321623709371777946388698668889359148347617897419013918074262936205660354690158817795660478087372884887513537516955558205995716923628112260463181592977386114312814059474025819739813855472542772947041238954035363363251628586022599767090973312243537159419625303428202605312392111816185735672583772263762644284471137282529285022260603911386410617343745749753892562283158571147014483241897930700279259311092854537465226341155925098627480161542373310026187172710915813731593103516928975897020884174546601651275890238610772920066030811519112904967682984500106607998434801897646989648945286934233611498255897489232387486197851632860079563824251610214532042221129270598724857956298835024145525816352943227439721326441003049676083006864040097181206547502811920301174530045808083603796910448329285717701111037177336302253712173735717838560311374984806204744907033691009229049555879822525665733938695071144918707790842944128176231597173504457755609530371                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113992039661571 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113992039661571 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113992039661571 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720113992039661571 |
     | 4 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720114043579269124 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720114043579269124 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720114043579269124 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720114043579269124 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965593894241373305331009010670991539946203410297181592933548377521330879559227792321461231344364761104750032748429909454835671125504898928442013331023259684050888231634658231599703198967410991205471574874791352961887159197479466828761368411172907305879708869823510855453723798973657824307992424205100132441395847066753334726731542465219470426731441433481135502628960871426662505808104344911296551564745689607053273193374811290563940605724189282295251369225955227363037714261756489458531473106093343725713749717574841320945894713597745113420763238661013591499209143488095266863567837233681471049442039659310217271790058575130878083981363862130687824866876096117471512432770232493912821023802355918661698467197447936824648645157991588229769741986853609635184571674607770971634226485787640229470894857620928270489336623786582831228515118307165475038442841730042391965007702951101029285005760174175194793732972699903500918295818739331108452046931608541571599462224409438014686109422039314926815961565594952989134282203097051810068704546216533285335042882619857305324924569967719504055493189322871771798464691829767843957609945951483952034238140365357881424043206904206622411192310141912676434712578859223278899107164482904765526464832676204795701872312620403281221321149885313270979489033381022308979304840684398721857671390545219627368675129832908009533830036548940863891550269236088946728023868206531138130564935185923796672479274457656598208368565633000057307841290605548727672078260772125843657755510167716150259096154569163505798744607018378898529711393101834641709265291975184139924905395598566534331911812455229699852743724744699822923100970897082515936468741361745196126817735879999472791952954554085860586075299462050704556697009474125510728747228064264656400918901575697114768711279462693186578712251391722770998338501526408894354578539700805152940371566289304802387996586301755329424073297984098950379143879055986512231437116282699547674162156188108703295529772527241131299848337035904445968972625372304491267657118317241098446855633495763576402337582746027380341274338442644556632794051347117219120776195486029259986763357162154501229482127467937266903721238067456145855704312857045829248873601511802498919945328093224810423090437680493518293431656641582853083454001851623165043387104762604108586587299203243939683388774361042405656015972611682351744319296998835185969827329493889547892967679486891899443288788493637593415717396111331879636236358411364705396842199414339309092509738876608479335737327954018548044983339468085590147204672688616605120357074315914659583137305650388444921423111464057371797720777421649835928009736874258506224473286226584311104599474485121163050809637110631416413093418903161442765500204279962411237906581529901830713296184893728668611079301736434762298114976940447304073002889216201876811277231388304102957355395583240352309691744294876179253130399244719230456348770493610289479094025654786892324221786302454237802580707669090181478999562888376978147358684945124639833942693497284059026764224411145929953665989055237954338030846283143138434664460100325964816391905139320770781529858446181650958597160332791098384967270568140919135105394003244308500957124683671513919015868980369811391700650553248955461766032491856798744463032591381098904344889636187014858295136618176559734717833857213053778191940301168411109534687739025907867813574910233929058436455849285746909149950248953946057992776256119765787100638516131449477655641388847463654067387763022141914778175563320540303942583088678958933513250819023544235817660149006471441463280808495656479341530324086578531702682483833342394481765131501490073479049079236003260149437570514185350056579460661462230610497847099894670130657097539117951311111583242741030986509666033714153918739093744621635330177832150607210776245595091767986552707749099534303456651585848039462621249243082944263026217986227150669805951405176473232304706747966970042283169895057817084251566088766899737635265659697723494343819106875426920834227567087974009413448067977394740439394336266208631282326508305692448768338330202698584632695055898159776502351087131557611399951526392376476692949130951713623328830339613415105650371520701602876023006906249879666994045912297611763360143351115870158501901633563911988675453377791231289677836213939907823696554896972673709775292905547850676203955731557824038973058611987612934140970740950704584454673292830102480950987482039841358472905491870726957828234346556759124271646556269156687726491927942717934228746051590735643329075143659846275618421904260569316333064395610739610466419318003737839438787725417979997292333684703346466850669879558196886397511193960151373647731925914414459395699483888960393965425796266578458197930765693803330525549084210054427376810658765300907606619584290427352559240060439966826619887223115878330449795046951894913479721697001494940293055843469808300831678997621606251539908143167797274543170829146572136165814657337418513025577832540642641535825052737087636848566324843367194868859289960319852568969632482982202635730780204746360923120780095639411555920491792870696153949643843757224840743530589324720114043579269124 |

o1 : MutableMatrix
i2 : rowPermute(m,1,{2,0,1})

o2 = | . .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
     | 1 157536965537041165175488513                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694673881399297 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694673881399297 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694673881399297 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694673881399297 |
     | 2 967290912507640626346487654605751146518633483263908299329953857936582718232404886060381607488426981812972642704247754627008295605822806701489972288144716644779919282183953822284816204264795465303555205685722067951764560332735494753286174370893958149079105407922733058                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694725421006850 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694725421006850 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694725421006850 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694725421006850 |
     | 3 131310840659122123430692979263911999010265426644554374801773027050823144984395000654449913010960733298922288265953818074810832040992091639507528217829430847829610599992882180860531410213359189752326538189911517790620729804314577731953901249406406286207028979381182205651363542920166204969976420961899056538301055408089555068024088765411626575175417827473018978878060562010653490968968260431564531044251574923007921344717085423127035563789858172233943771601822692319007870067713392430786013844631925114215369092978363079882662654571720610911766332538433925496968539160658147596992198824294063647310296080815535429067669540012078046362180931851061147609684227956223334153032752207267047676944985622281301608812229137641939970153160491735758983682887744261782500140014721474179688688800744590884466625437006657661964029094590708697354843185440248569815012474712013436663426272499326953722921752900810395074100124283109465302406914104784236731526710099421613267560534129896893655769623203789573093481710031552163808292714261647458977662404507975166893265805140420680239892757108878567156451376150498273189270256813784349188240059822905578837435857486570947785848593352389781518593327431227299846044410940156413454109668242151559411467713402017628786124257770819956708589622087090125649881203772657307229454519785098588732139901172514850245400516575713953425220955299588430293364641992155557858893615737646044575166697717849640157198075633855696008551865326649008648165195391772906256924619587628042747129586001512152154954113618856683897468267823317192978944462553747661033541116219006338372830331782367871401551417991610895817107707206900399687003396424420789394155170905247597488585261362451175533145193015932574778983751290448773683830962101861873400506203945919103892901811733765528528847114806486593736209446609707559997934342988370991279199445851507348872554987602411605782724546561209858499790490550398542587792294859735523456425545513939551464181412057181462764806335567275142077619966702551995086492799456920299164989390524540436552547471262380700335859403886565104173309585476131118092286227353196014952808463985325163907599754156988436438670241725961105337788833597553876370805961655415296028395652194635910379234453183944314695489269719754285924806392599925445889480032875478823407531890859327396163450336172519323616096848075466602057062261848206955586566885942742222165954324459469008177350398699821138232866277905831670913527123670447644883176698692746619610810593450377799258239622769916273412376624489301843560961460134583355774101965462266219253725210997256809473563428258840579                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694776960614403 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694776960614403 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694776960614403 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694776960614403 |
     | 4 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694828500221956 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694828500221956 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694828500221956 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694828500221956 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129299093471507452375539795559192778297669346728398663209935467310249960415041458812552734910388740750185119204150326407565301155455130213015082150774995891695158121179129263515005175587602007309165752571455482494701985152058285071569163352124307190188600099648633956424637872070374433661282860434946347675030365936337518341250497939530670492049152682751595740299650777955876517336356201954238740449622894424782067167868473814849903355130288000808722848881716523423304369683278744797091680665929947282004599884742141903092455370441529688744167156179077360250483378518119247298849108528250294762208416407986167476148567175178874063800358086027457895630650648669396258429142206700367153305674783250866422661286263393363325796268275165731232739893184194968961403246730119774337399703422463459231675588482935858420765326421555448280339061724466310717136212252868177897932924653530049677696436162757662269366798190208071681769644893941942974134840361829280739998511129729526702298361645614792859833141153396637763978261364317262779683444024446799942602179506309308829708000706164362584967544123944262478613936873150629875606572943548220887109756073849240773353610522128256052318094523961849199416335892154957022886522856407858766221227733233769855803540797195843736795162918258589030898376105673396821691371141078048940078157513454368981977910858251016762020830161673450276912167612177864217402281884081697525964997122986657878537513893383684107209185434682030581611841138320769751165820198510744298727746999807978419121499753915601607922696176540527435469670341293526747506706526024530442810609168649651488186829417974713332892493843632020625662134700088384496204167242147258558309791277779399383749139370284867286168094886544821422737637802164641269558545701441664386153037171353886211403725205681597970913022628953115278573534601804694766770034985736868925734980630049997686944790517637071797350609058196799433236359876639015798606019522872255619522116052138570098167166266498733891031108802657143775059617458142604429165804720101056675638719316542457760009090061209984977397292885275149606401974049153909692505148219826918259844782109296960962668656427745596201014333963313980270250168486273994989481135537270723574107717244316660088927662936290431190977141636475102177302706274086655242143720376303626665531386214442689649201190586832460162739827248970951243047440330228206331631112497739878283020377893436493175592457922732266429291282308155450226625908735145243692396554905981224214276161473784801143286259695282125512040501344451566921615076695587270678352226833487853937549564212575401137028689407768946214072151854724602769103465475825754648083539620644496540756262476390723165771983841025405599650289140025146921553140992130744935601340339721606678745401623060593372384771360928037839290017553053687662881909325377632775454112253161089384150763856706709155478909949994753852927323817406887036600795067326371378788198824332878167341364967879877879238807231553439728369018467221599420820323413253492898108084906827199959825847516517138472194789248173159585268081314575918495931090240886524799021431864303823205292763974048397599206812537350644671886512896943549787393792013585758364951639015903806808257622062909142313231743480044638793538545919980650491431925030133693346821159087402194007666994942204762440475125178705040855041713359185302696287569744680604190515945891306060582731794814908843958353954702356548613096039147793243847008308977635561964476974997951064591650034486821018815827067440683467721305397279261255554886935728702038082522417061993386180239766246562722248573939589551463440216540148757382768091588138660292719477108563071144875031522670308447900691983255937682162468481877091121037630772727278138515616236001256623965847146632370258907566117444498723076761005067670267433967584124059982950527552684126829463945259162620529741632605165657174691391730779032316689690890830582067800252791071679763537599799859569339947449659832779840284922442134733295726234551781884106319392787537167881357973564501956262719145653121318478838500991049492922846022331557158031590078286228486787388162293313244576012974747894133675816669720813598243828883330320524979282994539117472927012696831907365368520867171067683331557877151248524517770233885095484249573497672090552358630393162904819324833580238952113222135047878862707558968162201273226380691699851673664718590341886528449902617573507380305610348177478542745722820596968201924814161991584783563799910371934216454567622333537615395213053892271937754895366721764633769852059247160644166804597517389216356775154628573361129953906910007922757981926256834340126737732401726754604353881377599555477634774043491931023513094230506829850212359574464974274442723356757384116585308272594191350351476736478598923412147155074417219285099304266245238797725394010990874927547486812429645921769435679907134243637968609106195172918358898365256379892748874080494030498085450176225673638396570305882329124656637081781815614891203787446885189938779701315381283434137543479613995272781818416882199145714467073002636346866328085178745497766653269259336088058799259230402138720566757117781017687355408178367836321185877018046603577152023492302866353807643821859684909763006913231674854460908796946914142299131893281065760237682631833228046346238973345512769205268190855085987793829482918911100693551928831574515048892177297831758685613290067571914720874465841101676636180770277587902649674362357769178148284212489375107652012101356005072987220684809374126140022862104890933754600665166823789538462172909432244158255423813707550517431842227185783570434530452075003791688379580102791367881608824648430091648210731014730757706002103042964640172973413749078278989325506364131191985568149633831791434718409222315130118391274360814320196293527945970084600972320678877199818376435321254426371665461208343062216657970929313721515843228319184681564409273299429759469488891384607047501801662589402065553635537849458662301815438680986489738064073101331819562672097216392873787124146547820228395513309282578028242894983224202004550617488153724741205506529629628867719494468663537435749693941728848455105221535334257359921652950940272771772331636043367566880020779386702330422753580118795948072979647556196482379883932700286289899826615886495684567545241227207955903008381349709985083265200743120752749093274486769468315196460802146442914003257182291954952205550673727070475917817840467330235008780538889551945902045674224687201723084821588272363689695284255595114418104037731747508653040271465189108540126840454801747374806466577634698264389829685725308710952914963750287192546886456217666723853748480090083664990321366924703502017937992257493114760174270032338437980600292769575019875164503612031759778968235214981848937361682344318777324200587036548780910137435396626430374962397223642385673626429433495801651910052528090302722516051553560094134589359754708210394785591482233897525576914636823670507840441460149588027341483116205942343306877095857185650371456729418987087796555325752914526536747102388121974193696493362817328038546962172791696474853192537285804593443745540145790181143937017300309816572999662482518697692460927722439870739178453916610456010701553297931787827924180389916002896673276063335556867643636352001616196214120569781953894398256812879458348957107405525385874474102317799571829687151917788548267798578239502349959762151154539791736220538682989948330502232487108368725742273740500815310325997736027006652774097047923873909399391267428223701547570072964464943719936689127463163751172758193945427268236137103072335944819810900496034964403339078797021264135225698169860517701235913124638672295444253033156910917799557672551326373536928837127158681829125782770573345228863511731252105979208473200594551725524594085893757233349979304933344906681145721292298775539984189844483030373266315062344211877559918967018346129164137295551582022026247847681529975446922624228789126842140524703769053524334316065812945068520139301377510009914690494542263330270296805575765758726722601150651952092956963663480462429227515751645398096485832351865035125567858632239471725597948298857080897432946729875225063911647236221336869036636706378226278801101911167995361300968207350757148338278466041769852828641658018236299952472246196217140284962397369366405729934750194367432882984522905417061301891525702693541605456821510803396067698049025054787251015345108501272088632043019955186818780672841017117731185644714622722320418009854022233532840950263452248410968278345332565210512291078206341006591237532969142561978270762779227116952560065424751585096834891227526646460821525820825543757398860057143109359741335068658458203315242069063385182339375398297021712180434886787821529299960257746901278327844816192618155140339396602099719642800018992003530822052599991662195187806814047068830826273965375381191279355746068533176622652119319112456156814360653054436272964402256715707389479423648598510305208686663255619860049816779181656394722872632700920277036449899602845155368781869977257662728956825443190610575472844699326779563638199215366744382153038007927935984248670604632533156663253533174985912846998513735435826478966914397699922777943708541669123677516160505151166808407181483395129837208671932050102350809160806789925395676887788783634527555933184553629742874847964822834203310695913346781673591613002510644360027089092388179873484743349851550249588020381433229113091347099305316066402649290451386925782534342076047836629284870585791537404792256924040313299861754275086481284152667997512537001241126933969992413381210962608294156902137147492284796269181717322820763228546063843192425525966897500484030692587840013821195106619592278431268279988720531670689440190858189567209245358529271826677916289755179869445934424590891685418853482904431973028899831360268465901979620981798956378282981292484418174099316566984083120961033533744481081603229658211838447004549854131347501805384992125652663999656943390650476213362164080700932127826548271973010457608986284067415049348347090411460644962765243657102405472902455633649200885195217897875859264885486595692309676560997272354532249318635235753032853440165675385793558042646239608201635377733822298093853215340998450183942726681637075027490069343455857974630120157731161781720509187455043984109588418767743398670307202457287081394543144932717037327306184360409102187822467533013135564480167079927939405053744713559130491171785862808826346748273370500629792806026452996355200691314025244426346327460315961097226239136853879465433990949569657241066861329032587219372588097429346624156790516070586986552569649698882965622878607974707382877494103670327367199535891666846682548382310831104298144315636611197607802201886939193115841269503323000078431888360478508544076478571584950152653117808159367601499890122524493182450283491963927628687464903725164237384607279939706900684888598323721108287596323912497173617789830585540595491180305142414277771122787422520089671231246811280340760391424681962793133457052231260393132431398225011950872147963176578681521573967143040398246798122019696654880665875509525667915762766521104522079962910724060005740595551077811251246150800902675493939009122439064478460441017576446489396835481752270218882741881547886239758524509641848493947041504280481860513229890595374729258586791320468365098080292372437895908463725220650750298187929869089324125056052858854730656020976472215414045043332618998682596289015281302538371512709837814424721023711143072627305109417208812602392542412945505843217471861787554783717681103277025922270010693486459477035692597904614116757394138201095029388467573147567255522895054654639595497012156056626678753127782614338089950320536780658941586806689382772546097960975468560541976208285384122239892600690385819215712421819793331767316704704532259410285591079758813094015430042911076229864286230380302560556309721092082181444666967424748457170271856193630544695989104940069319841129477160474865986541960786721816990508973327578039884471514654337564790217770459553618685335587127324666721402725117160203350657181684809345927245027663234825061530963664411484920903646738310038812585709706972296900892223197363079917905523144516355703535018984403510114478402948304518163051996913787313751291881076804162976492281839452359887414524431225616287544804141760127130688459024338417795033466638295556552054094476772907660729520067063266225075679861827530372094877994234138668231577893565312151316356289299020815441463038202264522804725766105007638825034574127681838434049627472107258943709852386886444536370629341663707882724156585484397747506665357507163326142781737847897480247829261182109720751994234741757418012903725008466521407140478159867026336674397723516124675712035879434949300222345924981386533549917706416534221952732176812501774256534643575233664134304449171176482350952821397012641115539067141931815246895158883278354530760332556242569173890776777785022592483207454421657950243123258088094681424367565843373829858198962182618009819410454027506931678896324797088855000523075432175623456847981074603029900777233222927913908265416254159712835276419225156628201407420304354321993208512626431009374994083390082857089654468966246426283461712202308528326644769580540804251858977245924223109610045863566140005206385235774472530096349987514111977967417384179930665305056085070989583668751268496654683318521009543920199667775125847051869906606241527652774810638161236038969951979947774783201872115782058961050577438475318904614370639289935926736756925037985996916298780015032794613332454875717177139741625743666210901902197692221900318794849778854242767652965883989960587532510919614300877281300838324166871328083995827274313544393323994569082132340009181982343105627230963217853885322731882158495455753920917865238808324984089367015618724005845468192433040556773767179081298791571011830729159449880439963218377852646376456803048845568380940330564973573163528239055562660813395374906681125010368431060200900246760742775430102641190324522967864786921776902701822633858233557857403897460336347382692285445733416297875558608052415146080716245694998006394361465927938919685743622427876466319649286623784652523528149376606570747683900301973667230722389442669894503735159963600614267849604134399755290775607080763491378311544025588328850033037434801921433142044014925469348213899557584523492910249669640601942636017429226158302221693179586789114366544332615517668152641223181888787271774455895300042507366734708672083320657148741717606418707135003337326729286964206871013808570888192393168031024417190942844072188589784861215375165417278700183770486656055910359301175507406365080002193571629968422109394867626815415532850884451374644704866244308920732596889398729480300622121400408081693981886983433314568507208368601666136182025308291671717335973543226968277114758006154672577854938326384402544675980730374885529614907873805378027296598838232177792270980440539782280990872502752982738245060255154515650095447860368545377999588253894660115152793865838327602170446743374695142756808537391278719865840295243890815947120559495256762215900757702685938861572313231401662662984885368194459087343564837715909680605562046113663426491717347127167842461566894506108113648531751476918931779885679153360722685229357229494420975836797806802712829226982062657748880577384787584168703270128234720309749557378856967262639555190487987300757644877804460868674795148101353154853079285583431375283705609698229192582998666016478656554092466609224468750481137483803753392330538652080674055818189192134981038957888574806721473291714688314990124570015696640904439917394226960564947530237433329999395700745921525359780895918212178604312626348229589848481548371433037039930226651660134664931908132753034563549147556473030286821694828500221956 |

o2 : MutableMatrix

See also

Ways to use rowPermute :